@天蓝,钱到位就有
@呆哥,我第一眼以为你在骂人,为啥你有单字母域名啊 出不出
小米MIX2s(白)
u.sb
顺便一提,
fe80::
本地链路地址是可以ping的,不过需要加%网卡序号或名称
。对于Windows,假设局域网使用网卡1:
ping fe80::xxxx%1
对于Linux,假设局域网使用网卡eth0:
ping fe80::xxxx%eth0
@天蓝,你自己用wireshark抓包看看嘛,也许并没有可用信息泄露。
@老虎会游泳
小米MIX2s(白)
@老虎会游泳,这种解析会有问题吗
其实还有另一个方法,就是直接发起抓包,这样就能监听到所有局域网组播、广播流量,从而发现其他设备的IPv6地址。
当然,如果其他设备完全保持静默,不发起广播、组播通信,则感知不到它。
如此的话,操作系统应该已经知道了一些 MAC IPV6之间的映射,为什么不加入到邻居表中,而是要与对方通信之后再加入邻居表呢?
我的ubuntu接入IPv6网络后,其邻居表中就只有一条到网关的信息
小米MIX2s(白)
@天蓝,你也可以考虑使用mac地址直接算出对方的IPv6地址。不过不一定管用,如果对方开了IPv6地址隐私扩展,或者局域网不使用无状态地址自动配置,可能就不管用。
算法叫做EUI-64,从mac地址直接生成IPv6地址的后64位,然后加上路由器给的前64位(所有设备都一样)就是完整的IPv6地址了。
但是这样有隐私问题,网站可以借此获取你的mac地址对你进行跟踪。所以后来设备不会主动用EUI-64生成的地址进行互联网通信了,而是改用随机生成的另一个地址进行互联网通信。不过EUI-64生成的地址通常还是有效的,所以如果你去连,应该能连上。
在这种情况下,
ip -6 addr
会看到设备有两个公网IPv6地址,一个是EUI-64生成的,一个是随机生成的。
@天蓝,其实还有另一个方法,就是直接发起抓包,这样就能监听到所有局域网组播、广播流量,从而发现其他设备的IPv6地址。
当然,如果其他设备完全保持静默,不发起广播、组播通信,则感知不到它。
@天蓝,LLMNR用于主机名解析可能比MDNS更可靠,因为Linux支持是通过systemd实现的,所以基本上都能支持。Windows当然也支持。不过这应该也只有主机名查询,得知道对方主机名才行。
@天蓝,有三种用于发现本地设备的服务:
NBNS、MDNS、LLMNR
后两种都可以获取到IPv6地址。
不过设备会不会回应这些查询请求取决于设备功能和配置。
@天蓝,向
udp://[FF02::FB]:5353
(组播)发送对主机名.lan
的AAAA记录查询请求,应该就能收到对方的IPv6地址。
@天蓝,如果知道对方的主机名(计算机名),可以使用mdns来解析出对方的IPv6地址。
@天蓝,Linux不支持反向邻居发现。所以如果未与对方进行通信,就无法发现对方IPv6地址。
https://superuser.com/questions/911494/ipv6-inverse-neighbor-discovery-doesnt-work
@天蓝,邻居发现协议确实有一个扩展,用于从mac地址找到IPv6地址。不过我不知道有没有实用工具实现了该功能。
@天蓝,IPv6使用邻居发现协议,在线的机器都会出现在邻居表中:
ip -6 neigh
@老虎会游泳,好的
@我没K,词库你可以自己找嘛
@老虎会游泳,可以是可以,词汇量多一点![]()