Когда бы? Будет ли сгенерирован ответ ARP?

Краткое описание проблемы : пинг от клиента не переходит на rpi1 , его вызов ARP не отвечает at SRV . ​​

enter image description here

  • host0 и tap0 соединены мостом br0 .
  • vpnin и lan0 - два независимых интерфейса.
  • Весь трафик между интерфейсами разрешен на srv (IP-переадресация включена, и у меня есть успешный трафик между rpi1 и другими интерфейсами, которые здесь не видны, в том числе одним, который является шлюзом в Интернет)

Реквизиты : клиент успешно отправляет эхо-запрос ( 10.20.1.2 ), 10.20.1.1 , 10.20.1.254 и 10.10.10.254 . При попытке выполнить эхо-запрос 10.10.10.11 :

root@client:~# ping 10.10.10.11
PING 10.10.10.11 (10.10.10.11) 56(84) bytes of data.
From 10.20.1.1: icmp_seq=2 Redirect Host(New nexthop: 10.10.10.11)
From 10.20.1.1 icmp_seq=1 Destination Host Unreachable
From 10.20.1.2 icmp_seq=3 Destination Host Unreachable
From 10.20.1.2 icmp_seq=4 Destination Host Unreachable
From 10.20.1.2 icmp_seq=5 Destination Host Unreachable

Обратите внимание на перекидной клапан в From , между 10.20.1.1 и 10.20.1.2 .

При запуске tcpdump на srv (при потере возможности проверки связи) я вижу запросы ARP, но нет ответов:

root@srv ~# tcpdump -i vpnin -nn
17:10:54.463072 ARP, Request who-has 10.10.10.11 tell 10.20.1.1, length 28
17:10:55.459489 ARP, Request who-has 10.10.10.11 tell 10.20.1.1, length 28
17:10:56.459459 ARP, Request who-has 10.10.10.11 tell 10.20.1.1, length 28
17:10:56.473683 ARP, Request who-has 10.10.10.11 tell 10.20.1.2, length 28
17:10:57.469788 ARP, Request who-has 10.10.10.11 tell 10.20.1.2, length 28
17:10:58.469608 ARP, Request who-has 10.10.10.11 tell 10.20.1.2, length 28

Опять же, оба 10.20.1.1 и 10.20.1.2 запрашивают ответ.

Таблица ARP на SRV действительно имеет ответ

root@srv ~# arp -a
(...)
rpi1.10.in-addr.arpa (10.10.10.11) at f4:f2:6d:09:35:1b [ether] on lan0

В чем может быть причина

  • из-за отсутствия ответа?
  • и для этого странного переключения между 10.20.1.1 и 10.20.1. 2 ?
3
задан 15 July 2016 в 20:58
1 ответ

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

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

Если трафик должен быть направлен в другую сеть, вам нужно настроить шлюз на узлах, чтобы они были адресами в сетях третьего уровня, где узлы существуют, в точке, где сети пересекаются (srv). Настроенный шлюз для клиента должен быть 10.20.1.254, а настроенный шлюз для rp1 должен быть 10.10.254.

.
4
ответ дан 3 December 2019 в 06:01

Теги

Похожие вопросы