Ответ ARP исчезает с br0 до tap0, используя OpenVPN в режиме моста

9

Я установил linux box (на esxi5), который действует как сервер OpenVPN. сервер настроен на использование мостов для клиентов, что по существу работает, за одним исключением.

Если клиент пингует какой-либо компьютер в сети, который не является самим сервером, он не работает. Я исключил все, что знаю (iptables и т. Д.), И запуск tcpdump сводил его к следующему:

  • Я вижу запросы ARP на tap0 и br0
  • Я вижу ответы ARP на br0
  • Я не вижу ответы ARP на tap0

Вопрос: почему устройство br0 не пересылает ответы ARP на устройство tap0?

топь
источник
1
хорошо - у меня есть шаг вперед когда я смотрю таблицу mac моста с помощью brctl showmacs, я вижу mac адрес моего vpn-клиента на стороне tap0. если теперь я начинаю пинговать с клиента vpn в подсеть, MAC-адрес переходит на порт через мост, который, конечно, блокирует ответ arp подсети. макинтош переключается обратно почти сразу, когда пинг останавливается. так что я не знаю, почему MAC-адрес переключается на неправильный порт коммутатора - все мои поиски пока не дали результатов.
фенов
если он «переходит» на другой порт, это будет определенным признаком того, что MAC-адрес либо присутствует в вашей сети более одного раза, либо вы наблюдаете влияние петли сети (два порта одного моста соединены активным дорожка). Обе проблемы конфигурации, которые необходимо исправить.
The Wabbit
1
сначала изолируйте проблему с помощью статической записи ARP в вашем клиенте; если после этого эхо-запросы работают хорошо, вы можете перейти к поиску и устранению неисправностей ARP. Если это не работает, тогда у вас есть проблема с сетью, которая больше, чем просто ARP.
Рикардо
Поскольку мы не можем ничего знать о том, как выглядит ваша сеть. Длинный выстрел; у вас есть client-to-clientв файле конфигурации openvpn вашего сервера? Если ваши серверы подключены к сети VPN с использованием openvpn в качестве клиента, тогда предложение может быть верным. PS. Какой дистрибутив вы используете?
Михал Соколовский

Ответы:

1

Без дополнительной информации, мы предполагаем, но давайте попробуем:

Сначала убедитесь, что оба eth0 и tap0 находятся в случайном режиме. br0 не должен быть в беспорядочном режиме.

Затем проверьте, есть ли у вас arptables и какие-либо правила iptables, которые могут мешать.

Как вы уже получаете Arp ответы, ваш , вероятно , не это , но проверить это в любом случае.

наконец, проверьте настройки rp_filter , но также проверьте все дополнительные параметры sysctl, которые вы могли установить.

Игиты
источник
1
... и поскольку это ESXi, убедитесь, что на виртуальном коммутаторе включен случайный режим.
Джеральд Комбс
^ ^ ^ ^ Очень важно включить случайный режим на vSwitch, если вы используете ESXi. В самом деле.
Ройма
1

Если ваш хост ESXi имеет избыточные подключения к сети, существует множество проблем ARP, которые могут возникнуть из-за настройки по умолчанию Net.ReversePathFwdCheckPromisc. Пользователи pfSense, использующие CARP, были одними из первых, кто отладил это, как описано на странице https://doc.pfsense.org/index.php/CARP_Configuration_Trou устранение неполадок.

В аналогичной среде у нас на FreeBSD настроено мостовое соединение OpenVPN, но есть и дополнительное усложнение vlans. На хосте, где Net.ReversePathFwdCheckPromisc не был установлен в 1, и где существует несколько восходящих ссылок на сеть, мы наблюдаем значительную потерю пакетов (более 95%) при входящем трафике на устройство крана. Работает просто отлично, если установлено в 1.

JG23
источник