Add to that that IP addresses are, generally, dynamic. And, even if your user is behind a modem/router with a fixed IP address what you could "discover" is the IP assigned to that device and so the "name" of his/her provider.
When using Jserver you have "req.RemoteAddress" in the Handle sub to catch the source IP of the request but, as said, it changes in time so you can't link it to a specific user.
People who can access the internet from anywhere in the world. which ip is belong to the person? even if you can get the IP through the client accessing your server. mostly the ip is a NAT ip.