我直接用本地链路连接了两台Linux PC。我现在想要知道例如由本地链路连接分配的 ipv6 地址。我尝试过网络搜索“发现”和“使可发现”等,并发现了许多质量保证,https://askubuntu.com/questions/947639/how-to-find-the-ip-address-for-a-device-on-a-network,如何使用主机名从 LAN 访问计算机,https://serverfault.com/questions/1036362/how-to-nicely-make-a-neighbors-discovery-solicitation-on-linux,如何让我的 Linux 机器动态广播其 IP 地址?,https://askubuntu.com/questions/460371/trouble-using-ssh-and-avahi。
解决方案要么建议使用类似的东西nmap
,正如我所理解的,通过运行nmap -v -sn 192.168.0.0/16 10.0.0.0/8
尝试从一定范围内联系网络上的每个IP(运行很长并且ipv6的范围很大),安装DNS服务器,当ip已知时由hosthame覆盖发现最后建议avahi
。
我只需要 ip,不需要主机名,我不喜欢安装 DHCP 和 DNS 服务器。
我尝试过 avahi,我可以通过 GUI 查看服务的 ip 和主机名avahi-discover
,但avahi-browse
只有服务名称,没有 ip。如何在终端中获取 IP 地址以用于脚本编写?
除了 avahi 之外,我的猜测是,为了让本地连接的两台 PC 不为自己分配相同的 IP 地址,它们交换了地址以进行检查。我在这儿吗?也许在这种情况下,可以在建立本地链路连接时获取 IP 地址,不是吗?