ports/72402: PPPoE issues with net/mpd
Oleg Sharoiko
os at rsu.ru
Wed Oct 6 20:30:24 UTC 2004
>Number: 72402
>Category: ports
>Synopsis: PPPoE issues with net/mpd
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Wed Oct 06 20:30:23 GMT 2004
>Closed-Date:
>Last-Modified:
>Originator: Oleg Sharoiko
>Release: FreeBSD 5.3-BETA6 i386
>Organization:
Computer Center of Rostov State university
>Environment:
System: FreeBSD wolf.os.rsu.ru 5.3-BETA6 FreeBSD 5.3-BETA6 #1: Sat Oct 2 19:44:22 MSD 2004 os at wolf.os.rsu.ru:/usr/obj/usr/src/sys/wolf.os.i686.RELENG_5.2004-09-30 i386
>Description:
mpd fails to establish pppoe connection.
mpd.conf
----------
pppoe-aaanet-orig:
new -i ng0 pppoe-aaanet-orig pppoe-fxp0-orig
set bundle authname "authname"
set bundle password "password"
set bundle enable compression
set link keep-alive 15 30
set link disable pap chap
set link accept pap chap
set link enable acfcomp protocomp
set link enable no-orig-auth
set ccp enable mppc mpp-compress mpp-e40 mpp-e56 mpp-e128
set ecp enable des
set ipcp enable vjcomp
set ipcp no req-pri-dns req-sec-dns req-pri-nbns req-sec-nbns
set iface route default
open iface
--------
mpd.links
--------
pppoe-fxp0-orig:
set link type pppoe
set pppoe iface fxp0
set pppoe disable incoming
set pppoe enable originate
--------
log
--------
Oct 6 22:26:36 wolf mpd: mpd: pid 507, version 3.18 (root at wolf.os.rsu.ru 20:32 5-Oct-2004)
Oct 6 22:26:36 wolf mpd: [pppoe-aaanet-orig] ppp node is "mpd507-pppoe-aaanet-orig"
Oct 6 22:26:36 wolf mpd: [pppoe-aaanet-orig] using interface ng0
Oct 6 22:26:36 wolf mpd: [pppoe-aaanet-orig] IFACE: Open event
Oct 6 22:26:36 wolf mpd: [pppoe-aaanet-orig] IPCP: Open event
Oct 6 22:26:36 wolf mpd: [pppoe-aaanet-orig] IPCP: state change Initial --> Starting
Oct 6 22:26:36 wolf mpd: [pppoe-aaanet-orig] IPCP: LayerStart
Oct 6 22:26:36 wolf mpd: [pppoe-aaanet-orig] bundle: OPEN event in state CLOSED
Oct 6 22:26:36 wolf mpd: [pppoe-aaanet-orig] opening link "pppoe-fxp0-orig"...
Oct 6 22:26:36 wolf mpd: [pppoe-fxp0-orig] link: OPEN event
Oct 6 22:26:36 wolf mpd: [pppoe-fxp0-orig] LCP: Open event
Oct 6 22:26:36 wolf mpd: [pppoe-fxp0-orig] LCP: state change Initial --> Starting
Oct 6 22:26:36 wolf mpd: [pppoe-fxp0-orig] LCP: LayerStart
Oct 6 22:26:36 wolf mpd: [pppoe-fxp0-orig] device: OPEN event in state DOWN
Oct 6 22:26:36 wolf mpd: [pppoe-aaanet-orig] can't connect bypass,link0 and fxp0:orphans,mpd507-pppoe-fxp0-orig: No such file or directory
Oct 6 22:26:36 wolf mpd: [pppoe-aaanet-orig] can't remove hook mpd507-pppoe-fxp0-orig from node "fxp0:orphans": No such file or directory
Oct 6 22:26:36 wolf mpd: [pppoe-fxp0-orig] device is now in state OPENING
Oct 6 22:26:36 wolf mpd: [pppoe-fxp0-orig] device: DOWN event in state OPENING
Oct 6 22:26:36 wolf mpd: [pppoe-fxp0-orig] device is now in state DOWN
Oct 6 22:26:36 wolf mpd: [pppoe-fxp0-orig] link: DOWN event
Oct 6 22:26:36 wolf mpd: [pppoe-fxp0-orig] LCP: Down event
Oct 6 22:26:36 wolf mpd: [pppoe-fxp0-orig] device: OPEN event in state DOWN
Oct 6 22:26:36 wolf mpd: [pppoe-fxp0-orig] pausing 6 seconds before open
Oct 6 22:26:36 wolf mpd: [pppoe-fxp0-orig] device is now in state DOWN
--------
This looks very similar to ports/62477.
If mpd started after ppp with pppoe setup then mpd works fine.
Executing
/sbin/ifconfig fxp0 up
/usr/sbin/ngctl mkpeer fxp0: pppoe orphans ethernet
before mpd also make mpd happy.
It looks like
1) mpd doesn't put interface into UP state and
2) mpd fails to create netgraph hook
>How-To-Repeat:
Reboot a system
Run mpd with pppoe setup
>Fix:
Workaround:
Execute
/sbin/ifconfig fxp0 up
/usr/sbin/ngctl mkpeer fxp0: pppoe orphans ethernet
before running mpd.
The following startup script will help starting mpd in such a situations:
---------
#!/bin/sh
# PROVIDE: mpd
# REQUIRE: netif isdnd
# KEYWORD: FreeBSD nojail shutdown
. /etc/rc.subr
name="mpd"
rcvar=`set_rcvar`
mpd_start_precmd()
{
/sbin/ifconfig fxp0 up
/usr/sbin/ngctl mkpeer fxp0: pppoe orphans ethernet || true
}
mpd_stop_postcmd()
{
/usr/sbin/ngctl rmhook fxp0: orphans
}
load_rc_config $name
start_precmd="mpd_start_precmd"
stop_postcmd="mpd_stop_postcmd"
command=${mpd_program:-"/usr/local/sbin/mpd"}
pidfile=${mpd_pidfile:-"/var/run/mpd.pid"}
flags=${mpd_flags:-"-b -p ${pidfile} ${mpd_profile}"}
run_rc_command "$1"
---------
It would be nice to switch mpd to rcNG startup script. This one can be used after this issues have been resolved and workarounds (mpd_start_precmd/mpd_stop_precmd) removed.
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list