Take the 2-minute tour ×

Say I have two hosts - Using fictitious IPs for this example, say host A has IP host B has two IPs - and

If host B is listening on port 8888, and sees a packet come in from, produces a response and sends it out on a different IP than the original connection was made to, does this suggest that host A ( is not going to see the response packet?

  1. -> (request)
  2. -> (response)

My understanding of sockets is that a socket consists of an IP and a port so if the server responds to a client on a brand new IP that the client didn't use to establish the connection, the client won't get the response.

share|improve this question
My guess is that it could be an issue, it will see the packet the question is does it realize its coming from the machine you sent the request to. I believe I had this probablem with a kerberos or openldap server. My suggestion is look on the documentation to see if you can tell the program to bind on 1 ip only and send response as that one ip only. –  PHGamer Mar 11 '11 at 20:59
add comment

1 Answer

up vote 2 down vote accepted

Host A should receive the response (it will be physically delivered to the machine, assuming routes are correctly configured), but host A may or may not process the response. Since UDP isn't connection oriented, it's up to the implementer to decide whether to only accept a response from the original destination, or to look for a packet coming from anywhere.

share|improve this answer
Well put. Thanks for the clarification! –  regulatre Mar 13 '11 at 5:33
add comment

Your Answer


