Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 31 Mar 2009 09:24:08 -0700
From:      Sam Leffler <sam@freebsd.org>
To:        Mel Flynn <mel.flynn@mailing.thruhere.net>
Cc:        freebsd-mobile@freebsd.org
Subject:   Re: Switching from wired to wireless getting "network down"
Message-ID:  <49D243A8.5050601@freebsd.org>
In-Reply-To: <200903311054.35181.mel.flynn@mailing.thruhere.net>
References:  <1238217783.00093348.1238205603@10.7.7.3>	<Pine.GSO.4.64.0903281851000.23196@sea.ntplx.net>	<49CFBA6D.9070208@freebsd.org> <200903311054.35181.mel.flynn@mailing.thruhere.net>

next in thread | previous in thread | raw e-mail | index | archive | help
Mel Flynn wrote:
> On Sunday 29 March 2009 20:14:05 Sam Leffler wrote:
>> Daniel Eischen wrote:
>>> On Sat, 28 Mar 2009, Daniel Eischen wrote:
>>>> No, there's no PR as far as I can tell.  I'll try and set up a
>>>> test system to duplicate it again, so I have proper information
>>>> for a PR.
>>>>
>>>> I seem to recall that if wlanX is your primary/first lagg
>>>> interface, then it uses the MAC address from the underlying
>>>> interface as lagg's MAC address.  In this case it works,
>>>> but that's not the usual case 'cause you'd rather use a
>>>> faster wired interface first if it exists.
>>>>
>>>> So this works:
>>>>
>>>>  ifconfig lagg0 laggproto failover laggport wlan0 laggport bge0
>>>>
>>>> but this doesn't:
>>>>
>>>>  ifconfig lagg0 laggproto failover laggport bge0 laggport wlan0
>>>>
>>>> In the latter case, lagg only works when bge0 is up.
>>> Also note that lagg(4) still references ath0 in its example instead
>>> of wlan0.
>>>
>>>     # ifconfig em0 up
>>>     # ifconfig ath0 nwid my_net up
>>>     # ifconfig lagg0 laggproto failover laggport em0 laggport ath0 \
>>>             192.168.1.1 netmask 255.255.255.0
>> 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.
> 
> Great! Does this also work for hostap mode now? I'd like to unify my internal 
> network, currently using rum as hostap.
> If the answer is no, I pledge to file a PR. ;)

I don't understand what you're looking for but it's unlikely this will
do what you want.  lagg's failover protocol acts like a single-position
switch funneling packets to one of several devices (all of which are
assigned the same mac address).

	Sam



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?49D243A8.5050601>