geekman/mdns-repeater

packets are rebroadcasted to the same vlan interface

Opened this issue · 1 comments

I downloaded and compiled on linux the current
version of mdns-repeater (february 14 2022).

I will mention that the current setup is working:
the apple devices can see each other between the
two networks, but I observed with tcpdump that
the anomaly described here appears.

I ran the command "mdns-repeater eth0 eth0.600"

This is the system setup:

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 8c:16:45:72:cd:3f brd ff:ff:ff:ff:ff:ff
inet 10.81.128.10/24 brd 10.81.128.255 scope global eth0
valid_lft forever preferred_lft forever
3: eth0.600@eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
link/ether 8c:16:45:72:cd:3f brd ff:ff:ff:ff:ff:ff
inet 10.81.130.10/32 scope global eth0.600
valid_lft forever preferred_lft forever

Since the system has only one network card, I
configured a vlan to act as a bridge.
IP 10.81.128.10 is configured on the eth0 card
(packets are not tagged), while 10.81.130.10 is
configured on vlan 600 (packets are tagged).
The switch to which the system is connected is
configured accordingly.

As you can see below, tcpdump reports the packet
with source 10.81.130.69 (vlan600) being transmitted
with source 10.81.128.10 on the eth0 network card,
and then it is retransmitted on vlan600 with source
10.81.130.10

This happens only for packets that originate from
the tagged vlan600. Packets that source from the
eth0 card are not duplicated back to the eth0 card.

Is this the expected behavior?

Marco

15:09:22.586129 3c:22:fb:07:63:de > 01:00:5e:00:00:fb, ethertype 802.1Q (0x8100), length 426: vlan 600, p 0, ethertype IPv4 (0x0800), (tos 0x0, ttl 255, id 36006, offset 0, flags [none], proto UDP (17), length 408)
10.81.130.69.5353 > 224.0.0.251.5353: 0*- [0q] 2/0/6 Covi Rosc._device-info._tcp.local. TXT "model=MacBookPro15,4" "ecolor=157,157,160", _companion-link._tcp.local. PTR Covi Rosc._companion-link._tcp.local. (380)

15:09:22.586212 8c:16:45:72:cd:3f > 01:00:5e:00:00:fb, ethertype IPv4 (0x0800), length 422: (tos 0x0, ttl 255, id 22751, offset 0, flags [DF], proto UDP (17), length 408)
10.81.128.10.5353 > 224.0.0.251.5353: 0*- [0q] 2/0/6 Covi Rosc._device-info._tcp.local. TXT "model=MacBookPro15,4" "ecolor=157,157,160", _companion-link._tcp.local. PTR Covi Rosc._companion-link._tcp.local. (380)

15:09:22.586223 8c:16:45:72:cd:3f > 01:00:5e:00:00:fb, ethertype 802.1Q (0x8100), length 426: vlan 600, p 0, ethertype IPv4 (0x0800), (tos 0x0, ttl 255, id 62146, offset 0, flags [DF], proto UDP (17), length 408)
10.81.130.10.5353 > 224.0.0.251.5353: 0*- [0q] 2/0/6 Covi Rosc._device-info._tcp.local. TXT "model=MacBookPro15,4" "ecolor=157,157,160", _companion-link._tcp.local. PTR Covi Rosc._companion-link._tcp.local. (380)

PS: tcpdump capture is taken on the eth0

This is unexpected behavior. I recently investigated this and I was unable to replicate the problem.

If it is still an issue, I'd recommend running with -f to verify if the packets are indeed being repeated twice by mdns-repeater.