Duplicate Echo Replies with Channel Bonding
Vincent Aniello
vincent.aniello at pipelinefinancial.com
Mon Jan 30 14:47:03 UTC 2006
An "ifconfig -a" shows the failover interface with the NOARP parameter
(see below). I don't think the issue is related to the interface
responding to the ARP request, though. Since eth0 would respond to the
ARP request from Router B with the same MAC address as eth1 (and bond0).
The problem seems to be that even though eth1 is the failover interface
it still is receiving and processing traffic.
--Vincent
bond0 Link encap:Ethernet HWaddr 00:11:43:DC:8C:91
inet addr:192.168.1.20 Bcast:192.168.1.255
Mask:255.255.255.0
UP BROADCAST RUNNING MASTER MULTICAST MTU:1500 Metric:1
RX packets:2465384 errors:0 dropped:0 overruns:0 frame:0
TX packets:2096118 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:611740573 (583.4 Mb) TX bytes:500718216 (477.5 Mb)
eth0 Link encap:Ethernet HWaddr 00:11:43:DC:8C:91
inet addr:192.168.1.20 Bcast:192.168.1.255
Mask:255.255.255.0
UP BROADCAST RUNNING SLAVE MULTICAST MTU:1500 Metric:1
RX packets:1920547 errors:0 dropped:0 overruns:0 frame:0
TX packets:2083770 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:502022742 (478.7 Mb) TX bytes:497797723 (474.7 Mb)
Base address:0xecc0 Memory:dfae0000-dfb00000
eth1 Link encap:Ethernet HWaddr 00:11:43:DC:8C:91
inet addr:192.168.1.20 Bcast:192.168.1.255
Mask:255.255.255.0
UP BROADCAST RUNNING NOARP SLAVE MULTICAST MTU:1500 Metric:1
RX packets:544837 errors:0 dropped:0 overruns:0 frame:0
TX packets:12348 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:109717831 (104.6 Mb) TX bytes:2920493 (2.7 Mb)
Base address:0xdcc0 Memory:df8e0000-df900000
-----Original Message-----
From: redhat-list-bounces at redhat.com
[mailto:redhat-list-bounces at redhat.com] On Behalf Of Tom Callahan
Sent: Monday, January 30, 2006 9:25 AM
To: General Red Hat Linux discussion list
Subject: Re: Duplicate Echo Replies with Channel Bonding
If you look at "ifconfig" for the non-primary(active) interface, you
should see it say "NOARP"
That means it won't respond to any arp requests....
Thanks,
Tom Callahan
TESSCO Technologies
Desk: (410)-229-1361
Cell: (443)-506-6216
Email: callahant at tessco.com
A real engineer only resorts to documentation when the keyboard dents on
the forehead get too noticeable.
Vincent Aniello wrote:
>I am running bonding with connections to two switches in an
>active/backup configuration (mode=1) with eth0 the active interface
and
>eth1 the backup. In this mode both interfaces receive packets, but
only
>the active interface transmits packets. I am running RedHat Enterprise
>Linux 3.0 (kernel version 2.4.21-27.0.2.Elsmp).
>
>When both eth0 and eth1 are up and I ping from Host C to Host A I get
>duplicate ICMP echo replies. I believe this is also causing duplicate
>traffic with other types of traffic as well.
>
>I believe I know why this is happening and I would like to see if
anyone
>else has any input on this and hopefully a solution that does not
>result in losing the redundancy bonding provides.
>
>My network topology is as follows:
>
> | | | |
> | Firewall | | Firewall |
> +-----+----+ +-----+----+
> | |
> | |
> +----------+ +-----+----+ +-----+----+
>+----------+
> | | T1 | Router A | Ethernet | Router B | T1 |
>|
> | Router D +---------+ |-----------| +----------+
>Router C |
> | | | Active | | Standby | |
>|
> | | | Gateway | | Gateway | |
>|
> +----+-----+ +-----+----+ +-----+----+
>+-----+----+
> | 192.168.1.3/24 192.168.1.4/24
>|
> | | <-HSRP 192.168.1.1-> |
>|
> +----+-----+ +-----+----+ +-----+----+
>+-----+----+
> | | | | | | |
>|
> | Switch D | | Switch A +-----------+ Switch B | |
>Switch C |
> | | | +-----------+ | |
>|
> | | | | | | |
>|
> +----+-----+ +-----+----+ +-----+----+
>+-----+----+
> |eth0 | |
>|eth0
> +--------+ | +--------+ |
>+--------+
> | Host D | +------+ Host A +------+ |
>Host C |
> +--------+ eth0 +--------+ eth1
>+--------+
> bond0
> 192.168.1.20/24
>
>
>According to my theory the path the echo request packets are taking is
>as follows:
>
> Host c -> Switch C -> Router C -> Router B -> Switch B
>-+-------------> Host A eth1
> |
> +-> Switch A
>-> Host A eth0
>
>The destination network 192.168.120.0/24 exists on both Router A and
>Router B and HSRP is used for failover between them, with Router A
>being the primary gateway.
>
>The destination network is local to Router B and When the echo request
>gets to Router B this router has the MAC address for 192.168.1.20 in
its
>ARP cache, and if it doesn't it requests it.
>
>Router B sends the Ethernet frame to the MAC address for 192.168.1.20.
>The interfaces eth0, eth1, and bond0 have the same MAC address on the
>server. Switch B does not have the MAC address in its MAC address
table
>and floods the ports. In flooding the ports the server receives the
>packet on eth1. The packet is also sent through the connection
between
>Switch B and Switch A and received on eth0 of the server.
>
>Since the packet is received twice by the server (on eth0 & eth1) two
>echo replies are sent along the following path:
>
> Host A eth0 -> Switch A -> Router A -> Router B -> Router C ->
Switch
>C -> Host C
>
>The reply packet is sent to the primary gateway IP address on Router A.
>Switch A learns the MAC address of the server, but Switch B does not.
>
>The switches only learn a MAC address when traffic is received from a
>host on the switch port. The interface eth0 is the active bonding
>interface all outbound traffic is sent from this interface and
therefore
>the MAC address is only learned on the switch port that eth0 is
>connected to. Switch B never learns the MAC address for the server
and
>therefore the duplicate packets never stop when pining Host A from Host
>C.
>
>If I ping Host A from Host D I do not receive duplicate packets. The
>echo requests are only received once (through eth0) on the server.
The
>path the packets travel in this setup is:
>
> Echo Request: Host D -> Switch D -> Router A -> Switch A -> Host A
>eth1
>
> Echo Reply: Host A eth0 -> Switch A -> Router A -> Router D -> Switch
>D -> Host D
>
>If I shut down one of the bonded (eth0 or eth1) interfaces I stop
>receiving duplicate packets.
>
>Has anyone else experienced this problem and know how to fix it?
>
>Thanks.
>
>--Vincent
>
>
>
--
redhat-list mailing list
unsubscribe mailto:redhat-list-request at redhat.com?subject=unsubscribe
https://www.redhat.com/mailman/listinfo/redhat-list
More information about the redhat-list
mailing list