Since I cannot post picture file. I will just make a simple
diagram to explain.
___(1)_____(2)_____(3)____
A B C < ----- > D
Object A , B , C , D are all network devices that operate at the
(Data link + Physical Layer) and each has a unique MAC
address.
Lets say A belongs to a user, D belongs to a server.
User wants to communicate with the server, the communication path
will be from A to B (label as 1), B to C (label 2), then C to D
(label 3).
For communication 1, only the MAC addresses of A and B will be
used.
For communication 2, only the MAC addresses of B and C will be
used.
For communication 3, only the MAC addresses of C and D will be
used.
So by the time the object D receive the transmission, it will only
need to know its own MAC address and the MAC address of C. It does
not know the MAC address of A and do not need to know the MAC
address of A at all.
Unless the user has a program that purposely send its own MAC
address information in the application layer to the remote server,
it is very unlikely the server can detect/record remote MAC
addresses.