是否可以检查给定的 IPv4 和 IPv6 是否属于同一个 NIC?

是否可以检查给定的 IPv4 和 IPv6 是否属于同一个 NIC?

给定一台机器的 IPv4 和 IPv6 地址,并且只能访问它提供的公共服务,是否可以检查它们是否分配给了同一个网络接口控制器?假设该机器是一台使用 Let's Encrypt SSL 证书进行 HTTPS 的 LAMP 服务器,运行着 SSH 和邮件服务器。假设 Apache 使用不同的 SSL 证书为不同的域提供不同的服务。

我知道这个答案但是,我希望答案能够考虑到我列出的服务(以及可能的其他标准服务)所提供的附加信息。

答案1

如果服务同时在 IPv4 和 IPv6 上进行侦听,并且提供使用相同密钥/证书对服务器进行身份验证的方法,则这两个 IP 地址将高度可靠地表明这两个 IP 地址指向具有相同数据的服务器。不一定是相同的 NIC 或服务器,尽管当它提供的服务规模较小时很可能如此。

SSH 是验证服务器的服务之一,默认情况下它使用相同的密钥进行服务器验证:

# ssh <ipv6 address>
The authenticity of host '<ipv6 address> (<ipv6 address>)' can't be established.
ECDSA key fingerprint is SHA256:SAMESTUFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF.
Are you sure you want to continue connecting (yes/no)? ^C
# ssh <ipv4 address>
The authenticity of host '<ipv4 address> (<ipv4 address>)' can't be established.
ECDSA key fingerprint is SHA256:SAMESTUFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF.
Are you sure you want to continue connecting (yes/no)? ^C

相关内容