尝试理解 ping

尝试理解 ping

我正在编写一个 Reachability 类,用于测试 IP 地址是否有效且可用。我编写了一个单元测试来测试我的类是否正常工作,然后就发生了这种情况。我用 IP 地址 192.168.1.255 进行了测试,我认为该地址在我的网络中无法访问,但我得到的结果是 IsReachable = true。嗯...这怎么可能呢?

好的,我有一个基准。我可以使用 Windows 自带的“ping”应用程序。这是该测试的结果

# ping 192.168.1.255

Pinging 192.168.1.255 with 32 bytes of data:
Reply from 192.168.1.200: bytes=32 time<1ms TTL=64
Reply from 192.168.1.200: bytes=32 time<1ms TTL=64
Reply from 192.168.1.200: bytes=32 time<1ms TTL=64
Reply from 192.168.1.200: bytes=32 time=1ms TTL=64

Ping statistics for 192.168.1.255:
    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
    Minimum = 0ms, Maximum = 1ms, Average = 0ms

变得更加奇怪

# ping 192.168.1.253

Pinging 192.168.1.253 with 32 bytes of data:
Reply from 192.168.1.27: Destination host unreachable.
Reply from 192.168.1.25: Destination host unreachable.
Reply from 137.224.244.1: Destination net unreachable.
Reply from 137.224.244.1: Destination net unreachable.

Ping statistics for 192.168.1.253:
    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),

这是怎么回事?有人能向我解释一下这个结果意味着什么吗?

编辑添加 IPCONFIG

ipconfig /all

Windows IP Configuration

   Host Name . . . . . . . . . . . . : DESKTOP-CB16LLI
   Primary Dns Suffix  . . . . . . . :
   Node Type . . . . . . . . . . . . : Hybrid
   IP Routing Enabled. . . . . . . . : No
   WINS Proxy Enabled. . . . . . . . : No
   DNS Suffix Search List. . . . . . : wurnet.nl
                                       home

Ethernet adapter Ethernet 3:

   Connection-specific DNS Suffix  . : wurnet.nl
   Description . . . . . . . . . . . : NCP Secure Client Virtual NDIS6 Adapter
   Physical Address. . . . . . . . . : 02-00-AD-4F-70-18
   DHCP Enabled. . . . . . . . . . . : Yes
   Autoconfiguration Enabled . . . . : Yes
   IPv4 Address. . . . . . . . . . . : 137.224.245.97(Preferred)
   Subnet Mask . . . . . . . . . . . : 255.255.255.0
   Lease Obtained. . . . . . . . . . : vrijdag 30 maart 2018 08:20:26
   Lease Expires . . . . . . . . . . : donderdag 17 mei 2018 21:25:51
   Default Gateway . . . . . . . . . :
   DHCP Server . . . . . . . . . . . : 137.224.245.98
   DNS Servers . . . . . . . . . . . : 10.90.3.31
                                       10.91.3.31
   NetBIOS over Tcpip. . . . . . . . : Enabled

Ethernet adapter Ethernet 1:

   Connection-specific DNS Suffix  . : home
   Description . . . . . . . . . . . : Surface Ethernet Adapter
   Physical Address. . . . . . . . . : C4-9D-ED-E8-5D-1E
   DHCP Enabled. . . . . . . . . . . : Yes
   Autoconfiguration Enabled . . . . : Yes
   IPv4 Address. . . . . . . . . . . : 192.168.1.27(Preferred)
   Subnet Mask . . . . . . . . . . . : 255.255.255.0
   Lease Obtained. . . . . . . . . . : vrijdag 30 maart 2018 08:12:39
   Lease Expires . . . . . . . . . . : zaterdag 31 maart 2018 08:12:50
   Default Gateway . . . . . . . . . : 192.168.1.254
   DHCP Server . . . . . . . . . . . : 192.168.1.254
   DNS Servers . . . . . . . . . . . : 192.168.1.254
   NetBIOS over Tcpip. . . . . . . . : Enabled

Wireless LAN adapter Local Area Connection* 1:

   Media State . . . . . . . . . . . : Media disconnected
   Connection-specific DNS Suffix  . :
   Description . . . . . . . . . . . : Microsoft Wi-Fi Direct Virtual Adapter
   Physical Address. . . . . . . . . : BE-83-85-E7-C5-48
   DHCP Enabled. . . . . . . . . . . : Yes
   Autoconfiguration Enabled . . . . : Yes

Ethernet adapter Bluetooth Network Connection:

   Media State . . . . . . . . . . . : Media disconnected
   Connection-specific DNS Suffix  . :
   Description . . . . . . . . . . . : Bluetooth Device (Personal Area Network)
   Physical Address. . . . . . . . . : BC-83-85-E7-C4-4A
   DHCP Enabled. . . . . . . . . . . : Yes
   Autoconfiguration Enabled . . . . : Yes

Wireless LAN adapter Wi-Fi:

   Connection-specific DNS Suffix  . : home
   Description . . . . . . . . . . . : Marvell AVASTAR Wireless-AC Network Controller
   Physical Address. . . . . . . . . : BC-83-85-E7-C4-49
   DHCP Enabled. . . . . . . . . . . : Yes
   Autoconfiguration Enabled . . . . : Yes
   Link-local IPv6 Address . . . . . : fe80::49ca:6fd:8fa4:a099%3(Preferred)
   IPv4 Address. . . . . . . . . . . : 192.168.1.25(Preferred)
   Subnet Mask . . . . . . . . . . . : 255.255.255.0
   Lease Obtained. . . . . . . . . . : vrijdag 30 maart 2018 08:12:49
   Lease Expires . . . . . . . . . . : zaterdag 31 maart 2018 08:13:08
   Default Gateway . . . . . . . . . : 192.168.1.254
   DHCP Server . . . . . . . . . . . : 192.168.1.254
   DHCPv6 IAID . . . . . . . . . . . : 79463301
   DHCPv6 Client DUID. . . . . . . . : 00-01-00-01-22-4C-14-89-C4-9D-ED-E8-5D-1E
   DNS Servers . . . . . . . . . . . : fe80::2aff:3eff:fe3d:f5%3
                                       192.168.1.254
   NetBIOS over Tcpip. . . . . . . . : Enabled

Tunnel adapter Local Area Connection* 11:

   Media State . . . . . . . . . . . : Media disconnected
   Connection-specific DNS Suffix  . :
   Description . . . . . . . . . . . : Microsoft Teredo Tunneling Adapter
   Physical Address. . . . . . . . . : 00-00-00-00-00-00-00-E0
   DHCP Enabled. . . . . . . . . . . : No
   Autoconfiguration Enabled . . . . : Yes

编辑 以上 ping 是在 VPN 连接打开的情况下进行的。以下是在 VPN 连接关闭的情况下进行的

ping 192.168.1.253

Pinging 192.168.1.253 with 32 bytes of data:
Reply from 192.168.1.27: Destination host unreachable.
Reply from 192.168.1.27: Destination host unreachable.
Reply from 192.168.1.27: Destination host unreachable.
Reply from 192.168.1.27: Destination host unreachable.

答案1

0并且255不是 255.255.255.0 子网中机器的有效地址。

255 是“广播”地址,0 是“网络地址”。

相关阅读为什么 IP 地址不能以 0 或 255 开头?。答案解决了宽 IP 地址的广泛情况,但该规则也适用于子网地址,因此对于 255.255.255.0 子网,第一个和最后一个 IP 是保留的。


关于 ping .253... 在您的第一次 ping 中,它本质上是询问它拥有的每个网络适配器是否有到主机的路由。

在其中两起案件中,他们做出了答复Destination host unreachable.,基本上是说“如果它在这里,我们会通知你,但由于某种原因无法联系到它”

更奇怪的是 VPN 网络网关,它Destination net unreachable.在这种情况下说由于子网划分和其他因素,它完全无法与之通信任何该网络上的机器。

您的最终 ping 看起来与我预期的一样。您的本地网络适配器只是告诉您地址无法访问。

答案2

ICMP 协议直接在 IPv4 上运行(在本例中)。它具有与单播 UDP 或 TCP 不同的路由规则。基本上任何看到 ICMP 数据包的主机都可以应答(甚至撒谎)。

因此,您在接收的数据包数中看到的不仅仅是目的地的回复。

相关内容