2

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

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

  1. 1.1.1.1:8888 -> 2.2.2.2:8888 (request)
  2. 2.2.2.3:8888 -> 1.1.1.1:8888 (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.

1
  • 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, 2011 at 20:59

1 Answer 1

2

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.

0

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .