Fel*_*arz 2 ssh ipv6 known-hosts ssh-keys systemd
当我使用 IPv6 连接到 CentOS 7 主机时<IPv6 host addr>%2
,known_hosts
即使该主机的主机密钥(带有主机的 IPv6 地址)已经存在于known_hosts
.
代表什么%2
?我使用的是 CentOS 7 中未经修改的 OpenSSH,版本 6.6.1p1-25,版本 25.el7_2。
更新:评论提到名称解析是一个可能的问题。事实上,我在客户端机器上使用 systemd-resolved。当我resolved
从/etc/nsswitch.conf
(hosts
选项)中删除时,问题不再发生。这是与systemd-resolved-219-19.el7_2.7.x86_64
)。
更新(2017 年 2 月):我刚刚注意到systemd 已解决的错误 4465,所以我注意到的行为是/只是一个错误,将在更高版本的 systemd 中修复。
不同类别的 IPv6 地址具有不同的范围。您会遇到范围主机(例如::1
)、链接(例如fe80::200:5eff:fe00:5342
)、全局(例如2001:db8::1
)的地址。
当在具有多个链接的主机上使用具有作用域链接的地址时,该%
符号用于指示地址用于哪个链接。
所有以 开头的地址fe80:
都在链路本地范围内,可能需要接口规范。接口可以通过其名称或编号来指定。例如,在我正在输入的计算机上,这eth0
是 interface number 2
,因此fe80::200:5eff:fe00:5342%2
和fe80::200:5eff:fe00:5342%eth0
将是等效的。任何一种表示法都将指示fe80::200:5eff:fe00:5342
我的eth0
接口连接到的网络上具有链接本地地址的主机。