April 17th, 2011

A-A-A

IPv6 Туннель от HE на FreeBSD 8.2: странное поведение входящего трафика.

Подключаю IPv6 туннель от HE на FreeBSD 8.2. Сказал всё про gif0, поставил default static route в туннель для IPv6, разрешил в файрволле IPv6 к себе и от себя. Пингую внешний сайт — пингуется, всё в порядке.

Начинаю пинговать свой конец туннеля. Молчание. Ну, думаю, с файрволлом напутал. Делаю tcpdump -ni gif0 — молчание. Даже входящих запросов нет. Удивляюсь. Делаю tcpdump -i ng0 host 64.71.xx.xx, где ng0 — мой внешний IPv4 интерфейс (PPPoE-подключение), а 64.71.xx.xx — IPv4-адрес другого конца туннеля. Начинаю пинговать IPv6 снова. Вижу в выводе tcpdump 5-10 пакетов ICMPv6-запроса (завёрнутого в IPv4, конечно, я ведь смотрю “внешний” интерфейс), а потом ВНЕЗАПНО начинают идти и ответы (и они видны там, где запущен ping6).

И всё пингуется ещё 2-3 минуты после остановки tcpdump, а потом снова перестаёт. Запускаешь tcpdump — через 10 секунд всё снова работает. При этом пинг наружу работает всегда.

Что за мистика и что я делаю не так?

Collapse )

Update Неплохо бы ещё протокол 41 вложенный в ip разрешить в файрволле, ага. И всё заработает. А tcpdump, похоже, как-то интерферирует с файрволлом.