Windows Vista Receiving ICMP Destination Unreachable - Port Unreachable Packets RRS feed

  • Question

  • I am running into an issue receiving ICMP Destination Unreachable - Port Unreachable packets on a raw socket in Windows Vista - SP1. I'll try and give a bit of background.

    Previously we used a raw socket to send UDP packets where we would set IP_HDRINCL and as a result provide the source port among other things, sometimes we would receive ICMP PU packets, which we need to be aware of. We would receive these via a seperate RAW socket setup to receive all ICMP traffic.

    When we went to Vista we found that having the raw socket set up for the UDP packets would result in receiving every single UDP packet because the socket could not be bound to a specific port anymore. Other than the problem of receiving all UDP traffic to the interface, things otherwise worked as intended. IE we would still see the ICMP PU packets on the ICMP socket.

    To fix the issue of receiving all UDP traffic we went to a normal UDP socket and bound to a specific port. Now when we receiving an ICMP PU packet (we can see it in wireshark) it never shows up on the ICMP socket. It's as if the ICMP PU is somehow "consumed" - something related to the system having a UDP socket bound to said port.

    If anyone has any ideas on this that would be highly appreciated.

    • Moved by nobugz Saturday, November 15, 2008 11:12 PM otfcpp [loc] (Moved from Visual C++ Language to Off-Topic Posts (Do Not Post Here))
    Friday, November 14, 2008 9:48 PM

All replies