Пытаюсь понять пинг


10

Я программирую класс Reachability, который проверяет, является ли IP-адрес действительным и доступным. Я написал модульный тест, чтобы проверить, нормально ли работает мой класс, и тогда это случилось. Я протестировал с IP-адресом 192.168.1.255, который, по моему мнению, был недоступен в моей сети, но я получил IsReachable = true. Ха ... как это возможно?

Хорошо, у меня есть базовый уровень. Я могу использовать приложение ping, которое поставляется с Windows. Вот результат этого теста

# 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

РЕДАКТИРОВАТЬ Выше пинги были с открытым 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.

Обратите внимание, что у вас есть два интерфейса (Ethernet 1 и Wi-Fi) в одной сети, что обычно является хорошим способом решения многих странных проблем. Я рекомендую вам подключаться только вкл.
— jcaron

1
@jcaron Я считаю, что гораздо лучше научить ОП работать с несколькими интерфейсами. Класс должен научить его чему-то правильному? Вы не можете зайти в серверную стойку и выключить все интерфейсы, кроме одного, для проверки доступности ... учитывая, что вы можете войти с одного и вам нужно протестировать другой; или если у вас есть виртуальные интерфейсы (например, какой-нибудь контейнер докеров и т. д.), они могут иногда кусаться. Таким образом, ваше «исправление» работает только в тривиальных ситуациях, когда тестирование достижимости не является проблемой.
— Бакуриу

Трудно ответить однозначно, не видя таблицу маршрутизации, тем более что у вас есть два адаптера в одной подсети.
— Ex Umbris

Ответы:


10

0и 255не являются действительными адресами для компьютера в сети подсети 255.255.255.0.

255 - это «широковещательный» адрес, а 0 - «сетевой адрес».

Связанное чтение Почему IP-адреса не могут начинаться с 0 или 255? , Ответ относится к широкому регистру широких IP-адресов, но правило применяется и к адресам подсетей, поэтому для подсети 255.255.255.0 первый и последний IP-адреса зарезервированы.


Что касается пинга .253... в вашем первом пинге, по сути, он спрашивает у каждого сетевого адаптера, есть ли у него маршрут к хосту.

В двух случаях они ответили, Destination host unreachable.что, по сути, гласит: «Если бы это было здесь, то мы бы дали вам знать, но это по какой-то причине недоступно»

Более странным является шлюз VPN-сети, который вместо этого говорит, что Destination net unreachable.в данном случае он говорит, что из-за подсетей и других факторов у него нет абсолютно никакой возможности общаться с любой машиной в этой сети.

Ваш последний пинг выглядит так, как я ожидал увидеть. Ваш локальный сетевой адаптер просто сообщает вам, что адрес недоступен.


Хорошо, спасибо. Не знал этого. Как сказал «парик», любой хозяин может ответить и даже солгать звонящему. Это то, что происходит с 253 в адресе?
— Пол Синнема

У вас есть несколько сетевых интерфейсов на этом компьютере? Даже виртуальные? Ping может запрашивать все шлюзы, которые он знает, и получает недостижимые ответы.
— Мокубай

Добавлен вывод ipconfig / all. 1 Адрес близок, но не совсем совпадает (137.224.245.97)
— Пол Синнема

Другие 2 192.168.1.25 и 27 определенно доступны на 80-м порту моей сети (IIS)
— Пол Синнема

Очевидно, что самый странный ответ заключается в 137.224.244.1том, что я могу приписать только неправильно настроенный шлюз, который пропускает пакет 192.168.xx в WAN.
— парик

1

Протокол ICMP работает непосредственно поверх IPv4 (в данном случае). У него другие правила маршрутизации, чем у одноадресного UDP или TCP. В основном любой хост, который видел ICMP-пакет, может ответить (и даже лгать).

Так что это не просто ответы по месту назначения, которые вы видите в количестве полученных пакетов.


Хорошо, ICMP - это вид трансляции, который могут видеть все хосты? Поэтому, когда я хочу быть уверенным, я должен проверить ответ и сравнить IP-адреса?
— Пол Синнема

Адрес 192.168.1.255действительно передавался всем машинам за вашим маршрутизатором. Все 0 и все 1 в подсети являются специальными, и их обработка определяется в протоколе IPv4. В этом случае все хозяева чувствуют себя решенными.
— парик

1
@PaulSinnema: ICMP - это не широковещательная рассылка, а адрес, который вы использовали (именно поэтому он не является действительным адресом для отдельных устройств). Этот ответ отчасти запутывает два понятия.
— Гонки

Здесь нет "разных правил маршрутизации". TCP не разрешается использовать широковещательные адреса (это не имеет смысла, так как он должен устанавливать соединения точка-точка), но UDP, безусловно, есть.
— Barmar
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.