On the same local network, we have two identical computers (a) and (b) which have identical software installed which send identical HTTP headers and requests to the same server, except for the url which reveals which machine the request comes from:
a$ curl example.com/a
b$ curl example.com/b
Then we let the two machines use a different software to again send two identical requests, but this time we use completely identical URLs, so the requests are indistinguishable.
a$ wget example.com
b$ wget example.com
Is there any way the receiving Web server can tell which of the two wget requests came from machine a and which came from machine b?
I assume the answer lies in explaining how NAT works and if there is any way someone on the outside can know which of n machines inside a local network they are talking to, provided the requests themselves are identical and don't reveal anything specific about the requesting machine.