Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 29 Dec 2009 22:29:23 +0100
From:      martinko <gamato@users.sf.net>
To:        freebsd-mobile@freebsd.org
Subject:   Re: Switching from wired to wireless getting "network down"
Message-ID:  <4B3A74B3.10808@users.sf.net>
In-Reply-To: <49CFBA6D.9070208@freebsd.org>
References:  <1238217783.00093348.1238205603@10.7.7.3>	<20090328160858.GA57695@auricle.charter.net>	<49CE51E2.4000807@freebsd.org>	<Pine.GSO.4.64.0903281251230.21952@sea.ntplx.net>	<49CE5B95.1010502@freebsd.org>	<Pine.GSO.4.64.0903281841050.23196@sea.ntplx.net>	<Pine.GSO.4.64.0903281851000.23196@sea.ntplx.net> <49CFBA6D.9070208@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Sam Leffler wrote:
>
> r190526 makes it possible to do the wired/wireless failover in HEAD. The
> only caveat is you must manually set the mac address of the wireless
> device to match the wired device because lagg's automatic setting of the
> wlanX ifnet doesn't propagate to the underlying device (the way
> if_setlladdr works makes it difficult). In the mean time you can do:
>
> ifconfig ath0 ether 00:11:22:33:44:55
>
> where the mac address is whatever your wired nic's address is and then
> setup lagg0 using the wlan; e.g.
>
> ifconfig ath0 ether 00:11:22:33:44:55
> ifconfig wlan create wlandev ath0 ssid my_net up
> ifconfig lagg create laggproto failover laggport em0 laggport wlan0 ...
>
> I also verified it works with WPA. In fact I tested this on a thinkpad
> in a docking station and it did the right thing just un-docking and
> re-docking. My only complaint is my ping running during all this lost
> one packet in the transition; not sure where.
>
> Sam

Hallo,

I've tried to figure out how to make this persistant via rc.conf and I'm 
running into a dependency issue -- lagg is created before wlan:

This is in my rc.conf:

ifconfig_sk0="up"
ifconfig_iwi0="ether 00:11:22:33:44:55" # match wired (sk0)
wlans_iwi0="wlan0"
ifconfig_wlan0="wpa"

cloned_interfaces="lagg0"
ifconfig_lagg0="laggproto failover laggport sk0 laggport wlan0 dhcp"

And this is the result of /etc/rc.d/netif restart :

Stopping Network: lo0 sk0 fwe0 fwip0 iwi0 wlan0.
[...]
ifconfig: interface wlan0 does not exist
Starting wpa_supplicant.
ifconfig: SIOCSLAGGPORT: Device busy
Starting Network: lo0 sk0 iwi0 lagg0.
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
         options=3<RXCSUM,TXCSUM>
         inet6 fe80::1%lo0 prefixlen 64 scopeid 0x5
         inet6 ::1 prefixlen 128
         inet 127.0.0.1 netmask 0xff000000
sk0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
         options=b<RXCSUM,TXCSUM,VLAN_MTU>
         ether 00:11:22:33:44:55
         media: Ethernet autoselect (none)
         status: no carrier
iwi0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 2290
         ether 00:11:22:33:44:55
         media: IEEE 802.11 Wireless Ethernet autoselect mode 11g
         status: associated
lagg0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
         options=b<RXCSUM,TXCSUM,VLAN_MTU>
         ether 00:11:22:33:44:55
         media: Ethernet autoselect
         status: no carrier
         laggproto failover
         laggport: sk0 flags=1<MASTER>

Please note that wlan0 is not part of lagg0 (!)
If I create it from command line it works as described in previous email.
It looks to me that wlan0 is not created fast enough and thus not added 
to lagg0. :-/
Any suggestions how to solve this please ?

Thanks!

Martin

PS: This is on 8.0-R.




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4B3A74B3.10808>