dual-net problem

From: T. Horsnell (tsh_at_mrc-lmb.cam.ac.uk)
Date: 05/25/05

  • Next message: Tim Holmes: "Remote Syslog"
    To: fedora-list@redhat.com
    Date: Wed, 25 May 2005 19:02:54 +0100 (BST)
    
    

    Hi all,
    I have a system with dual gigabit ethernet ports.
    I've assigned them each an ip address, and am using
    tcpdump and ping to check that they work as expected.
    They dont.
                               
    If I ping, from another box, the address associated with eth1,
    the traffic appears on eth0. This only happens when I ping from
    another Linux box - if I ping from one of my Alpha boxes, everything
    works as expected, i.e. pings addressed to the ipaddress
    allocated to eth0 appear on eth0, and pings to the ipaddress
    allocated to eth1 appear on eth1.

    I'm running FC3 with kernel 2.6.10 on the dual-eth box, and I've
    tried pinging from RH7.3, RH9 and FC3 boxes, all with the same
    result.
         
    It appears from the tcpdump output below, that ls1 is returing the
    mac address of the eth1 interface *and* the address of the eth0
    interface. Is this proper? What am I doing wrong?

    Cheers,
    Terry.

    e.g.:

    FC3 ping source:
    [root@dev1 ~]# arp -d ls1
    [root@dev1 ~]# arp -d ls1-2
    [root@dev1 ~]# ping ls1-2
    PING ls1-2.lmb.internal (10.1.0.11) 56(84) bytes of data.
    64 bytes from ls1-2.lmb.internal (10.1.0.11): icmp_seq=0 ttl=64 time=0.322 ms
    64 bytes from ls1-2.lmb.internal (10.1.0.11): icmp_seq=1 ttl=64 time=0.139 ms
    64 bytes from ls1-2.lmb.internal (10.1.0.11): icmp_seq=2 ttl=64 time=0.140 ms
    64 bytes from ls1-2.lmb.internal (10.1.0.11): icmp_seq=3 ttl=64 time=0.142 ms
    64 bytes from ls1-2.lmb.internal (10.1.0.11): icmp_seq=4 ttl=64 time=0.140 ms
    64 bytes from ls1-2.lmb.internal (10.1.0.11): icmp_seq=5 ttl=64 time=0.140 ms

    --- ls1-2.lmb.internal ping statistics ---
    6 packets transmitted, 6 received, 0% packet loss, time 5000ms
    rtt min/avg/max/mdev = 0.139/0.170/0.322/0.069 ms, pipe 2
    [root@dev1 ~]# arp ls1
    Address HWtype HWaddress Flags Mask Iface
    ls1.lmb.internal (incomplete) eth0
    [root@dev1 ~]# arp ls1-2
    Address HWtype HWaddress Flags Mask Iface
    ls1-2.lmb.internal ether 00:E0:81:2B:AA:9A C eth0
    [root@dev1 ~]#

    dual-net target:

    [root@ls1 ~]$ ifconfig
    eth0 Link encap:Ethernet HWaddr 00:E0:81:2B:AA:9A
              inet addr:10.1.0.10 Bcast:10.127.255.255 Mask:255.128.0.0
              inet6 addr: fe80::2e0:81ff:fe2b:aa9a/64 Scope:Link
              UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
              RX packets:376742 errors:0 dropped:0 overruns:0 frame:0
              TX packets:133194 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:1000
              RX bytes:179118055 (170.8 MiB) TX bytes:132633288 (126.4 MiB)
              Interrupt:177

    eth1 Link encap:Ethernet HWaddr 00:E0:81:2B:AA:9B
              inet addr:10.1.0.11 Bcast:10.127.255.255 Mask:255.128.0.0
              inet6 addr: fe80::2e0:81ff:fe2b:aa9b/64 Scope:Link
              UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
              RX packets:310052 errors:0 dropped:0 overruns:0 frame:0
              TX packets:7435 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:1000
              RX bytes:64100245 (61.1 MiB) TX bytes:9188440 (8.7 MiB)
              Interrupt:185

    lo Link encap:Local Loopback
              inet addr:127.0.0.1 Mask:255.0.0.0
              inet6 addr: ::1/128 Scope:Host
              UP LOOPBACK RUNNING MTU:16436 Metric:1
              RX packets:134 errors:0 dropped:0 overruns:0 frame:0
              TX packets:134 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:0
              RX bytes:9620 (9.3 KiB) TX bytes:9620 (9.3 KiB)

    [root@ls1 ~]$ netstat -r
    Kernel IP routing table
    Destination Gateway Genmask Flags MSS Window irtt Iface
    169.254.0.0 * 255.255.0.0 U 0 0 0 eth1 (I dont know where this came from)
    10.0.0.0 * 255.128.0.0 U 0 0 0 eth0
    10.0.0.0 * 255.128.0.0 U 0 0 0 eth1
    default fw.lmb.internal 0.0.0.0 UG 0 0 0 eth0
    [root@ls1 ~]$

    I've also tried fiddling with routes such that:
    [root@ls1 ~]$ netstat -r
    Kernel IP routing table
    Destination Gateway Genmask Flags MSS Window irtt Iface
    ls1-2.lmb.inter * 255.255.255.255 UH 0 0 0 eth1
    169.254.0.0 * 255.255.0.0 U 0 0 0 eth1
    10.0.0.0 * 255.128.0.0 U 0 0 0 eth0
    default fw.lmb.internal 0.0.0.0 UG 0 0 0 eth0

    [root@ls1 ~]$ tcpdump -i eth0 host dev1
    tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
    listening on eth0, link-type EN10MB (Ethernet), capture size 96 bytes
    18:19:38.378486 arp who-has ls1-2.lmb.internal tell dev1.lmb.internal
    18:19:38.386426 arp reply ls1-2.lmb.internal is-at 00:e0:81:2b:aa:9a
    18:19:38.378591 IP dev1.lmb.internal > ls1-2.lmb.internal: icmp 64: echo request seq 0
    18:19:38.378604 IP ls1-2.lmb.internal > dev1.lmb.internal: icmp 64: echo reply seq 0
    18:19:39.379386 IP dev1.lmb.internal > ls1-2.lmb.internal: icmp 64: echo request seq 1
    18:19:39.379391 IP ls1-2.lmb.internal > dev1.lmb.internal: icmp 64: echo reply seq 1
    18:19:40.379251 IP dev1.lmb.internal > ls1-2.lmb.internal: icmp 64: echo request seq 2
    18:19:40.379256 IP ls1-2.lmb.internal > dev1.lmb.internal: icmp 64: echo reply seq 2
    18:19:41.379115 IP dev1.lmb.internal > ls1-2.lmb.internal: icmp 64: echo request seq 3
    18:19:41.379120 IP ls1-2.lmb.internal > dev1.lmb.internal: icmp 64: echo reply seq 3
    18:19:42.378979 IP dev1.lmb.internal > ls1-2.lmb.internal: icmp 64: echo request seq 4
    18:19:42.378983 IP ls1-2.lmb.internal > dev1.lmb.internal: icmp 64: echo reply seq 4
    18:19:43.378841 IP dev1.lmb.internal > ls1-2.lmb.internal: icmp 64: echo request seq 5
    18:19:43.378845 IP ls1-2.lmb.internal > dev1.lmb.internal: icmp 64: echo reply seq 5
    18:21:45.179131 arp who-has fw.lmb.internal tell dev1.lmb.internal
     
    15 packets captured
    19 packets received by filter
    0 packets dropped by kernel
    [root@ls1 ~]$

    [root@ls1 ~]$ tcpdump -i eth1 host dev1
    tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
    listening on eth1, link-type EN10MB (Ethernet), capture size 96 bytes
    18:19:38.378495 arp who-has ls1-2.lmb.internal tell dev1.lmb.internal
    18:19:38.385104 arp reply ls1-2.lmb.internal is-at 00:e0:81:2b:aa:9b
    18:21:45.179132 arp who-has fw.lmb.internal tell dev1.lmb.internal

    3 packets captured
    3 packets received by filter
    0 packets dropped by kernel
    [root@ls1 ~]$

    -- 
    fedora-list mailing list
    fedora-list@redhat.com
    To unsubscribe: http://www.redhat.com/mailman/listinfo/fedora-list
    

  • Next message: Tim Holmes: "Remote Syslog"

    Relevant Pages

    • weird results while ipsec + ipfv_nat (nat before vpn)
      ... we need to see some http/s resources behind the Cisco PIX IPSEC ... trying to ping IPSEC PEER from LAN ... c.c.c.1 reply packets are coming in and are decrypted but replies doesn't reach ... tcpdump: verbose output suppressed, use -v or -vv for full protocol decode ...
      (freebsd-net)
    • Re: 4.9-4.11 receive network stack lockup
      ... I have a console that I run tcpdump on and I see packets go out but none come back, where on the other machine I see the packets come an a response go back. ... to ping localhost I get the following: ... ping: sendto: No buffer space available ...
      (freebsd-stable)
    • Re: if_start() and sending packets problem
      ... My device driver is getting incoming packets fine, ... Feb 7 19:14:32 schizo kernel: DHOST ff ff ff ff ff ff ... PING 192.168.0.1: 56 data bytes ... Please note that tcpdump shows the arp who-has request right ...
      (freebsd-hackers)
    • Re: RELENG_6_3 ping and DUP packets
      ... RELENG_6_3 ping and DUP packets ... Please run "tcpdump -e icmp" on this box and repeat your testing. ...
      (freebsd-stable)
    • Re: RELENG_6_3 ping and DUP packets
      ... RELENG_6_3 ping and DUP packets ... Please run "tcpdump -e icmp" on this box and repeat your testing. ...
      (freebsd-stable)