Назад | Перейти на главную страницу

Проблемы с подключением - ARP, MAC-адреса и IP-адреса

Я пытаюсь диагностировать некоторые проблемы с подключением, которые возникли вчера вечером при настройке моего нового маршрутизатора на базе ПК.

Какое-то время все работало отлично, но затем внезапно я обнаружил, что не могу пинговать новый компьютер и не могу пинговать другие машины с этого компьютера. В конце концов я установил wirehark для сбора на своей машине и пропинговал эту машину с нового ПК. Я видел, как запросы ping достигли моей машины и был отправлен ответ, но я все еще ничего не видел на новом ПК. (который запускает встроенную версию pfSense - дистрибутив FreeBSD)

Оглядываясь назад, я вижу единственную возможность, что это как-то связано с тем фактом, что я продолжал давать новому компьютеру тот же IP-адрес, что и наш существующий маршрутизатор (192.168.1.1), а старому маршрутизатору назначать другой IP-адрес (192.168.1.42). ). В итоге я проделал это пару раз и никогда не перезагружал свой основной компьютер, поэтому я подумал, не испортились ли как-то таблицы ARP.

Итак, что происходит с пакетами, в которых IP-адрес совпадает, а MAC-адрес - нет (или наоборот)? Их просто игнорируют?

Кроме того, есть ли еще какие-либо инструменты или методы диагностики, которые я могу использовать? (кроме простого включения и выключения разных вещей ...)

То, что вы описываете, указывает на то, что:

  • Маршрутизатор знает, куда обратиться к вашему компьютеру в сети L2, чтобы отправить запрос ping, поэтому предполагается, что его кэш ARP является правильным.
  • Но ваш компьютер не знает, куда обратиться к маршрутизатору, чтобы отправить ответ ping, поэтому его кеш ARP может быть неправильным.

Первые две действительно очевидные вещи, которые следует исключить:

  1. Ваш старый маршрутизатор все еще не пытается получить IP-адрес 192.168.1.1.
  2. Ваш новый маршрутизатор не блокирует брандмауэр ping-запроса (эхо ICMP), когда он поступает.

Предполагая, что это не эти две вещи, вы можете продолжить проверку правильности записей ARP. Имейте в виду, что если вы не используете статические записи ARP, а я предполагаю, что это не так, они сохраняются динамически по мере необходимости и истекают через определенный период времени. Это означает, что они не сохранятся при перезагрузках или в течение длительного времени. Поэтому, если ваш старый маршрутизатор определенно больше не находится на старом IP-адресе, это не должно быть причиной проблемы.

  1. Запишите правильные MAC-адреса для вашего ПК и нового маршрутизатора. Вы можете получить эту информацию из ifconfig или ipconfig, Зависит от ОС.
  2. Дважды проверьте это по записям ARP на каждом устройстве. Вы можете просмотреть текущие записи в кэше ARP с помощью arp -a или arp -an чтобы пропустить разрешение имени.
  3. Если кэш ARP с одного компьютера не соответствует MAC-адресу другого и наоборот, попробуйте удалить его с помощью arp -d <ip>. Если он возвращается с тем же адресом, возможно, у вас в сети есть несанкционированный компьютер.

Кстати, вы также можете убедиться, что MAC-адреса, отображаемые в запросе и ответе захвата Wireshark, совпадают с теми, которые вы записали с интерфейсов машины.