I am stuck with some strange behavior comming from my linux system. I have two ethernet interfaces (eth0 and eth1). When trying to set them up for the first time (for example with ifup eth1, or ifconfig eth1 192.168.0.2 up), I get the following :
IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
However, networking seems working fine (ping or ssh works fine). Sometimes after a few seconds, I get:
IPv6: ADDRCONF(NETDEV_UP): eth0: link is ready
If I try another ifup, I get no message error.
It might seems it is not a problem, but I am afraid that it is hiding a configuration problem either in the kernel or in the networking side.
Steps I did to solve the prblem or get a better understanding :
Step#1 As I had no interfaces configuration file, I added one in /etc/networking:
# interfaces(5) file used by ifup(8) and ifdown(8) auto lo iface lo inet loopback auto eth0 iface eth0 inet static address 192.168.1.170 netmask 255.255.255.0 network 192.168.1.0 broadcast 192.168.1.255 gateway 192.168.1.1 auto eth1 iface eth1 inet static address 220.127.116.11 netmask 255.255.255.0 network 192.168.1.0 broadcast 192.168.1.255
That didn't change anything.
Step#2 I thought it might comes from busybox (I have seen some different behavior between a linux tool in busybox and the 'real one'. So, I compiled the ifupdown package for my target. That didn't help.
Step#3 I went to the kernel configuration, and the IPv6 support was compiled as module so I made it mandatory, so it is loaded at boot. That didn't help.
From, what I have seen on the web, others had the same problem but didn't find a solution. They usually added a script at boot that tries a ifup so the user doesn't see an error messages after that. I do not find that satisfactory, as I stated previously: I am afraid that there is a bigger problem.
Any ideas where the problem might come from?