From Bugzilla Helper: User-Agent: Mozilla/5.0 (X11; U; Linux i686; de-AT; rv:1.4) Gecko/20030922 Description of problem: With redhat-config-network you can configure ADSL in several kinds. I see some problems. 1. Activate at boot, set as default route ifcfg-T_DSL contains: ONBOOT=yes USERCTL=no DEFROUTE=yes If your system have already a default route on ethx, the pppd is not able to replace the default route. I am not know, if ppp-2.4.1-14 should be able to do this (bug or not bug). I see in the "ifup-ppp" script for modem: if [ "${DEFROUTE}" != no ] ; then # pppd will no longer delete an existing default route # so we have to help it out a little here. DEFRT=`ip route list | awk '/^default / { print $3 }'` [ -n "${DEFRT}" ] && echo $DEFRT > /etc/default-route route del default >/dev/null 2>&1 opts="$opts defaultroute" fi If your interface TYPE=xDSL then the script "/sbin/adsl-start" will start before the default route test comes in the ifup-ppp scipt. The problem with the default route can fixed only in "/sbin/adsl-start". To replace an old default route interface goes down a fix in /sbin/adsl-stop is required. You can find my fix in attachment as patch and also the new scripts. 2. Dial on Demand do not work ONBOOT=yes USERCTL=no DEFROUTE=yes DEMAND=yes After ifup starts the script "/sbin/adsl-connect" can not create the interface. /var/log/messages adsl-connect: ADSL connection lost; attempting re-connection. Debuging /sbin/adsl-connect with set -x (with help from Lars Herrmann, herrmann): /sbin/adsl-connect: line 317: 3493 " $SETSID $PPPD pty "$PPPOE_CMD" $PPP_STD_OPTIONS $DEMAND $PPPD_SYNC For more details see attachment "adsl-connect-debug.txt.gz". 3. Synchron ppp ONBOOT=yes USERCTL=no DEFROUTE=yes SYNCHRONOUS=yes If the rpm "kernel-unsupported" is installed, the kernel modules "n_hdlc" and "ppp_synctty" are available. ADSL works, but I see errors on ppp0. ifconfig ppp0 Protokoll:Punkt-zu-Punkt Verbindung inet Adresse:80.131.72.18 P-z-P:217.5.98.33 Maske:255.255.255.255 UP PUNKTZUPUNKT RUNNING NOARP MULTICAST MTU:1492 Metric:1 RX packets:9794 errors:9807 dropped:0 overruns:0 frame:0 TX packets:4979 errors:0 dropped:0 overruns:0 carrier:0 Kollisionen:0 Sendewarteschlangenl�nge:3 RX bytes:14127209 (13.4 Mb) TX bytes:259229 (253.1 Kb) Every received packages caused an error! All this kinds of configurations you can create with redhat-config-network. Version-Release number of selected component (if applicable): rp-pppoe-3.5-4 ppp-2.4.1-14 How reproducible: Always Steps to Reproduce: 1.configure ADSL in several kinds 2.start the interface 3. Actual Results: - if you have a default route on LAN interface, ADSL can not replace replace the default route - pppd crashed with "Segmentation fault" on Dial on Demand - errors with synchron ppp on ppp0 (o.k. the kernel modules are unsupported) Expected Results: - set (replace) default route should work - Dial on Demand should work - no errors on ppp0 interface in synchron modus Additional info:
Created attachment 97447 [details] fix for problem with default route
Created attachment 97448 [details] adsl-connect script debug
Sorry, please correct: 1. Activate at boot, set as default route The problem with the default route can fixed only in "/sbin/adsl-start". with: The problem with the default route can fixed only in "/sbin/adsl-connect". The fix is correct.
The /etc/resolv.conf will not set if the ppp0 interface comes up. This is a problem of the new configfile name. With ifcfg-T_DSL the /etc/resolv.conf will only set new, if no /etc/ppp/resolv.conf file exist! This file is created new every time the interface comes up, but is not copy to /etc. Move ifcfg-T_DSL to ifcfg-ppp0 and the mechanismus for set the /etc/resolv.conf with new DNS info if the ppp0 comes up work correct. Also, if the interface goes down the old /etc/resolv.conf become activ. Remember the ISDN problems, rename the ifcfg-* to the old convention ifcfg-ippp0 and all works correct by ISDN.
Uwe, your attachment is not readable. Could you please send the changes to me again? Thanks
Created attachment 97492 [details] adsl-connect patch for default route I fond today the next error with setting the default route. If there is an adsl reconnect you get a new dynamic ip addess. The pppd could not repleace the default route before reconnect.
pppd crash during reconnect ppd[10238]: ioctl(PPPIOCSASYNCMAP): Inappropriate ioctl for device(25) pppd[10238]: tcflush failed: Input/output error pppd[10238]: Couldn't release PPP unit: Invalid argument cat /var/log/messages Feb 19 22:41:10 adsl01 pppd[10238]: LCP terminated by peer Feb 19 22:41:10 adsl01 pppoe[10239]: Session 7078 terminated --received PADT from peer Feb 19 22:41:11 adsl01 pppoe[10239]: Sent PADT Feb 19 22:41:11 adsl01 pppd[10238]: ioctl(PPPIOCSASYNCMAP): Inappropriate ioctl for device(25) Feb 19 22:41:11 adsl01 pppd[10238]: tcflush failed: Input/output error Feb 19 22:41:11 adsl01 pppd[10238]: Couldn't release PPP unit: Invalid argument Feb 19 22:41:11 adsl01 pppd[10238]: Exit. Feb 19 22:41:11 adsl01 /etc/hotplug/net.agent: NET unregister event not supported Feb 19 22:41:12 adsl01 adsl-connect: ADSL connection lost; attempting re-connection. And now the ip-down.local script was running: Feb 19 22:41:12 adsl01 firewall: Alle Chains entleeren: succeeded Feb 19 22:41:12 adsl01 firewall: Benutzerdefinierte Chains entfernen: succeeded Feb 19 22:41:12 adsl01 firewall: Resetting to the default ACCEPT policy succeeded Feb 19 22:41:14 adsl01 squid[10615]: Squid Parent: child process 10617 exited with status 0 Feb 19 22:41:17 adsl01 pppd[12847]: pppd 2.4.1 started by root, uid 0 Feb 19 22:41:17 adsl01 pppd[12847]: Using interface ppp0 Feb 19 22:41:17 adsl01 pppd[12847]: Connect: ppp0 <--> /dev/pts/0 Feb 19 22:41:17 adsl01 /etc/hotplug/net.agent: assuming ppp0 is already up Feb 19 22:41:18 adsl01 pppoe[12848]: PPP session is 7188 Feb 19 22:41:18 adsl01 pppd[12847]: not replacing existing default route to eth0 [192.168.253.2] Feb 19 22:41:18 adsl01 pppd[12847]: local IP address 80.131.76.15 Feb 19 22:41:18 adsl01 pppd[12847]: remote IP address 217.5.98.33 Feb 19 22:41:18 adsl01 pppd[12847]: primary DNS address 62.225.251.16 Feb 19 22:41:18 adsl01 pppd[12847]: secondary DNS address 194.25.2.129 Feb 19 22:41:19 adsl01 firewall: Alle Chains entleeren: succeeded Feb 19 22:41:20 adsl01 firewall: Benutzerdefinierte Chains entfernen: succeeded Feb 19 22:41:20 adsl01 firewall: Resetting to the default ACCEPT policy succeeded Feb 19 22:41:23 adsl01 firewall: Firewall was started: succeeded Feb 19 22:41:24 adsl01 squid[13222]: Squid Parent: child process 13224 started After ifdown ppp0 and ifup ppp0 by hand it works up to the next pppd crash .... Today the next crash: Feb 25 16:56:41 adsl01 pppd[4807]: LCP terminated by peer Feb 25 16:56:42 adsl01 pppoe[4808]: Session 4624 terminated -- received PADT from peer Feb 25 16:56:42 adsl01 pppoe[4808]: Sent PADT Feb 25 16:56:42 adsl01 pppd[4807]: ioctl(PPPIOCSASYNCMAP): Inappropriate ioctl for device(25) Feb 25 16:56:42 adsl01 pppd[4807]: tcflush failed: Input/output error Feb 25 16:56:42 adsl01 pppd[4807]: Exit. Feb 25 16:56:42 adsl01 /etc/hotplug/net.agent: NET unregister event not supported Feb 25 16:56:43 adsl01 adsl-connect: ADSL connection lost; attempting re-connection I am not know, is this a seperate bug for the ppp-2.4.1-14.rpm?
Hi Uwe, this looks like a bug in pppd. Could you please add this in correct component (pppd) please. Thanks
ok, the problem with default route in DSL is already fixed in rp-pppoe-3.5-11 or newer. It will be available in rawhide soon.
if you don't want to wait, you could download from it from ftp://people.redhat.com/than/rawhide
Here are the results with rp-pppoe-3.5-11. 1. Activate at boot, set as default route Set the new default route after reconnect works now. But, if you have on ethernet i.e. eth0 a default route before the adsl starts, then the pppd can not replace this exist default route. In my patch for the asdl-connect script I have also do this. Why I do this? In practice, after a kickstart installation it is normal to have a default route on the ethernet interface i.e. eth0. I think it is consequent to delete the default route when asdl-connect script is start and the parameter DEFROUTE=yes is set in the config file. What do you think about? 2. Dial on Demand do not work ONBOOT=yes USERCTL=no DEFROUTE=yes DEMAND=yes > ulimit -c unlimited > ifup ppp0 Now I have the core files. I will put them in Bug #116927, is this o.k.? 3. Synchron ppp ONBOOT=yes USERCTL=no DEFROUTE=yes SYNCHRONOUS=yes Please tell me, is it relevant to test this again, if 2. is fixed? Uwe
there's a new rp-pppoe-3.5-11.1 on people.redhat.com. Could you please test this again. I should fix this default route. thanks > ulimit -c unlimited > ifup ppp0 >Now I have the core files. I will put them in Bug #116927, is this >o.k.? yes please, put them in correct component Bug #116927, thanks
Here are the results with rp-pppoe-3.5-11.1. First start after install the new rpm: ifup ppp0 --> replace the exist default route correct Now I break the adsl line for test the reconnect: reconnect --> replace the exist default route correct In 22 hours I see the real reconnect result. I think, the default route problem is fixed. Uwe
Uwe, thank you very much for your reports and testing. I can now close this bug ;-)
Reconnect after 24 hours (Mar 4 23:46:07 adsl01 pppd[21006]: LCP terminated by peer) --> replace the exist default route correct. rp-pppoe-3.5-11.1 can distribute in errata. Uwe
i have built rp-pppoe-3.5-4.1 for U3, which now includes this patch.
rp-pppoe-3.5-4.1.i386.rpm works correct and can distribute with U3. Uwe
An errata has been issued which should help the problem described in this bug report. This report is therefore being closed with a resolution of ERRATA. For more information on the solution and/or where to find the updated files, please follow the link below. You may reopen this bug report if the solution does not work for you. http://rhn.redhat.com/errata/RHBA-2004-268.html