【问题标题】:what ip6 address is retrieved by server when a client connection is accepted接受客户端连接时服务器检索到的 ip6 地址
【发布时间】:2018-01-12 17:46:11
【问题描述】:

我正在更新代码以接受客户端 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 链接本地 IPv6 地址 。 . . . . : vf80::432b:f654:6f0:572e%11

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

它会在服务器套接字上为传入的客户端套接字连接获得链接本地 ipv6 地址吗?

我之所以问这个是因为如果客户端套接字给出链接本地ipv6地址,我需要解析正确的ip6地址。

感谢收看。

【问题讨论】:

  • 通常你只会在开发过程中看到一个本地链接地址,因为它们只在同一个局域网上可见。如果你不只是看到localhost,即::1

标签: ip ipv6 ipv4


【解决方案1】:

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

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

如果客户端使用链接本地地址进行连接,您可以获得链接本地地址,但来自更广泛互联网的连接不能使用链接本地地址,当连接来自时,您只会获得链接本地地址本地网络和这些连接使用链接本地地址。

【讨论】:

    猜你喜欢
    • 2021-11-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-08
    • 2010-12-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多