IP6tables 阻止 INPUT?无法连接 YouTube API

IP6tables 阻止 INPUT?无法连接 YouTube API

我本以为可以有一个简单的 ipv6 防火墙,但结果却很糟糕。除非我将 INPUT Policy 设置为 ACCEPT,否则我真的无法从我的机器连接任何 ipv6。在我当前的 ip6tables 下

ip6tables -L

Chain INPUT (policy DROP)
target     prot opt source               destination
ACCEPT     all      anywhere             anywhere           state RELATED,ESTABLISHED
ACCEPT     ipv6-icmp    anywhere             anywhere
ACCEPT     tcp      anywhere             anywhere           tcp dpt:http
ACCEPT     tcp      anywhere             anywhere           tcp dpt:https

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

如果我尝试连接任何 ipv6 地址,它不起作用?

telnet gdata.youtube.com 80
Trying 2a00:1450:4013:c00::76...

或者

telnet gdata.youtube.com 443
Trying 2a00:1450:4013:c00::76...

当我设置:

ip6tables -P INPUT ACCEPT

它可以工作..但是..那么一切都开放了?发生了什么事?帮忙吗?

答案1

您可能忽略了关键的“状态”规则:

-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

您还缺少接受 ICMPv6 的规则。没有 ICMPv6,IPv6 根本无法运行。

-A INPUT -p ipv6-icmp -j ACCEPT

出于性能原因,这应该是链中最早的规则之一。

相关内容