Still roaming issues with new dhclient and if_wi

Kevin Oberman oberman at es.net
Thu Sep 8 10:42:24 PDT 2005


> Date: Thu, 8 Sep 2005 10:24:12 -0700
> From: Brooks Davis <brooks at one-eyed-alien.net>
> 
> 
> --dWYAkE0V1FpFQHQ3
> Content-Type: text/plain; charset=us-ascii
> Content-Disposition: inline
> Content-Transfer-Encoding: quoted-printable
> 
> On Thu, Sep 08, 2005 at 08:57:30AM -0700, Kevin Oberman wrote:
> > I have a ThinkPad with a Prism2.5 wireless card and use the wi
> > driver. Since the change to the OpenBSD dhclient I am no longer able to
> > roam from our conference room to my office. Before the dhclient change,
> > I would lose association as I walked up two floors and from one end of
> > the building to the other, associate again in my office (or while
> > walking down the corridor) and, after a short wait for the bridge to
> > figure out where my MAC was coming from and update its forwarding
> > tables, I was up and running including my ssh sessions.
> > 
> > I previously complained that dhclient was exiting when the card lost
> > association and had to be restarted. That's been fixed (Thanks, Sam),
> > but the problem is now even more annoying. I now get to my office and
> > dhclient is still running and the interface is associated, but the
> > interface no longer has an IP address. It is possible that it would
> > eventually get one, but I have never been willing to wait for more than
> > a few minutes. I can "fix" it by killing dhclient and re-starting it. I
> > get an address (same one I had in the conference room) immediately and
> > I'm back to normal.
> > 
> > I think the issue is that the SSID changes between my office and the
> > conference room. lbnl_wlan45 in the conf. room and lbnl_wlan46 in my
> > office, but if dhclient lives on, why doesn't it request an IP when the
> > SSID changes or simply exit? If I forget to kick it immediately, I lose
> > my ssh sessions.
> 
> Your nic (actually its driver) is apparently failing to generate a link
> down event when it looses association.  If it did this dhclient would
> die and then restart when you reacquire association.
> 
> > Don't you get tired of hearing that "it used to work with the old
> > dhclient"? :-)
> 
> Yes. :-)
> 
> > Any suggestions?
> 
> In a very brief check it looks to me like there is not a code path in
> the wi(4) driver that leads to a call to ieee80211_notify_node_join
> or ieee80211_notify_node_leave which means that it won't generate the
> routing messages it needs to.  I don't have time to look at this in
> depth, but that looks like one avenue to pursue.

Thanks, Brooks! That does look like the cause of the problem. If I get a
little time I'll poke at it a bit. (But no promises!)
-- 
R. Kevin Oberman, Network Engineer
Energy Sciences Network (ESnet)
Ernest O. Lawrence Berkeley National Laboratory (Berkeley Lab)
E-mail: oberman at es.net			Phone: +1 510 486-8634


More information about the freebsd-current mailing list