我使用以太网电缆将两台计算机 A 和 B 进行网卡对网卡连接。它们自行分配了 IP 地址 — 至少我可以看到 A 已这样做,因此我推断 B 也一定这样做了。计算机 A 是运行 Windows 10 的笔记本电脑,但我没有可用于 B 的键盘和鼠标。如何从 A 确定 B 的 IP 地址?
在 A 上,我看到的是:
> ipconfig
Ethernet adapter Ethernet
Autoconfiguration IPv4 Address. . : 169.254.219.59
Subnet Mask . . . . . . . . : 255.255.0.0
我尝试过的(基于https://serverfault.com/a/30742):
> nmap -sn 169.254.219.0/24
...它只是说“主机已启动”,并没有报告网络上有其他人。我不敢说我理解它在nmap
做什么(例如,我不知道数字 24 有什么特别之处),但我知道同样的命令可以192.168.1.0/24
成功找到 A 所连接的无线网络上的设备。
答案1
例如,我不知道 24 这个数字有什么特别之处
这是“255.255.255.0”网络掩码的简写形式。(也称为“CIDR 语法”,因为它的起源,或“前缀长度”,因为它表示网络由前 24 位指定。如果将 255.255.255.0 从十进制转换为二进制,您将看到它以正好 24 个“1”位开头。)
然而,你的实际的网络掩码不是 255.255.255.0 – 而是 255.255.0.0,如 ifconfig 输出所示。这是 /16。整个“自分配”范围实际上是 169.254.0.0/16。
作为自我分配过程的一部分,主机将发出一些 ARP 探测(以确保该地址未被使用)。如果您在 Wireshark 或 tcpdump 已经在以太网接口上运行捕获时连接计算机,您应该会看到它们都以这种方式显示其地址。