我想知道在socket (java)中如何知道客户端在服务器端的IP地址。假设有一个服务器"S“和两个客户端"A”和"B“。客户端A向我(服务器)发送一些信息,客户端B向我(服务器)发送一些其他信息。我必须将来自A和B的信息存储在不同表中的数据库中。如何区分客户端A和B请求?
发布于 2012-01-22 14:33:30
每个套接字都有一个getInetAddress()方法,该方法返回与其连接的客户端的IP地址。
发布于 2013-12-25 07:25:56
另一个答案解决了你的核心问题。我只想补充一点,在某些情况下,您得到的IP地址并不能唯一标识真正的端点,即用户的PC。
您无法从服务器端检测到这两种情况。你只需要知道它们,而不是依赖(假设)客户端的IP地址是确定的。
所以..。
如何区分客户端A和B请求?
在上述任何一种情况下,您不能仅通过IP地址来区分A和B。如果在A和B的连接都处于活动状态时查看这两个连接,您会发现这两个连接具有不同的远程端口号。但这些端口号仅在连接期间有效。但是,下次A或B连接时,A可能正在使用B正在使用的远程端口,反之亦然。
https://stackoverflow.com/questions/8959466
复制相似问题