当接受客户端连接时,服务器将检索哪个ip6地址

当接受客户端连接时,服务器将检索哪个ip6地址,ip,ipv6,ipv4,Ip,Ipv6,Ipv4,我正在更新代码以接受客户端ip6地址 我的代码通常会打开一个服务器套接字并侦听传入的客户端连接,一旦客户端连接,就会检索ip地址并通过不同的端口连接回客户端(对于我们不同的工作流) 目前,我检索连接的客户端套接字的ip地址,如下所示: Socket-Socket=m_serverSocket.accept(); 字符串ipAddress=socket.getInetAddress().getHostAddress() 如果我使用与上面相同的代码来接受ip6客户端套接字连接,那么我应该更改代码以正

我正在更新代码以接受客户端ip6地址

我的代码通常会打开一个服务器套接字并侦听传入的客户端连接,一旦客户端连接,就会检索ip地址并通过不同的端口连接回客户端(对于我们不同的工作流)

目前,我检索连接的客户端套接字的ip地址,如下所示:

Socket-Socket=m_serverSocket.accept();
字符串ipAddress=socket.getInetAddress().getHostAddress()

如果我使用与上面相同的代码来接受ip6客户端套接字连接,那么我应该更改代码以正确检索ip6地址

我之所以这样问,是因为ip6地址有多个,如下所示: IPv6地址………:ab34:342:34d:234:234b:df44:5c0:401d 临时IPv6地址……:3450:2e2:87c:984:edad:3452:7635:f654 链接本地IPv6地址…:vf80::432b:f654:6f0:572e%11

当我从上面的系统建立客户端连接时,我通过服务器套接字获取临时ipv6地址作为ip地址

它是否会在服务器套接字上为传入的客户端套接字连接获取本地ipv6地址

我问这个问题的原因是,如果客户端套接字提供链接本地ipv6地址,我需要解析正确的ip6地址


谢谢查看。

您将获得创建连接的客户端使用的地址

在本例中,客户端使用的是临时IPv6地址


如果进行连接的客户端使用了链接本地地址,则可以获取链接本地地址,但来自更广泛internet的连接无法使用链接本地地址,只有当连接来自本地网络并且这些连接使用链接本地地址时,您才能获得链接本地地址。

通常,在开发过程中,您只能看到链接本地地址,因为这些地址仅在同一LAN上可见。如果您不只是看到
localhost
,即
::1