[CUWiN-Dev] default route disappearance

Chase Phillips ch at se.tl
Fri Sep 8 00:57:20 CDT 2006


Good catch!

On 9/7/06, David Young <dyoung at pobox.com> wrote:
> Dan,
>
> This should help with the problems at the library, and at every other
> node, too.
>
> Dave
>
> On Thu, Sep 07, 2006 at 08:28:06PM -0500, dyoung at cuw.ojctech.com wrote:
> > Author: dyoung
> > Date: 2006-09-07 20:28:05 -0500 (Thu, 07 Sep 2006)
> > New Revision: 4160
> >
> > Modified:
> >    cuw/trunk/src/boot-image/extras/sbin/dhcpselect
> > Log:
> > Fix a bug in dhcpselect where it would rule that we had a default
> > route on some arbitrary wire interface, such as sip0, when we really
> > we got a ping reply from google.com over the wireless, because
> > hslsd had installed a default.  Now, we rule that an interface is
> > net-connected if it is the default interface, and if we can ping
> > Google on the interface.
> >
> > This patch should help on the library's node, and on all other
> > non-gateway nodes, too!
> >
> >
> >
> > Modified: cuw/trunk/src/boot-image/extras/sbin/dhcpselect
> > ===================================================================
> > --- cuw/trunk/src/boot-image/extras/sbin/dhcpselect   2006-09-07 19:27:10 UTC (rev 4159)
> > +++ cuw/trunk/src/boot-image/extras/sbin/dhcpselect   2006-09-08 01:28:05 UTC (rev 4160)
> > @@ -784,8 +784,10 @@
> >       rv=$is_dhclient
> >  }
> >
> > -# Given an interface, test for a net connection on that interface.  If we find
> > -# one, call net-connect to prepare for a routing change.
> > +# Given an interface, test for a net connection on that interface.  Rule
> > +# that an interface is net-connected if it is the default interface, and
> > +# if we can ping Google on the interface.  If we find a net connection,
> > +# call net-connect to prepare for a routing change.
> >  test-for-net-connection ()
> >  {
> >       iface="$1"
> > @@ -796,11 +798,13 @@
> >               grep -v alias)
> >       ip=$2
> >
> > +     default_iface=$(route -n get default | \
> > +                     awk '/^[[:space:]]*interface:/ { print $2; }')
> > +
> >       # Ping Google with 4 packets using the interface.
> >       print "test-for-net-connection: $iface: testing for a net connection.."
> > -     ping -c 4 -I $ip google.com \
> > -             >/dev/null 2>/dev/null
> > -     if [ $? = 0 ]; then
> > +     if [ "$default_iface" = "$iface" ] && \
> > +        ping -c 4 -I $ip google.com >/dev/null 2>/dev/null; then
> >               print "test-for-net-connection: $iface: found a net connection"
> >
> >               # We are now net-connected.  Run net-connect to queue a routing
> >
> > _______________________________________________
> > CU-Wireless-Commits mailing list
> > CU-Wireless-Commits at cuwireless.net
> > http://lists.chambana.net/cgi-bin/listinfo/cu-wireless-commits
>
>
> --
> David Young             OJC Technologies
> dyoung at ojctech.com      Urbana, IL * (217) 278-3933
> _______________________________________________
> CU-Wireless-Dev mailing list
> CU-Wireless-Dev at lists.cuwireless.net
> http://lists.chambana.net/cgi-bin/listinfo/cu-wireless-dev
>


More information about the CU-Wireless-Dev mailing list