当接受客户端连接时,服务器检索什么 ip6 地址

what ip6 address is retrieved by server when a client connection is accepted

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

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

目前我检索连接的客户端套接字的IP地址如下:

Socket socket = m_serverSocket.accept(); String 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 Link-本地 IPv6 地址。 . . . . : vf80::432b:f654:6f0:572e%11

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

它是否会在服务器套接字上为传入的客户端套接字连接获得 link-local ipv6 地址?

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

感谢观看。

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

在这种情况下,客户端使用的是临时 IPv6 地址。

如果客户端进行连接时使用了 link 本地地址,您可以获得一个 link 本地地址,但是来自更广泛的互联网的连接不能使用 link 本地地址,您只会得到当连接来自本地网络并且这些连接使用 link-本地地址时,link-本地地址。