0

Can anybody please tell me what stupid thing is it that I'm doing which makes it impossible for me to ping between hosts in a following HOST1-ROUTER-HOST2 config explained below:

I've got one PC - ROUTER with two ethernet controllers (which have been bonded into one bond0 interface as 192.168.1.2) and two other - HOST1 (192.168.1.1)/HOST2(192.168.1.2) connected to ROUTER via a direct cable link.

I've set them all up to be on the same 192.168.1.0/24 network and I can ping both HOST1 and HOST2 from the ROUTER PC, but I'm not able to ping between HOST1 and HOST2 directly.

What's the catch here? Do I still need to mess around with gateway if they "live" on the same network? Is this some sort of forwarding related issue? I've got a feeling it's a simple, dumb thing, related to the ROUTER not pushing the traffic between those two machines... I just can't crack it :-/ Heck!

2 Answers 2

0

It looks like the bond interface does not forward the data received at one port to another. That is not the way for a bond interface to be used.

The bond interface expects that both ports are connected to the same switch so that it can send and receive data on both Ports. This is used to increase throughput or redundance.

You need an ethernet switch. Connect both hosts and the router to the switch, and everything will work as you expect.

0

That's what I suspected. My initial thought was that bonding would act kinda like a bridge and will hop packets between two physical ports.

The connection I described above is a 10Gb DirectAttach based SFP+ link and my intention was to make this work without having to buy a separate 10Gbit switch - the're quite expensive and the setup above was just too simple to justify such a purchase.

Anyway, since there was no traffic being passed between these thwo ports, the simplest solution that seemed to me the best in this case was a bridge! :) I replaced bond0 with br0 consisting of eth2 and eth3 (corresponding to SFP+ ports 0/1) and voila! The ROUTER I described above acts sort of like a switch now, all the bytes can find their way between all three hosts and after enabling jumbo frames on each one of them I get nice and steady 9,97Gb/s in an iperf benchmark :)

That marks my issue solved. If anyone else wants to try such a solution, here's a little, quick and easy howto which describes creating a network bridge between two physical network interfaces: http://www.microhowto.info/howto/bridge_traffic_between_two_or_more_ethernet_interfaces_on_linux.html

You must log in to answer this question.

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