PPPoE reconenction fix - mpd fix ($100)
-
here is the system log with wan cable unplug and replug and the endless loop of pppoe reconnection
Nov 3 12:25:13 syslogd: exiting on signal 15 Nov 3 12:25:13 syslogd: kernel boot file is /boot/kernel/kernel Nov 3 12:25:20 kernel: vr1: vr_link_task: Tx/Rx shutdown error -- resetting Nov 3 12:25:20 kernel: vr1: link state changed to DOWN Nov 3 12:25:20 check_reload_status: Linkup starting vr1 Nov 3 12:25:21 kernel: vr1: restarting Nov 3 12:25:21 kernel: vr1: vr_stop: Rx shutdown error Nov 3 12:25:21 kernel: vr1: Using force reset command. Nov 3 12:25:30 apinger: ALARM: WAN(195.229.252.27) *** down *** Nov 3 12:25:40 check_reload_status: Reloading filter Nov 3 12:26:26 check_reload_status: Configuring interface wan Nov 3 12:26:26 check_reload_status: Rewriting resolv.conf Nov 3 12:26:33 dnsmasq[3112]: using nameserver 198.153.192.1#53 Nov 3 12:26:33 dnsmasq[3112]: using nameserver 208.67.222.222#53 Nov 3 12:26:33 dnsmasq[3112]: using nameserver 213.42.20.20#53 Nov 3 12:26:33 dnsmasq[3112]: using nameserver 8.8.8.8#53 Nov 3 12:26:33 dnsmasq[3112]: ignoring nameserver 127.0.0.1 - local interface Nov 3 12:26:33 dnsmasq[3112]: ignoring nameserver 127.0.0.1 - local interface Nov 3 12:27:19 check_reload_status: Linkup starting vr1 Nov 3 12:27:19 kernel: vr1: link state changed to UP
after rebooting pfsense only connection is successful
-
i reported the same to freebsd mailing list as well as the mpd bug list but there is no outcome, mpd developer blames pfsense for it and the mailing list just recommended some settings which didnt work and ppl left the topic down the list and forgot about it
-
Failing that, give this a try: Edit usr/local/sbin/ppp-linkdown and comment out or remove this line (keep an unaltered copy around though so you can restore the copy if it doesn't help)
/usr/sbin/ngctl shutdown $1:
This worked for me! Sorry it took this long for me to be able to test this.
It appears that the change to that file did survive a reboot, but will it survive an upgrade (can I just say I'm so happy that 2.0 is final)? Better yet, here's to hoping this can be fixed for 2.1.
-
Failing that, give this a try: Edit usr/local/sbin/ppp-linkdown and comment out or remove this line (keep an unaltered copy around though so you can restore the copy if it doesn't help)
/usr/sbin/ngctl shutdown $1:
This worked for me! Sorry it took this long for me to be able to test this.
It appears that the change to that file did survive a reboot, but will it survive an upgrade (can I just say I'm so happy that 2.0 is final)? Better yet, here's to hoping this can be fixed for 2.1.
doesnt still work for me, while ur at it, can u test without using a switch between pfsense and ur isp modem etc?
-
I can try that but I can't make any guarantee about timeline, as this is a production system.
-
take ur time
-
if adding a switch does make it work along with the patch then i would need to replace my existing switch instead of buying a dedicated one just to make pppoe reconnect in which case can some1 recommend me the cheapest 10/100mbps switch with VLAN support or would it be possible to use one switch without vlan and use 6 ports for LAN and 2 ports for pppoe (1 from pf wan to switch and 1 from isp modem to switch).
im just trying to avoid using a dedicated switch simply for pppoe and even though if there is a power failure, it still wont reconnect untill pfsense is rebooted
or to make things easier, im ready to pay $50 if some1 could simply make me a patch which would detect the unsuccessful pppoe reconnects for about 5mins or so and then reboot pfsense, i have cron package installed and running
-
I had 30 minutes and came back to this and looking at the code i have another option for you xibpin.
Edit /etc/inc/interfaces.incRemove the comment made on line 166 to 177
The diff below maybe explains it better. Not sure why that has been done and try again.diff --git a/etc/inc/interfaces.inc b/etc/inc/interfaces.inc index 3f67e5d..a20936c 100644 --- a/etc/inc/interfaces.inc +++ b/etc/inc/interfaces.inc @@ -167,11 +167,11 @@ function interface_netgraph_needed($interface = "wan") { PPP interfaces are found above in the previous if ($found == false) block. This block of code is only entered for OPTx interfaces that are configured for PPPoE modem access, so $realif != $ppp['if'] +*/ if ($realif == $ppp['if']) { $found = true; break; } -*/ $ports = explode(',',$ppp['ports']); foreach($ports as $pid => $port){ $port = get_real_interface($port);
-
how do i upload the edited file, i tried using winscp but i guess there r some commands i need to run to make the system go out of read only mode, could u be kind enough to provide those?
-
- ssh into the box
- /etc/rc.conf_mount_rw
- Do what you want with WinSCP or use you favorite editor
- /etc/rc.conf_mount_ro
- Reboot.
-
tried it, still the same, no luck :(
Dec 1 18:44:40 ppp: [wan_link0] LCP: no reply to 1 echo request(s) Dec 1 18:44:50 ppp: [wan_link0] LCP: no reply to 2 echo request(s) Dec 1 18:45:00 ppp: [wan_link0] LCP: no reply to 3 echo request(s) Dec 1 18:45:10 ppp: [wan_link0] LCP: no reply to 4 echo request(s) Dec 1 18:45:20 ppp: [wan_link0] LCP: no reply to 5 echo request(s) Dec 1 18:45:20 ppp: [wan_link0] LCP: peer not responding to echo requests Dec 1 18:45:20 ppp: [wan_link0] LCP: state change Opened --> Stopping Dec 1 18:45:20 ppp: [wan_link0] Link: Leave bundle "wan" Dec 1 18:45:20 ppp: [wan] Bundle: Status update: up 0 links, total bandwidth 9600 bps Dec 1 18:45:20 ppp: [wan] IPCP: Close event Dec 1 18:45:20 ppp: [wan] IPCP: state change Opened --> Closing Dec 1 18:45:20 ppp: [wan] IPCP: SendTerminateReq #3 Dec 1 18:45:20 ppp: [wan] IPCP: LayerDown Dec 1 18:45:20 ppp: [wan] IFACE: Down event Dec 1 18:45:20 ppp: [wan] IPCP: Down event Dec 1 18:45:20 ppp: [wan] IPCP: LayerFinish Dec 1 18:45:20 ppp: [wan] Bundle: No NCPs left. Closing links... Dec 1 18:45:20 ppp: [wan] IPCP: state change Closing --> Initial Dec 1 18:45:20 ppp: [wan_link0] LCP: SendTerminateReq #2 Dec 1 18:45:20 ppp: [wan_link0] LCP: LayerDown Dec 1 18:45:22 ppp: [wan_link0] LCP: SendTerminateReq #3 Dec 1 18:45:24 ppp: [wan_link0] LCP: state change Stopping --> Stopped Dec 1 18:45:24 ppp: [wan_link0] LCP: LayerFinish Dec 1 18:45:24 ppp: [wan_link0] PPPoE: connection closed Dec 1 18:45:24 ppp: [wan_link0] Link: DOWN event Dec 1 18:45:24 ppp: [wan_link0] LCP: Down event Dec 1 18:45:24 ppp: [wan_link0] LCP: state change Stopped --> Starting Dec 1 18:45:24 ppp: [wan_link0] LCP: LayerStart Dec 1 18:45:24 ppp: [wan_link0] Link: reconnection attempt 1 in 1 seconds Dec 1 18:45:46 ppp: [wan_link0] PPPoE connection timeout after 9 seconds Dec 1 18:45:46 ppp: [wan_link0] Link: DOWN event Dec 1 18:45:46 ppp: [wan_link0] LCP: Down event Dec 1 18:45:46 ppp: [wan_link0] Link: reconnection attempt 3 in 4 seconds Dec 1 18:45:50 ppp: [wan_link0] Link: reconnection attempt 3 Dec 1 18:45:50 ppp: [wan_link0] PPPoE: Connecting to '' Dec 1 18:45:59 ppp: [wan_link0] PPPoE connection timeout after 9 seconds Dec 1 18:45:59 ppp: [wan_link0] Link: DOWN event Dec 1 18:45:59 ppp: [wan_link0] LCP: Down event Dec 1 18:45:59 ppp: [wan_link0] Link: reconnection attempt 4 in 1 seconds Dec 1 18:46:00 ppp: [wan_link0] Link: reconnection attempt 4 Dec 1 18:46:00 ppp: [wan_link0] PPPoE: Connecting to '' Dec 1 18:46:09 ppp: [wan_link0] PPPoE connection timeout after 9 seconds Dec 1 18:46:09 ppp: [wan_link0] Link: DOWN event Dec 1 18:46:09 ppp: [wan_link0] LCP: Down event Dec 1 18:46:09 ppp: [wan_link0] Link: reconnection attempt 5 in 4 seconds Dec 1 18:46:13 ppp: [wan_link0] Link: reconnection attempt 5 Dec 1 18:46:13 ppp: [wan_link0] PPPoE: Connecting to '' Dec 1 18:46:22 ppp: [wan_link0] PPPoE connection timeout after 9 seconds Dec 1 18:46:22 ppp: [wan_link0] Link: DOWN event Dec 1 18:46:22 ppp: [wan_link0] LCP: Down event Dec 1 18:46:22 ppp: [wan_link0] Link: reconnection attempt 6 in 4 seconds Dec 1 18:46:26 ppp: [wan_link0] Link: reconnection attempt 6 Dec 1 18:46:26 ppp: [wan_link0] PPPoE: Connecting to '' Dec 1 18:46:35 ppp: [wan_link0] PPPoE connection timeout after 9 seconds Dec 1 18:46:35 ppp: [wan_link0] Link: DOWN event Dec 1 18:46:35 ppp: [wan_link0] LCP: Down event Dec 1 18:46:35 ppp: [wan_link0] Link: reconnection attempt 7 in 1 seconds Dec 1 18:46:36 ppp: [wan_link0] Link: reconnection attempt 7 Dec 1 18:46:36 ppp: [wan_link0] PPPoE: Connecting to ''
-
Can you do me a 'ngctl list' when in this situation?
-
here is the output before and after
when normally connected after reboot
$ ngctl list There are 17 total nodes: Name: <unnamed>Type: socket ID: 0000001c Num hooks: 0 Name: <unnamed>Type: socket ID: 0000001b Num hooks: 0 Name: <unnamed>Type: pppoe ID: 00000011 Num hooks: 2 Name: <unnamed>Type: socket ID: 00000010 Num hooks: 0 Name: ng0 Type: iface ID: 0000000d Num hooks: 1 Name: mpd10888-wan_link0-lt Type: tee ID: 0000000f Num hooks: 2 Name: vr1 Type: ether ID: 00000002 Num hooks: 1 Name: vr2 Type: ether ID: 00000003 Num hooks: 0 Name: bridge0 Type: ether ID: 00000018 Num hooks: 0 Name: mpd10888-stats Type: socket ID: 00000012 Num hooks: 0 Name: mpd10888-cso Type: socket ID: 0000000b Num hooks: 0 Name: mpd10888-wan-mss Type: tcpmss ID: 00000013 Num hooks: 2 Name: mpd10888-wan Type: ppp ID: 0000000e Num hooks: 3 Name: mpd10888-eso Type: socket ID: 0000000c Num hooks: 0 Name: mpd10888-lso Type: socket ID: 0000000a Num hooks: 1 Name: wlan0 Type: ether ID: 00000017 Num hooks: 0 Name: ngctl4052 Type: socket ID: 00000023 Num hooks: 0</unnamed></unnamed></unnamed></unnamed>
when endless loop of reconenction
$ ngctl list There are 16 total nodes: Name: <unnamed>Type: socket ID: 0000001c Num hooks: 0 Name: <unnamed>Type: socket ID: 0000001b Num hooks: 0 Name: <unnamed>Type: pppoe ID: 00000011 Num hooks: 2 Name: <unnamed>Type: socket ID: 00000010 Num hooks: 0 Name: ng0 Type: iface ID: 0000000d Num hooks: 0 Name: mpd10888-wan_link0-lt Type: tee ID: 00000028 Num hooks: 2 Name: vr1 Type: ether ID: 00000002 Num hooks: 1 Name: vr2 Type: ether ID: 00000003 Num hooks: 0 Name: ngctl23563 Type: socket ID: 0000002d Num hooks: 0 Name: bridge0 Type: ether ID: 00000018 Num hooks: 0 Name: mpd10888-stats Type: socket ID: 00000012 Num hooks: 0 Name: mpd10888-cso Type: socket ID: 0000000b Num hooks: 0 Name: mpd10888-wan Type: ppp ID: 0000000e Num hooks: 1 Name: mpd10888-eso Type: socket ID: 0000000c Num hooks: 0 Name: mpd10888-lso Type: socket ID: 0000000a Num hooks: 2 Name: wlan0 Type: ether ID: 00000017 Num hooks: 0</unnamed></unnamed></unnamed></unnamed>
-
@ermal:
Can you do me a 'ngctl list' when in this situation?
any luck?
-
still no fix for this
-
Have your tried pfsense 2.1-DEVEL just in case the latest mpd 5.6 improves things?
-
havent tried it coz its not much in a usable state currently for light production, mayb later
-
Try adding
set bundle no noretry
src: http://unix.derkeiler.com/Mailing-Lists/FreeBSD/questions/2007-09/msg01895.html
Apparently it was also discussed here a couple of years ago:
According to http://mpd.sourceforge.net/doc5/mpd4.html
Changes since version 4.1rc2:
Bundle's noretry option is enabled by default now. -
i tried to feed that line in using edit file from the web GUI but it seems pfsense seems to remove that entry if rebooted or even if i goto interfaces and click disconnect and then connect
any help regarding some php code change to keep that entry intact?
-
i managed to edit the interfaces.inc so it adds the line which it does now but i guess mpd ignores it as the system log gives the below message
ppp: mpd_wan.conf:31: Incorrect context for: 'set bundle no noretry'