6

I ran into the oddest thing when trying to debug a networking issue with OpenStack. I was doing a ping test between virtual machines. The ICMP request packets only made it to the destination host if I did a "tcpdump" on the bridge interface on the node running nova-network, which forwards the packets. If I stopped doing a tcpdump on that interface, I no longer saw the requests reach the host.

In general, how/why would doing a tcpdump on a Linux bridge interface affect whether packets get forwarded?

030
  • 5,731
  • 12
  • 61
  • 107
Lorin Hochstein
  • 4,868
  • 15
  • 54
  • 72

2 Answers2

7

In general, how/why would doing a tcpdump on a Linux bridge interface affect whether packets get forwarded?

Does the bridging software expect that the interface is in promiscuous mode, in order to allow it to receive unicast packets sent to some other machine? If so, then perhaps it's buggy, so that it's either not turning promiscuous mode on or is not doing so successfully, and tcpdump, which by default turns promiscuous mode on, is, as a result, working around the bug.

  • 1
    That did it, doing "ip link set dev br150 promisc on" had the same effect – Lorin Hochstein Jun 16 '13 at 16:32
  • I was banging my head out trying to figure why when I watch the interface everything works and why when I am not it fails.... I was convinced of the existence of server gnomes were at play.. – LUser May 16 '18 at 11:37
0

Check that forwarding is properly configured on your system.

In Linux, this usually involves setting the sysctl option net.ipv4.ip_forward or net.ipv4.conf.<interface>.forwarding.

Falcon Momot
  • 24,975
  • 13
  • 61
  • 92
mdpc
  • 11,698
  • 28
  • 51
  • 65