Set the timeout to 0 since we don't want pppoe to try reconnecting, we want whatever is calling it to reconnect. Lots of odd things happen when you have pppoe retrying itself. The path for the plugin is wrong, it's now part of ppp and is in a ppp's plugin lib directory. If no path is specified then that's where ppp looks, so that's what we do here. Index: rp-pppoe-3.8/configs/pppoe.conf =================================================================== --- rp-pppoe-3.8.orig/configs/pppoe.conf 2006-04-03 00:29:41.000000000 +1000 +++ rp-pppoe-3.8/configs/pppoe.conf 2007-06-08 16:02:47.000000000 +1000 @@ -66,7 +66,7 @@ # to connect forever after pppoe-start is called. Otherwise, it will # give out after CONNECT_TIMEOUT seconds and will not attempt to # connect again, making it impossible to reach. -CONNECT_TIMEOUT=30 +CONNECT_TIMEOUT=0 # How often in seconds pppoe-start polls to check if link is up CONNECT_POLL=2 @@ -115,7 +115,7 @@ FIREWALL=NONE # Linux kernel-mode plugin for pppd. If you want to try the kernel-mode -# plugin, use LINUX_PLUGIN=/etc/ppp/plugins/rp-pppoe.so +# plugin, use LINUX_PLUGIN=rp-pppoe.so LINUX_PLUGIN= # Any extra arguments to pass to pppoe. Normally, use a blank string