I have a socket bound to a port 1900 to listen to multicast packets. This part works well. I successfully receive multicast packets.
Also I'm using the same socket to send multicast packets to the same port 1900. On response I expect to receive an unicast packet. According to Wireshark the unicast packet is received by my host, but it doesn't appear in the socket.
If I remove binding to port 1900 then the unicast packet appears in the socket, but in this case multicast packets aren't received by the socket anymore.
I checked, joining a multicast group has nothing with it. Even a simple test app which binds to port 1900 and sends multicast to port 1900 can't receive unicast response.
Is the main problem using the same source and target ports? Or does sending multicast packets from a specific port prevent the socket from getting unicast packets to the same port?