netfilter: bridge: forward IPv6 fragmented packets
Issue
IPv6 断片化パケットが、netfilter ip6_tables がロードされている Ethernet ブリッジには転送されません。以下は再現手順になります。
1) 以下のような単純なブリッジを作成します。
modprobe br_netfilter
brctl addbr br0
brctl addif br0 eth0
brctl addif br0 eth2
ifconfig eth0 up
ifconfig eth2 up
ifconfig br0 up
2) ブリッジの片方に IPv6 アドレスを設定したホストを配置します。
ホスト A で IPv6 アドレスを設定:
ip -6 addr add fd01:2345:6789:1::1/64 dev eth0
ホスト B で IPv6 アドレスを設定:
ip -6 addr add fd01:2345:6789:1::2/64 dev eth0
3) 以下の ping コマンドを、MTU より大きなパケットを持つ host A で実行します。
ping6 -s 4000 fd01:2345:6789:1::2
4) 少し待ってから、ブリッジで、たとえば "ip6tables -t nat -nvL" コマンドを実行します。
"ip6tables -t nat -nvL" のコマンドを実行するまでは、IPv6 断片化パケットがブリッジを適切に通ります。このコマンドが実行(つまり、netfilter モジュールがロード)されると直に 、IPv6 断片化パケットがブリッジを通らなくなります。(ping の出力で反応がなくなります。)
Environment
- Red Hat Enterprise Linux 7
- Red Hat Enterprise Linux OpenStack
- kernel
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase of over 48,000 articles and solutions.
Welcome! Check out the Getting Started with Red Hat page for quick tours and guides for common tasks.
