Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 5 Feb 2003 01:32:21 +0300 (MSK)
From:      Lev Shamardin <leo@v.gz.ru>
To:        FreeBSD-gnats-submit@FreeBSD.org
Cc:        Dmitro Dudenko <dudenko@tak.estra.ru>
Subject:   kern/47920: if ng_pppoe switches to nonstandard mode it stays in it forever
Message-ID:  <200302042232.h14MWLGj005760@virgin.v.gz.ru>

next in thread | raw e-mail | index | archive | help

>Number:         47920
>Category:       kern
>Synopsis:       if ng_pppoe switches to nonstandard mode it stays in it forever
>Confidential:   no
>Severity:       serious
>Priority:       high
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Tue Feb 04 14:40:06 PST 2003
>Closed-Date:
>Last-Modified:
>Originator:     Lev Shamardin
>Release:        FreeBSD 4.7-STABLE i386
>Organization:
MSU Hostel Network
>Environment:
System: FreeBSD virgin.v.gz.ru 4.7-STABLE FreeBSD 4.7-STABLE #2: Sat Dec 14 21:39:44 MSK 2002 glebius@morannon.v.ru:/usr/obj/usr/src/sys/HYMEN i386
>Description:
If the sys/netgraph/ng_pppoe.c switches to non-standard mode, it remains
in non-standard forever. The only known software PPPoE client supporting 
non-standard mode is in FreeBSD.

If the network contains FreeBSD PPPoE service provider, and at least one
FreeBDF PPPoE client, one accidental switch to the non-standard mode will
cause inoperability of the whole PPPoE network, because the only way to
switch pppoe back to standard mode is to reboot the kernel, and if the
FreeBSD client reconnects to the server, this will bring the server back to
non-standard mode.

In our network we have many Windows XP and Efficient Networks EnterNet
PPPoE clients and some FreeBSD clients. Due to some accident our PPPoE server 
switched to the non-standard PPPoE mode. And after this we've got a loop:
if we reboot the server, one of the FreeBSD clients reconnects in 
non-standard mode turning the server back to non-standard mode. We had 
to reboot all FreeBSD nodes in our network simultaneously to make the 
system operational again, but there is no guarantee that this will not 
happen again.

>How-To-Repeat:
Generate a PPPoE Discovery packet with 0x3c12 protocol in ethernet header
instead of 0x8863 and send it to a server running pppoed.

>Fix:
There should be a kernel option or sysctl variable which can disable usage
of non-standard pppoe mode.

>Release-Note:
>Audit-Trail:
>Unformatted:

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-bugs" in the body of the message




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