Date: Wed, 30 Dec 2009 08:52:56 -0500 From: John Baldwin <jhb@freebsd.org> To: freebsd-mobile@freebsd.org Cc: martinko <gamato@users.sf.net> Subject: Re: Switching from wired to wireless getting "network down" Message-ID: <200912300852.57010.jhb@freebsd.org> In-Reply-To: <4B3A74B3.10808@users.sf.net> References: <1238217783.00093348.1238205603@10.7.7.3> <49CFBA6D.9070208@freebsd.org> <4B3A74B3.10808@users.sf.net>
next in thread | previous in thread | raw e-mail | index | archive | help
On Tuesday 29 December 2009 4:29:23 pm martinko wrote: > 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 ? Use an explicit 'network_interfaces' value in rc.conf that puts lagg0 last. -- John Baldwin
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200912300852.57010.jhb>