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

Проблема обнаружения соседа IPv6

Я хотел бы получать адреса IPv6 с моих компьютеров в локальной сети, подключенных к маршрутизатору с интернет-провайдером, работающим только с IPv4.

У меня роутер dd-wrt. Я установил туннель IPv6 с Hurricane Electric (http://tunnelbroker.net/).

Что работает:

Я могу выполнить ping6 с маршрутизатора на адреса IPv6, извне маршрутизатор может быть отправлен с его туннелированным IPv6-адресом. Я также настроил адрес IPv6 для маршрутизаторов LAN iface и заставил radvd, правила пересылки и sysctls работать для моей локальной сети, чтобы иметь адрес из заданного диапазона / 64. Я получаю IPv6 IP в Windows 7 и Ubuntu тоже (не fe80: one, а 2001: one). Windows 7 отлично работает сама по себе, но почти всегда теряет первый пакет ping, но после него все в порядке. Это тоже странно, но это не большая проблема.

Что реально не работает:

Ubuntu не работает при запуске, но если я пингую локальную сеть маршрутизатора с адресом IPv6, он работает полминуты, а затем останавливается. Я понял, что если я пингую локальную сеть, если таблица соседей получает новую строку (вывод ip -6 ne):

2001:470:xxxx:xxxx:0:98fc:1148:4507 dev eth2 lladdr 98:fc:11:48:45:07 router REACHABLE

Через некоторое время он станет УСТАРЕВШИМ или даже исчезнет.

Я попытался вручную добавить это в таблицу соседей, но он тоже устаревает или исчезает. Что мне делать, чтобы он работал постоянно?

Моя конфигурация radvd, кстати:

interface br0 {
  MinRtrAdvInterval 3;
  MaxRtrAdvInterval 10;
  AdvLinkMTU 1480;
  AdvSendAdvert on;
  prefix 2001:470:xxxx:xxxx::/64 {
     AdvOnLink on;
     AdvAutonomous on;
     AdvValidLifetime 43200;
     AdvPreferredLifetime 43200;
  };
};

Спасибо за предложение.

Но я не мог заставить его работать только с одним префиксом / 64 для LAN и WAN, поэтому я запросил / 48. Таким образом, существует отдельный префикс / 64 для WAN-интерфейса маршрутизатора и для LAN-интерфейса. Таким образом, компьютеры могут автоматически генерировать свои собственные адреса, и нет проблем с маршрутизацией и прочими проблемами.

Попробуйте отключить ip6tables. Возможно, вы предотвратили обмен адресами канального уровня fe80, сообщениями ICMP или другой важной информацией.

Также сообщите, что показывает tcpdump в это время для трафика ipv6 с участием двух хостов (поиск по MAC-адресу).

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