1

Я построил маршрутизатор на основе Linux для среды тестирования сети. Машина имеет 4 физических порта Ethernet

  1. изнуренный
  2. lan0
  3. lan1
  4. lan2

Все 3 интерфейса LAN * подключены к моему сетевому устройству. Я использую dnsmasq для предоставления DHCP/DNS на локальном интерфейсе. Я пытаюсь использовать IPv6-адреса SLAAC вместо назначенных DHCPv6-адресов и использую DHCPv6 для другой информации (поэтому DHCPv6 без сохранения состояния). Все остальные компьютеры в моей локальной сети правильно назначают себе адреса через SLAAC. Однако, даже несмотря на то, что dnsmasq отправляет объявления маршрутизатора через интерфейс локальной сети, мой интерфейс wan каким-то образом видит его и сам конфигурирует себя. Я запустил wireshark на своем интерфейсе wan, и по сети не поступает никакой входящей рекламы маршрутизатора.

Я даже пытался отключить slaac на моем интерфейсе wan, установив ключ net.ipv6.conf.wan.autoconf в 0 через sysctl, но он все равно получает адрес.

Есть ли другой способ, которым это могло бы случиться.

1 ответ1

0

Проблема оказывается не связана с сетью или ядром, а скорее связана с работой systemd в этой системе. systemd-networkd не фильтрует многоадресные сообщения, относящиеся к объявлению маршрутизатора, соответственно, или не соблюдает значения sysctl для отключения slaac для интерфейса. Таким образом, он обрабатывал RA и добавлял сам IP.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .