On 06/04/13 16:25, Bob Proulx wrote: > Tony van der Hoff wrote: >> Certainly, with eth0 unplugged, ifconfig shows it to be still up, and ip >> route show shows both interfaces, so that's very likely the cause. > > Sounds like the problem. Because I am pretty sure that ifplugd has > been given the responsibility to monitor the link status and to bring > the interface up and down appropriately. If that isn't working then > these kinds of problems will arise. > > A couple of hints that may help. It is okay to have multiple default > routes. They are used in priority order. If you have two interfaces > and both are using dhcp then both will get a default route. (Normally > when configuring static interfaces only one is assigned a default > route.) The last one configured will be the default route used. When > an interface is downed a default route associated with it will be > removed from the route table. Being removed the next available > default route would then become active. > > The Linux kernel changed the display order for routes. In Squeeze the > Linux kernel displays the order is the traditional order with the > priority display listing from top to bottom and the first matching > route wins. In Wheezy the Linux kernel reverses this display order > and it is from bottom to top instead of top to bottom. I consider > this a bug although I am sure someone did it intentionally. The > difference between kernel versions is definitely annoying. > >> However, ifplugd is running, as shown by ps; an instance for each >> interface. My /etc/default/ifplugd is identical to yours. > > I should say that on my only Pi system at the moment I have been > hacking on it severely. I have been playing with the bonding > interface and so poking around in this area. I have deviated from > the-stock-install quite a few places in the process during my > experiments. So I probably no longer have a good match to what you > see on your system. So the works-for-me statement about this may be > due to my modifications. Sorry. I am going to be setting up a > pristine Pi here in a day or so and that will give me an opportunity > to recreate the stock setup. I am sure I will run into your problem > there. > >> If I manually pull down eth0, and then restore the cable, then it comes >> up automatically. >> >> Digging around in /etc/udev, I find it is practically empty; is udev >> still the way devices are detected? > > Yes. And I also noticed but had not investigated yet that > 70-persistent-net.rules isn't being created. But I was thinking it > was probably something broken on my system. But it could be an early > init script that is actively removing or avoiding it due to the way > the Pi is designed to be used. This is causing me problems due to my > Pi having three network interfaces but I assumed it was something I > caused on my system. But I guess not. >
Well, From reading the man pages (always a good idea) I discovered that ifplugd calls ifup/ifdown to do its actual work. Manually invoking "ifdown eth0" returned an error "eth0 not configured", so I guessed that is why ifplugd was not doing its job properly. Further reading revealed that the stanza "auto eth0" is required in /etc/network/interfaces for the kernel to be able to autoconfigure the interface. That stanza was missing. I instated it, and re-booted. It is now working correctly. I dont know whether my hackery caused the problem, or whether the interfaces file was missing it from the start; if it was, I'd consider it a bug. But then would it be a raspian, or a wheezy bug? -- Tony van der Hoff | mailto:t...@vanderhoff.org Buckinghamshire, England | -- To UNSUBSCRIBE, email to debian-user-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/516052bb.70...@vanderhoff.org