Я хочу перечислить все действительные ip, присутствующие в моей локальной сети. Для этого я попытался выровнять свой широковещательный адрес, а затем запросил таблицу ARP. При выполнении некоторых сетевых устройств IP-адреса не попадают в таблицу ARP. Если я выполняю ping этот конкретный IP-адрес, то, если я запрашиваю таблицу ARP, которую они перечисляют. Почему такое поведение?Вещательное сообщение, не получаемое моим сетевым устройством
ответ
..Выполняя некоторые сетевые устройства, адреса ip не попадают в список в таблице ARP. Если я выполняю ping th при определенном ip-адресе, тогда, если я запрашиваю таблицу ARP, которые перечисляются. Почему такое поведение?
Хосты могут быть и нередко сконфигурированы так, чтобы игнорировать радиопередачи. Это по умолчанию по крайней мере для некоторых (я бы хотел сказать «большинство») дистрибутивов Linux и версий Windows. RFC 1122 (раздел 3.2.2.6) явно разрешает это.
Я хочу, чтобы список всех действующих ip присутствовал в моей локальной сети.
Для этого вы можете либо попытаться (одноадресного) ping each host on your subnet или run a host discovery with nmap.
ARP-таблица - это всего лишь кэш для вашего компьютера, чтобы пропустить поиск ARP каждый раз, когда вы пытаетесь получить доступ к другой машине. Итак, если вы не сообщили об определенном IP-адресе До того, как в ARP-таблице не будет записи об этом конкретном IP-адресе и соответствующем MAC-адресе.
Если вы запустите, например, WireShark, вы увидите, что ваш компьютер (если вы общаетесь с машиной в первый раз) отправит широковещательное сообщение, более или менее «Кто имеет 192.168.0.4 (просто пример) - Ответ на 192.168.0.19) Когда этот ответ возвращается он будет хранить MAC и соответствующий IP-адрес в таблице ARP
для получения дополнительной информации об этом, смотрите здесь: http://www.tummy.com/articles/networking-basics-how-arp-works/
Если вы отправляете широковещательное сообщение, тогда он связывается со всеми системами, которые присутствуют в сети. Тогда весь IP-адрес системы должен быть указан в таблице ARP вправо? –
Ну, нет, не совсем. Единственное, что вы делаете с широковещательным сообщением, - спросить сеть о конкретном IP-адресе, соответствующем MAC. По-моему, нет широковещательного сообщения ARP, которое «Кто имеет все ip-адреса, скажите мне». Если, например, вы отправляете широковещательное сообщение для 192.168.0.14, ТОЛЬКО 192.168.0.14 ответит своим MAC-адресом и будет сохранено в таблице ARP. – JaggenSWE