Настроил на домашнем сервере роутер в IPv6-интернет через Hurricane Electric. Всё в принципе работает, но в процессе настройки столкнулся с такой проблемой: по какой-то причине, пакеты с хостов локалки, предназначенные для хостов «большого» интернета, на роутере проходят в ip6tables не только через цепочку filter:FORWARD (как и должно быть), но и через filter:INPUT (что странно). Хотя по этой схеме такого в принципе не должно быть...
Разрешать все входящие подключения из локалки на роутер я не хочу, поэтому написал такие правила:
###########################################################################
# FILTER TABLE
###########################################################################
*filter
:INPUT DROP
:FORWARD DROP
:OUTPUT ACCEPT
# Drop invalid TCP packets
-A INPUT -p tcp -m tcp ! --tcp-flags FIN,SYN,RST,ACK SYN -m conntrack --ctstate NEW -j DROP
-A INPUT -m conntrack --ctstate INVALID -j DROP
-A FORWARD -p tcp -m tcp ! --tcp-flags FIN,SYN,RST,ACK SYN -m conntrack --ctstate NEW -j DROP
-A FORWARD -m conntrack --ctstate INVALID -j DROP
-A OUTPUT -p tcp -m tcp ! --tcp-flags FIN,SYN,RST,ACK SYN -m conntrack --ctstate NEW -j DROP
-A OUTPUT -m conntrack --ctstate INVALID -j DROP
# Accept all incoming packets on loopback interface
-A INPUT -i lo -j ACCEPT
# Accept incoming packets from established or related connections
-A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT # (1)
#------------
# Forwarding
#------------
# FIXME: WTF?!
-A INPUT -i brlan ! -d 2001:123:1f0b:1a08::/64 -j ACCEPT # (2)
-A INPUT -i brlan ! -d 2001:123:1f0a:1a08::2 -j ACCEPT # (3)
-A FORWARD -i brlan -j ACCEPT # (4)
#--------------------------
# For all incoming packets
#--------------------------
# ICMP ping
-A INPUT -p icmpv6 -m conntrack --ctstate NEW -m icmpv6 --icmpv6-type echo-request -j ACCEPT
# Traceroute
-A INPUT -p udp -m udp --dport 33434:33534 -m state --state NEW -j REJECT --reject-with icmp6-port-unreachable
# Tracepath
-A INPUT -p udp -m udp --dport 44444:44473 -m state --state NEW -j REJECT --reject-with icmp6-port-unreachable
COMMIT
Вопрос: почему пакеты идут так странно?