pppoe connection over NetworkManager 0.6 managed ethernet device doesn't work

Bug #157993 reported by Stefano Angeleri
14
Affects Status Importance Assigned to Milestone
NetworkManager
Fix Released
Wishlist
network-manager (Ubuntu)
Fix Released
Medium
Alexander Sack

Bug Description

Binary package hint: network-manager

situation: ubuntu gutsy with latest updates as of now and latest network manager
                The network has a router which can work also as a eth modem (pppoe connection) which will connect directly with a public ip (5 available)
how to reproduce:
-check that the network is working fine even on internet trough the router furnished connection
-try executing pppoeconf and finish the pppoe connection setup (it was all default except that it shouldn't automatically connect on bootup)
-connect

as of now it's all working fine i can still access the network trough the normal way and internet trough the pppoe connection. ifconfing will still report eth0 to have a correct ip and all

-reboot
-the eth0 interface won't work anymore. network manager doesn't setup it correctly and it's missing an ip adress and i can't access network anymore
-opening the np-applet menu you will see a new entry "modem connection" which will let you connect just like with pon dsl-provider.
-trying to connect trough the modem connection will let you access again to internet trough the pppoe connection but still eth0 doesn't have an ip adress so network is unreachable. plus it isn't listed anymore in the np-applet connection list and there is no way to force it to connect: even manual configuration (default is roaming mode) with dhcp won't work: everytime i will try to force a reconfiguration by pressing the check near the cable connection will always bring up the configuration of the connection and it won't try anymore to connect to it.

so the situation is now: no way to connect to local network anymore just internet, even rebooting the computer various times didn't bring the local network to be connectable (eth0 with no ip adress)

how to fix the unconnectable situation (but this isn't a fix as pppoe connections can't be done in this way):
-go to /etc/ppp and remove all newly created files by pppoeconf
-reboot
-the network will work again as before but the entry "modem connection" will still be in np-applet

description: updated
Revision history for this message
Paul Dufresne (paulduf) wrote :

Thank you for taking the time to report this bug and helping to make Ubuntu better.

Well, we would need /var/log/syslog when the system works, and one when the system don't work.
Also the versions you use, which can be obtained by "dpgk -l | grep network-manager".

Changed in network-manager:
assignee: nobody → dufresnep
status: New → Incomplete
Revision history for this message
Stefano Angeleri (weltall) wrote :

here they are. this time to make it work again i had to remove completely the ppp folder and change restore the interfaces bak-0 file inside /etc/network/.

Revision history for this message
Stefano Angeleri (weltall) wrote :

ah now, after doing the last changes, even the modem connection thing (which was left behind the last time) disappeared from the network manager.
thanks for your time :)

Revision history for this message
Stefano Angeleri (weltall) wrote :

added requested data

Changed in network-manager:
status: Incomplete → New
Revision history for this message
marianne (marianne-promberger) wrote : :

I, too, experienced similar problems, but I suspect it may not be a bug in nm-applet as such but rather caused by pppoeconf writing to /etc/network/interfaces.

Xubuntu 7.10 Gutsy, nm-applet 0.6.5

My sister has DSL pay-per-minute, so I used pppoeconf to set up a connection. Then, I could connect using "pon dsl-provider" or alternatively when I clicked on the nm-applet in the Xfce panel I had a new item "Dial-up connections" from which I could connect and disconnect.

Back at my parents' house with DSL flatrate and behind a modem/router, plugging in the cable no longer got me an IP address from the DHCP server (router); neither did checking and unchecking "Enable Networking" with the cable plugged in. I was, however, able to get an IP address by just saying "sudo dhclient eth0". The nm-applet "Wired connection" was missing.

First, I removed the config file that pppoeconf creates (/etc/ppp/peers/dsl-provider); this didn't help.

Then, I looked into /etc/network/interfaces, which looked like this:
---interfaces file start -----
auto lo
iface lo inet loopback

iface dsl-provider inet ppp
pre-up /sbin/ifconfig eth0 up # line maintained by pppoeconf
provider dsl-provider

auto eth0
iface eth0 inet manual

---interfaces file end ---

I removed everything except the first two lines:
auto lo
iface lo inet loopback

At first, clicking on nm-applet after doing this completely froze the machine. I had to force-shutdown by holding the power button. But after reboot, everything is fine and I can again select "Wired Network" in nm-applet, and nm-applet gets an IP address from the router.

Of course, it's a bit of a pain if I have to manually reset all this every time I move between my parents' and my sister's place. Is there a way to set up dialup dsl connections from within nm-applet, without going through pppoeconf? Or, could I now just move back the /etc/ppp/peers/dsl-provider file (I made a backup), without using pppoeconf, and would "pon dsl-provider" then work without the extra stuff in /etc/network/interfaces?

Revision history for this message
Paul Dufresne (paulduf) wrote : Re: configuring a pppoe connection with pppoeconf locks local network functionality

Well, the fact that your modem works both as a router and a modem make me a bit hesitant on how to deal with this bug.
But it is basically a known fact that pppoe is incompatible with the Network Manager.
And there is a specification that would be hoped to be deal with in Hardy, although development on this seems slow.
In fact, there is 2 specifications that seems to have not known of each other before recently:
https://blueprints.launchpad.net/ubuntu/+spec/pppoeconf-gui (accepted for Hardy, but still in new state).
https://blueprints.launchpad.net/ubuntu/+spec/dial-up-support

Basically, it seems that pppoeconf create an entry in /etc/interfaces, but generally, NetwworkManager ignores interfaces having an entry in /etc/interfaces. Which suggest you should rather use 'pon dsl-provider' and optionally 'poff' to use pppoe for now, rather than Network Manager.

Anyway, I am confirming the bug to let a network-manager decide more appropriately how to deal with this bug.

Changed in network-manager:
status: New → Confirmed
assignee: dufresnep → nobody
Changed in network-manager:
status: Unknown → Confirmed
Revision history for this message
Alexander Sack (asac) wrote :

just use the following lines in /etc/network/interfaces

auto lo
iface lo inet loopback

iface dsl-provider inet ppp
provider dsl-provider

take care that you don't name your ethernet device in that config. otherwise network manager won't manage it anymore.

Let me know if that helped.

Changed in network-manager:
status: Confirmed → Incomplete
assignee: nobody → asac
importance: Undecided → Medium
Revision history for this message
marianne (marianne-promberger) wrote :

Hi Alexander,

Sorry, I can't test this anymore, since I'm now in a different country.

But I should have reported:

After I had edited /etc/network/interfaces to contain nothing but:

auto lo
iface lo inet loopback

I then next time I was where I need the dialup just copied back the backup I had made of /etc/ppp/peers/dsl-provider

I was then able without problems to connect to the dialup from the commandline with

pon dsl-provider

Nothing got written to /etc/network/interfaces, which still contains only the two lines quoted above.

Network-manager did not offer an entry for the dialup (which I don't need; I just used the CLI) and it had no problem managing the eth0 interface as such.

Revision history for this message
Joe Holloway (jholloway7) wrote :

I've had the same problem on my father's PC after an upgrade from Feisty -> Gutsy. I've tried several different /etc/network/interfaces configurations and this is the only one I've found that starts the ppp connection on boot:

auto lo
iface lo inet loopback

auto dsl-provider
iface dsl-provider inet ppp
pre-up /sbin/ifconfig eth0 up # line maintained by pppoeconf
provider dsl-provider

auto eth0
iface eth0 inet manual

I don't know how I landed on this as the first couple times I ran pppoeconf after the upgrade I was getting some strange entries in there:

auto lo
iface lo inet loopback

auto eth1
#iface eth1 inet dhcp

auto eth2
#iface eth2 inet dhcp

auto ath0
#iface ath0 inet dhcp

auto wlan0
#iface wlan0 inet dhcp

auto dsl-provider
iface dsl-provider inet ppp
#pre-up /sbin/ifconfig eth0 up # line maintained by pppoeconf
provider dsl-provider

auto eth0
#iface eth0 inet dhcp
iface eth0 inet manual

Given that I can recreate on my dad's DSL setup, let me know if there's anything I can do to provide more information.

Revision history for this message
Stefano Angeleri (weltall) wrote :

thanks Alexander Sack.
it seems that fixes the problem: the connections works like always plus i can finally connect trough pppoe even from network manager contextual menu (modem connection => connection with dsl-provider trough modem).
this is my /etc/network/interfaces file:

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface

#auto dsl-provider
iface dsl-provider inet ppp
#pre-up /sbin/ifconfig eth0 up # line maintained by pppoeconf
provider dsl-provider

#auto eth0
#iface eth0 inet manual

Revision history for this message
Max (mwiehle2) wrote :

The workaround proposed by Alexander seemed to work. So i think all necessary information has been provided.

Changed in network-manager:
status: Incomplete → Confirmed
Changed in network-manager:
status: Confirmed → Fix Released
Revision history for this message
Eduardo Trápani (etrapani-gmail) wrote :

The workaround brings the full contextual menu, but I cannot set the static ip to eth0. If I do, network manager writes to /etc/network/interfaces and I cannot see the modem connections anymore. (home network with static IP on the machine that connects to a pay per minute ADSL).

The weird thing is that the very same configuration works in Ubuntu 7.10!

I tried with the same /etc/network/interfaces (rebooting just to make sure):

auto lo
iface lo inet loopback

iface dsl-provider inet ppp
pre-up /sbin/ifconfig eth0 up # line maintained by pppoeconf
provider dsl-provider

auto eth0
iface eth0 inet static
address 172.16.2.3
netmask 255.255.255.0
gateway 172.16.2.1

In Ubuntu 7.10 (network-manager 0.6.5-0ubuntu1) it works perfectly.

In Ubuntu 8.04 (network-manager 0.6.6-0ubuntu5) I lost the contextual menu to access the dsl ... Same 'interfaces' and the same settings in nm.

Maybe this will help solve the issue, if I happen to turn on the "roaming mode" (I should not, I do have a static address) then I get the full contextual menu.

Revision history for this message
Eduardo Trápani (etrapani-gmail) wrote :

Update: reading the changelog I found "debian/README.Debian: adapt README to match the new behaviour of network-manager, which doesn't manage _any_ device configured in /etc/network/interfaces anymore."

Anyway, it seems that this is the actual bug, not being able to bring up the contextual menu for dialup once a static IP is defined: https://bugs.launchpad.net/ubuntu/+source/network-manager/+bug/5364

Revision history for this message
Alexander Sack (asac) wrote :

fixed in NM 0.7 (intrepid)

Changed in network-manager:
status: Confirmed → Fix Released
Changed in network-manager:
importance: Unknown → Wishlist
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Bug attachments

Remote bug watches

Bug watches keep track of this bug in other bug trackers.