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

запись таблицы arp вне настроенной сети

Может кто-нибудь сказать мне, почему у меня есть запись в таблице arp за пределами сети интерфейса?

Сервер имеет 2 интерфейса, оба в одной сети:
eth0 10.10.34.146/22
eth1 10.10.33.188/22

IP-маршрут
по умолчанию через 10.10.32.2 dev eth0 proto static metric 1024
Ссылка на область видимости ядра 10.10.32.0/22 ​​dev eth0 proto, src 10.10.34.146
10.10.32.0/22 ​​dev eth1 proto kernel scope link src 10.10.33.188

arp -n
Адрес HWtype HWaddress Флаги Маска Iface
176.119.32.2 эфир d4: d7: 48: b5: a3: c1 C eth1
176.119.32.2 эфир d4: d7: 48: b5: a3: c1 C eth0

И затем, когда я пингую 8.8.8.8 (с eth0), я получаю ответ icmp, но таблица arp не изменяется.
Но когда я пингую -I eth1 8.8.8.8 Я получаю ответ icmp и там это новая запись в таблице arp:
8.8.8.8 эфир d4: d7: 48: b5: a3: c1 C eth1

Но когда я добавляю «ip route add default via 176.119.32.2 dev eth1» в таблицу маршрутизации и пингую 8.8.8.8 от eth1, новая запись в таблице arp для 8.8.8.8 отсутствует.
Это почему?
Спасибо.

ПРИМЕЧАНИЕ. Оба интерфейса подключены к коммутатору Cisco с помощью ip local-proxy-arp на SVI с ip 176.119.32.2/22, который является gw по умолчанию, и оба находятся в частной VLAN.

ХОРОШО. Все правильно.
Если на интерфейсе не настроен шлюз по умолчанию и на порту коммутатора настроен proxy-arp, то, если вы пингуетесь с IP-адресом за пределами сети, настроенным в iface, вы получите запись arp в своей таблице arp с IP-адресом вне текущей сети.
Это нормальное поведение:].
Я проверил это вручную на переключателе лаборатории.

Похоже, что интерфейс Cisco, к которому подключен ваш eth0, настроен с ip local-proxy-arp но интерфейс Cisco, к которому подключается ваш eth1, на самом деле настроен с ip proxy-arp вместо. Это будет учитывать, что коммутатор берет на себя ответственность за адресацию канала передачи данных IP за пределами локально настроенной LAN.

Не могли бы вы проверить это на конфигурации коммутатора? Если я ошибаюсь, опубликуйте результаты show run int [PORT_FOR_ETH0] и show run int [PORT_FOR_ETH1]?