We have a Python and also a NodeJS codes that send mDNS responses in a network. These mDNS responses are sent to specific IP addresses (NOT to the MDNS IP address - 224.0.0.251).
For eg. if the IP address of my phone is 192.168.10.125, the server will send a mDNS response to this IP address on port 5353. The response contains the information about a specific device such as a T.V.
If my phone is Android, then the packet is recognized and I can see the TV when I open YouTube app and click on Chromecast icon.
But the problem is with iOS devices (iPhone and iPad), since I can't see the TV when try to Chromecast from YouTube.
On the other hand, if the server sends the packet to MDNS IP address (which is 224.0.0.251), then everything is working fine and I can see the TV while I try to Chromecast in YouTube in both Android and iPhone.
So, clearly, Multicast is working in iOS while Unicast is not.
Can someone please explain what is the issue here with Unicast in iOS devices and how to handle the same?
Looking forward for some help here.
Thanking you in advance.
Unicast seems to be an issue in iOS devices. So need help in understanding how its processed in iOS devices.
It is possible to obtain diagnostic information on the iPhone, but it requires a Apple Developer Account in order to complete the steps.
I have found this approach is helpful to answer why iOS is behaving in a particular way.
Often the logs, from above, and be cross-correlated to Open Source code. In our case Apple has Open Sourced mDNSResponder.