LINUX.ORG.RU
ФорумAdmin

ipv6 autoconf vs ip6tables

 ,


0

1

Если в INPUT стоит

-P INPUT DROP
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -i lo -j ACCEPT

то ipv6 autoconfiguration ломается нафиг, и чинится разрешением -p icmpv6, а точнее, router solicitation и router advertisement.

Впорос: почему conntrack не прочухал, что ответ на router solicitation - это ESTABLISHED,RELATED? Это баг или я чего-то не разумею?

★★★
Ответ на: комментарий от anton_jugatsu

Но DHCPv4 с приведённым набором правил для обычных iptables работает. Там UDP + broadcast. И icmp(v6) уровнем выше ip(v6), хотя по предназначению это L2-L3.

selivan ★★★
() автор топика

Эм, ICMPv6 - это основа IPv6(в отличие от IPv4, где без него худо бедно можно). Рубить его на корню - идея не очень.

почему conntrack не прочухал, что ответ на router solicitation - это ESTABLISHED,RELATED?

А почему не разрешаются icmp reply в IPv4 таким же макаром? Причина та же - не впилили, посчитав это не нужным или даже вредным.

Pinkbyte ★★★★★
()
Ответ на: комментарий от Pinkbyte

А почему не разрешаются icmp reply в IPv4 таким же макаром?

Разрешаются. С вышеприведённым конфигом ты можешь пинговать внешние хосты, и reply прилетит, потому что RELATED. А они тебя - нет

selivan ★★★
() автор топика
Ответ на: комментарий от selivan

а, пардон, я на задачу посмотрел со стороны СЕРВЕРА, который как раз пинговаться не будет, как ты и сам знаешь.

Ну тогда хз, задай подобный вопрос в LKML, пусть знающие люди тебе ответят...

Pinkbyte ★★★★★
()
Ответ на: комментарий от selivan

Можешь пинговать, но только обычным пингом, с broadcast пингом RELATED не сработает.

Раньше ICMPv6 Neighbor Discovery пакеты определялись conntrack'ом всегда как INVALID, потом сделали патч http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=3f9... , чтобы они определялись как UNTRACKED. Не знаю, может когда кто и напишет патч, чтобы были RELATED, но сомневаюсь.

mky ★★★★★
()
Ответ на: комментарий от mky

О как. INVALID было совсем жестоко, у многих --state INVALID -j DROP стоит. Спасибо за разъяснения :)

selivan ★★★
() автор топика

Я как-то тоже сделал ip6tables -P INPUT DROP, после чего перестал работать роутер. Поначалу подумал что в ip6tables цепочку FORWARD отменили. :)

А все потому, что разработчики в перерывах между покуриванием каннабиса, решили вынести arp в ip6 на несколько уровней выше... Что не говорите, но нелогично делать address resolution поверх маршрутизируемого протокола. Хотя 1 плюс у этого подхода все-таки есть - фильтровать можно «не отходя от кассы», ибо нет нужды во всяких arptables и т.д. Но как видим этот подход чаще приводит к выстрелам себе в ногу. :)

Rost ★★★★★
()
Ответ на: комментарий от Rost

Linux - стреляем себе в ногу с 1991 года (c)(r)

Ну, некоторая логика есть, link-local маршрутизироваться не должен. Но подъ*бали красиво, я долго не мог понять в чём дело.

selivan ★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.