我正在使用以下ip6tables命令来接受ipv6数据包,
ip6tables -I INPUT 1 -p udp --dport 9999 -j ACCEPT
但是,如果目标数据包被分片了pakcet,则只能接收第一个片段,其他片段ipv6数据包将被丢弃。 AFAIK,IPv4分段数据包将在进入LOCAL_IN链之前进行重组,因此是否有任何命令可以获得与iptables相同的结果。 BTW,内核版本:3.4.39 预先谢谢你。
答案 0 :(得分:0)
我的内核版本是v3.4.39,在阅读源代码之后,事实证明该版本不支持在进入netfilter本地输入链之前重组IPv6分段数据包, 除了ipv6-conntrack模块可以重组片段外,但只有conntrack模块可以使用组装的数据包。我找到了一个修复此问题的补丁:[ * netfilter:将reasm skb推送通过,而不是原始的frag skbs * ] (https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=6aafeef03b9d9ecf255f3a80ed85ee070260e1ae)