1

On my Ubuntu 14.04 server with dual NICS the NIC connected to the router, eth1, will, just after boot randomly be in a state in which it can listen but not send. I use Wireshark to monitor the interface. The router is working.

The card is a PCI Express, Intel PRO/1000 Network Connection. I have not noticed any differences in DMESG output - it always reports that eth1 is up. ifconfig eth1 output looks normal as well except that the transmit packages count is always low.

Another anomaly is that DMESG reports that IPv6 is involved with both interfaces but I don't and won't be using IPv6.

eth0 works just fine - it's a direct connection to a device.

I see that I have warnings that ACPI has resource 'conflicts' but no other boot warnings. The computer is essentially a (custom) desktop, not a notebook.

How do I troubleshoot this? Are there other logs I should examine or troubleshooting commands? Somehow install a different driver?

I'm just a LINUX user trying to learn enough to get a machine working correctly.

EDIT

There is no difference between the outputs of either "route -n" nor "ip route" except that the order of the last two lines output by route-n may reversed. I don't have enough data to know if they are always reversed. 169.254.19.63 is the directly connected device and 192.168.11.0 is the router.

SUCCESS
ip route
default via 192.168.11.1 dev eth1 
169.254.19.63 dev eth0  scope link 
192.168.11.0/24 dev eth1  proto kernel  scope link  src 192.168.11.219 
192.168.11.0/24 dev eth0  proto kernel  scope link  src 192.168.11.211 
route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.11.1    0.0.0.0         UG    0      0        0 eth1
169.254.19.63   0.0.0.0         255.255.255.255 UH    0      0        0 eth0
192.168.11.0    0.0.0.0         255.255.255.0   U     0      0        0 eth1
192.168.11.0    0.0.0.0         255.255.255.0   U     0      0        0 eth0

FAILURE
ip route
default via 192.168.11.1 dev eth1 
169.254.19.63 dev eth0  scope link 
192.168.11.0/24 dev eth0  proto kernel  scope link  src 192.168.11.211 
192.168.11.0/24 dev eth1  proto kernel  scope link  src 192.168.11.219 
route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.11.1    0.0.0.0         UG    0      0        0 eth1
169.254.19.63   0.0.0.0         255.255.255.255 UH    0      0        0 eth0
192.168.11.0    0.0.0.0         255.255.255.0   U     0      0        0 eth0
192.168.11.0    0.0.0.0         255.255.255.0   U     0      0        0 eth1

EDIT

Changed the IP address of eth0 to 169.254.19.211, the same domain as the device. eth1 still often fails. Below is the output for route -n and ip route. I attempted ssh and http connections from a notebook to the computer during the "failed" state this time they worked! Wireshark shows that nothing is emitted from eth1 if I attempt a ping or load a web page on eth1 but does show the traffic from inbound ssh and web pages.

Identical for eth1 both working and not.

ip route
default via 192.168.11.1 dev eth1 
169.254.0.0/16 dev eth0  proto kernel  scope link  src 169.254.19.211 
169.254.19.63 dev eth0  scope link 
192.168.11.0/24 dev eth1  proto kernel  scope link  src 192.168.11.219 
route -n
Kernel IP routing table
Destination    Gateway        Genmask         Flags Metric Ref    Use Iface
0.0.0.0        192.168.11.1   0.0.0.0         UG    0      0        0 eth1
169.254.0.0    0.0.0.0        255.255.0.0     U     0      0        0 eth0
169.254.19.63  0.0.0.0        255.255.255.255 UH    0      0        0 eth0
192.168.11.0   0.0.0.0        255.255.255.0   U     0      0        0 eth1

EDIT The .../interfaces and .../70-persistent-net.rules are below. Are you suggesting that it would be better if I exchange eth0 for eth1 and vice versa?

I have no idea how to set the route by hand.

/etc/network/interfaces (updated 26 Jan)

# The loopback network interface
auto lo
iface lo inet loopback

# primary network interface left port 
auto eth0
iface eth0 inet static
address 192.168.11.219
netmask 255.255.255.0
gateway 192.168.11.1
dns-nameservers 99.99.99.53 8.8.8.8 8.8.4.4

# The camera interface right port
auto eth1
iface eth0 inet static
address 169.254.19.211
pointtopoint 169.254.19.63

############# assign camera to eth0  #############
post-up route add 169.254.19.63 eth0
post-up route add default gw 192.168.11.1 eth1

/etc/udev/rules.d/70-persistent-net.rules (updated 26 Jan)

# PCI device 0x8086:0x1533 (igb)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:01:05:19:7d:59",    ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"


# PCI device 0x8086:0x153a (e1000e)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:01:05:19:7d:58", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

EDIT

uname -a
Linux fireimager 3.13.0-44-generic #73-Ubuntu SMP Tue Dec 16 00:22:43 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux

sudo lspci -v | awk '/Eth/' rs=
00:19.0 Ethernet controller: Intel Corporation Ethernet Connection I217-LM (rev 04)
02:00.0 Ethernet controller: Intel Corporation I210 Gigabit Network Connection (rev 03)

iptables

~$ sudo iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
ACCEPT     all  --  anywhere             anywhere            
ACCEPT     all  --  anywhere             anywhere             ctstate     RELATED,ESTABLISHED
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:4960
ACCEPT     tcp  --  anywhere             anywhere             tcp dpts:4955:4956
ACCEPT     udp  --  anywhere             anywhere             udp dpt:4958
ACCEPT     udp  --  anywhere             anywhere             udp dpt:domain
ACCEPT     icmp --  anywhere             anywhere             icmp fragmentation-needed
ACCEPT     icmp --  anywhere             anywhere             limit: avg 10/sec burst 5
DROP       all  --  anywhere             anywhere            

Chain FORWARD (policy DROP)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         

Chain LOGNDROP (0 references)
target     prot opt source               destination         
LOG        tcp  --  anywhere             anywhere             limit: avg 5/min  burst 5 LOG level debug prefix "Denied TCP: "
LOG        udp  --  anywhere             anywhere             limit: avg 5/min burst 5 LOG level debug prefix "Denied UDP: "
LOG        icmp --  anywhere             anywhere             limit: avg 5/min burst 5 LOG level debug prefix "Denied ICMP: "
DROP       all  --  anywhere             anywhere            

EDIT - it's eth0 with driver igb that is misbehaving.

~$ sudo lspci -v | awk '/Eth/' RS=

00:19.0 Ethernet controller: Intel Corporation Ethernet Connection I218-LM (rev 04)
    Subsystem: Intel Corporation Device 0000
    Flags: bus master, fast devsel, latency 0, IRQ 44
    Memory at f7c00000 (32-bit, non-prefetchable) [size=128K]
    Memory at f7c3d000 (32-bit, non-prefetchable) [size=4K]
    I/O ports at f080 [size=32]
    Capabilities: [c8] Power Management version 2
    Capabilities: [d0] MSI: Enable+ Count=1/1 Maskable- 64bit+
    Capabilities: [e0] PCI Advanced Features
    Kernel driver in use: e1000e
02:00.0 Ethernet controller: Intel Corporation I210 Gigabit Network Connection (rev 03)
    Subsystem: Intel Corporation Device 0000
    Flags: bus master, fast devsel, latency 0, IRQ 19
    Memory at f7b00000 (32-bit, non-prefetchable) [size=128K]
    I/O ports at e000 [size=32]
    Memory at f7b20000 (32-bit, non-prefetchable) [size=16K]
    Capabilities: [40] Power Management version 3
    Capabilities: [50] MSI: Enable- Count=1/1 Maskable+ 64bit+
    Capabilities: [70] MSI-X: Enable+ Count=5 Masked-
    Capabilities: [a0] Express Endpoint, MSI 00
    Capabilities: [100] Advanced Error Reporting
    Capabilities: [140] Device Serial Number 00-01-05-ff-ff-19-7d-59
    Capabilities: [1a0] Transaction Processing Hints
    Kernel driver in use: igb

~$ ifconfig | awk '/eth/' RS=

eth0      Link encap:Ethernet  HWaddr 00:01:05:19:7d:59  
          inet addr:192.168.11.219  Bcast:192.168.11.255  Mask:255.255.255.0
          inet6 addr: fe80::201:5ff:fe19:7d59/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:73 errors:0 dropped:0 overruns:0 frame:0
          TX packets:57 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:15740 (15.7 KB)  TX bytes:7496 (7.4 KB)
          Memory:f7b00000-f7b20000 
eth1      Link encap:Ethernet  HWaddr 00:01:05:19:7d:58  
          inet addr:169.254.19.211  Bcast:169.254.255.255  Mask:255.255.0.0
          inet6 addr: fe80::201:5ff:fe19:7d58/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:37 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:6505 (6.5 KB)
          Interrupt:20 Memory:f7c00000-f7c20000 
12
  • Are the interfaces are on different subnets? Are you using NetworkManager or configuring using /etc/network/interfaces?
    – Ben Grimm
    Jan 22, 2015 at 18:08
  • eth0 and eth1 are on the same subnet but eth0 connects directly to a device. I'm using /etc/network/interfaces; NetworkManager is not running. Jan 22, 2015 at 18:20
  • 1
    If they're on the same network, your routing table may simply be sending everything out eth0 rather than to the router on eth1. When it's unable to send packets, I would run 'ip route' and compare that to what it looks like when it's working normally.
    – Ben Grimm
    Jan 22, 2015 at 20:58
  • Ben, I've added more data in response to your comment. Jan 23, 2015 at 21:22
  • Why not set the ip address of eth0 to something on the 169.254.19.0 subnet? It would certainly eliminate some headaches.
    – Ben Grimm
    Jan 23, 2015 at 21:29

1 Answer 1

0

To long for comment, wall of text, sorry =)

Had another look at your ifconfig, and see eth1 or your nic with mac ending on 58 is not receiving any packages. I read that ifconfig will be interface level statistics, before the firewall. Any particular reason for using the option, pointtopoint in interfaces config? Try remove it and use netmask 255.255.255.0 or 255.255.0.0 instead. If that also fail. I would guess with the rc kernel that it isn't a driver issue. And i would fall back to suspect faulty hardware, cable. For the cable are you using an "Ethernet crossover cable" for the direct connection? it might be that only one of your nics is able to detect and switch rx\tx automatically. Shouldn't have anything to say, but you could also try to flush your firewall; sudo iptables -F

Old, Try the following;

Download and install:

Kernel headers part1

Kernel headers part2

Kernel-image

Use sudo dpkg -i filename.deb to install.

9
  • The computer must have a fixed IP; the camera's IP is fixed and cannot be changed. The computer is connected to the router but the camera has a direct connection to the computer. I didn't recognize allow-hotplug but will look it up. On the advice of you and Ben Grim I did exchange eth0 and eth1 in "interfaces" and edited my iptables as well. Everything appears to work except that I've lost the ability to ssh into the computer (probably http as well but not tested) from my notebook that's on the LAN. Jan 26, 2015 at 19:38
  • No Joy, Anders, no difference in behavior - alas. Feb 2, 2015 at 19:16
  • @NateLockwood Added a comment in the answer above. Feb 3, 2015 at 15:56
  • I've edited your edit for the same reason :-) I don't know if you will see it until it's been reviewed. I confirmed that the nic driver is indeed the most recent, too. I have an update to my stable released kernel; since I'm booting to the RC I guess I shouldn't do the update, is that correct. BTW I really appreciate your and Ben's efforts to help me. Feb 5, 2015 at 0:58
  • @NateLockwood Thanks, are glad to try helping you solve your issue. I have got a new idea. But at work now so i will come back to it later =) Feb 5, 2015 at 10:25

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .