Good morning! With em0 and iwn I have the same working configuration for failover between wireless interface and ethernet adapter. I run FreeBSD-12. There was some change introduced with FreeBSD-11 in the syntax how to specify the mac address for the wireless interface (old - FreeBSD-10 working form: ifconfig_iwn0="ether <new mac address>", the new is create_args_wlan0="wlanaddr <new mac address>". The "new" mac address is identical with the ethernet adapter's mac address. best regards András Krasznai -----Eredeti üzenet----- Feladó: owner-freebsd-current_at_freebsd.org [mailto:owner-freebsd-current_at_freebsd.org] Meghatalmazó Cy Schubert Küldve: 2017. június 22. 7:40 Címzett: Sean Bruno Másolatot kap: Renato Botelho; freebsd-current_at_freebsd.org Tárgy: Re: Failover Mode Between Ethernet and Wireless Interfaces broken on >= 11 In message <cbdb0928-1355-0d1e-7f9c-69fb5edde09d_at_freebsd.org>, Sean Bruno write s: > This is an OpenPGP/MIME signed message (RFC 4880 and 3156) > --XuprkQPPD5E0VHaDeuAKBatHWCR01xNcA > Content-Type: multipart/mixed; > boundary="fPqiMVoTg6hr4JdbiP1DBOlOppEsSDgjw"; > protected-headers="v1" > From: Sean Bruno <sbruno_at_freebsd.org> > To: Renato Botelho <garga_at_FreeBSD.org>, freebsd-current_at_freebsd.org > Message-ID: <cbdb0928-1355-0d1e-7f9c-69fb5edde09d_at_freebsd.org> > Subject: Re: Failover Mode Between Ethernet and Wireless Interfaces > broken on >= 11 > References: <1c1e5c6f-35e5-ca14-2e23-5e33d86a5266_at_FreeBSD.org> > In-Reply-To: <1c1e5c6f-35e5-ca14-2e23-5e33d86a5266_at_FreeBSD.org> > > --fPqiMVoTg6hr4JdbiP1DBOlOppEsSDgjw > Content-Type: text/plain; charset=utf-8 > Content-Language: en-US > Content-Transfer-Encoding: quoted-printable > > > > On 06/21/17 11:48, Renato Botelho wrote: > > I've already sent it to net, but I suspect this is the appropriate > > plac= > e > > to discuss this subject. > >=20 > > Last night I was configuring a new laptop and decided to give it [1] > >a try. I figured out this section of handbook (similar instructions > >are o= > n > > lagg(4) manpage) is outdated, based on FreeBSD 10.x. > >=20 > > Then I modified a bit the commands and tried to get it configured on > >12-CURRENT, without success. I spoke with adrian_at_, who told me this > >setup doesn't work on FreeBSD > 10, because on newer versions > >Wireless interfaces mac address cannot be changed. > >=20 > > My next attempt was to do the other way round and make lagg to use > >wlan= > 0 > > mac address instead of em0's. but even doing this my wireless > > interface= > > > ended up not working. > >=20 > > After further investigation I noted that a simple command: > >=20 > > # ifconfig wlan0 ether $wlan0_current_mac_address > >=20 > > is enough to break it on 12-CURRENT. > >=20 > > I've checked if_setlladdr() source code and noted it always replace > >the= > > > mac address, even if the same is already configured on the > > interface. I= > s > > it the expected behavior? > >=20 > > Just as a PoC I've applied the following patch to if_setlladdr(): > >=20 > > Index: sys/net/if.c > > > >=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > >=3D= > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= > 3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > > --- sys/net/if.c (revision 320097) > > +++ sys/net/if.c (working copy) > > _at__at_ -3519,6 +3519,10 _at__at_ > > ifa_free(ifa); > > return (EINVAL); > > } > > + if (memcmp(lladdr, LLADDR(sdl), len) =3D=3D 0) { > > + ifa_free(ifa); > > + return (0); > > + } > > switch (ifp->if_type) { > > case IFT_ETHER: > > case IFT_FDDI: > >=20 > > And configured it to use wlan0 mac address on rc.conf: > >=20 > > ifconfig_em0=3D"ether 60:67:20:c5:2d:48 up" > > wlans_iwn0=3D"wlan0" > > ifconfig_wlan0=3D"WPA" > > cloned_interfaces=3D"lagg0" > > ifconfig_lagg0=3D"up laggproto failover laggport em0 laggport wlan0 > >DHC= > P" > >=20 > > and it's now working as expected. > >=20 > > Other than that, I believe if wlan interfaces cannot have their mac > >address changed, ifconfig should return an error when user attempts > >to do it, and if_setlladdr() should do the same. > >=20 > > Thoughts? > >=20 > > [1] > > > >https://www.freebsd.org/doc/handbook/network-aggregation.html#network > >in= > g-lagg-wired-and-wireless > >=20 > > > Maybe this is a "iflib" problem. em(4) and igb(4) are pretty > different now in head. Can you shove it into bugzilla with a test > case (copy/paste your email) and tag me on it? As a late comer to this thread, I don't have any issues either. I too have a bge interface and iwn set up as follows: ifconfig_lagg0="laggproto failover laggport bge0 laggport wlan0 DHCP" -- Cheers, Cy Schubert <Cy.Schubert_at_cschubert.com> FreeBSD UNIX: <cy_at_FreeBSD.org> Web: http://www.FreeBSD.org The need of the many outweighs the greed of the few. _______________________________________________ freebsd-current_at_freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to "freebsd-current-unsubscribe_at_freebsd.org"Received on Thu Jun 22 2017 - 04:39:26 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:41:12 UTC