Switching from wired to wireless getting "network down"

Daniel Eischen deischen at freebsd.org
Sat Mar 28 15:49:46 PDT 2009


On Sat, 28 Mar 2009, Sam Leffler wrote:

> Daniel Eischen wrote:
>> On Sat, 28 Mar 2009, Sam Leffler wrote:
>> 
>>> J. Porter Clark wrote:
>>>> I've been playing around with this sort of setup, too, where I
>>>> want a command line to change from wired to wireless (at the
>>>> same IP address, even) and back again.  I haven't found the
>>>> magic solution, particularly one that doesn't have a lot of
>>>> hardcoded network config in it.  I'm also somewhat ticked that
>>>> "route flush" doesn't really flush all routes like the man page
>>>> says.  8-) Eventually, I usually arrive at a point where I can't
>>>> find my way back and have to reboot to get some work done.
>>>> 
>>>> Some things I've been using are "route delete <my ip address>"
>>>> and "route add -ifp <interface> default".  Might be a good idea
>>>> to "arp -a -d", too.
>>>> 
>>>> 
>>> If this is 7.x or later, have you tried using lagg(4) to do automatic 
>>> failover?  The man page says wpa doesn't work but after talking to Andrew 
>>> we think that's no longer true.  I haven't had a chance to try it myself.
>> 
>> Yeah, but as far as I can recall, lagg isn't able to change the
>> MAC address on the cloned wlanX interface.  lagg with wireless
>> and wired interfaces used to work before wlan cloning was added.
>> I haven't tested it in a while, though.  Has this been fixed?
>> 
> You can change the mac address of a wlan ifnet (just verified); the problem 
> is that it needs to be propagated to the physical ifnet as well for it to 
> matter (the right thing happens if you do it when you clone the ifnet but not

Right, that's what I meant above - the MAC gets set on wlan0,
but not on ath0, for instance.

> if you force it after, and I'm not sure you can make it work).  I'm starting 
> to remember now about this.  Was there a PR filed?  I completely forgot about 
> this issue and it's likely to happen again w/o one.

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.

-- 
DE


More information about the freebsd-mobile mailing list