Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

No response from clients #32

Open
RouNNdeL opened this issue Oct 27, 2021 · 3 comments
Open

No response from clients #32

RouNNdeL opened this issue Oct 27, 2021 · 3 comments

Comments

@RouNNdeL
Copy link

RouNNdeL commented Oct 27, 2021

I've just set up this reflector and configured it to reflect my Google Home Mini located in VLAN200 to VLANS 100, 300 and 400. The query packets from these VLANs are successfully reflected to VLAN200, however there's no response from Google Home Mini (I'm using MikroTik's sniffer to check the VLAN200 packets). When a device sends an mDNS query on the same VLAN, the Home Mini responds correctly. I've disabled all firewall rules as to not interfere, but I did not help.

I can provide a pcap file if that would help resolve my issue, thanks in advance.

EDIT: Seems like the issue is that this reflector does not replace the source IP of the packets when reflecting them and the devices do not respond since it's not the same network

@Gandem
Copy link
Owner

Gandem commented Oct 27, 2021

@RouNNdeL Can you please share a pcap file containing the DNS query packet that your querier is sending? I'm wondering if the querier is sending a QU question, and if the destination IP is correctly set to the mDNS IPv4 link-local multicast address.

This could be due to a strict implementation of https://datatracker.ietf.org/doc/html/rfc6762#section-11 on the mDNS responder of the Google Home Mini (I unfortunately don't have such a device handy to validate my assumptions).

@RouNNdeL
Copy link
Author

I've sent an email to the address listed on your GitHub profile containing the pcaps and further details.

@jorisjean
Copy link

jorisjean commented Dec 8, 2021

I've the same issue here with Chromecastv3. I captured traffic on the Bonjour Reflector server, the AP and a laptop in the Chromecast VLAN and we see no response from the Chromecast to any query not coming from the same subnet.
The issue is happening with both QU and QM queries.
I can provide captures if needed.
I'd like to modify a local copy of the packet.go function to replace the source IP with a static one as a test to validate this.
I have you tried that already ? Any hint on how I could achieve that?

EDIT: So I managed to change the code so the MDNS query packets source IP is changed to one in the Chromecast subnet.
I get instant response from the Chromecast when doing so. I still have some troubles receiving the response back in the User subnet. But this proves that the Chromecast only replies to queries from IPs inside its subnet.

Update: It does work I can detect the chromecat now. I'll make a PR for with the changes I made.

Update: The detection works well with the chrome browser but the Android phone receives the mDNS response in multicast but does not detect the device.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants