私がやろうとしているのは、vpnトンネルを介してIPv6トラフィックをルーティングすることです。そうすれば、IPv6をサポートしていないネットワークでIPv6を使用できるはずです。
IPv6ブロックが割り当てられたVPSがあります。このブロックの一部は、openvpnクライアントに使用します。2001:db8::111:800:0/112
openvpnはサブネットとして/ 64と/ 112のみをサポートするため、私が念頭に置いていた範囲は(プレフィックスは匿名化されています)でした。
トンネルを介したIPv6はすでに動作しています。クライアントから、サーバー(2001:db8::111:800:1
)をpingでき、サーバー上のインターフェイス(2001:db8::111:100:100
および2001:db8:216:3dfa:f1d4:81c0
)もできます。
ただし、クライアントからgoogle.comをpingしようとすると、応答がありません(pingタイムアウト)。この問題をデバッグするために、tcpdumpを使用してサーバー上のトラフィックをキャプチャしました。pingパケットが送信されるのを確認できますが、返信が返ってきません。ip6tablesにログルールを追加すると、同じパケットが送信されますが、何も送信されません。
サーバーからタイムアウトを取得するオンラインtracerouteツールを使用しました。また、インターフェイスに直接IPを設定しようとしましたが、IP(2001:db8::111:800:1001
)が到達可能になるため、これはルーティングの問題だと思います。
からipv6の転送を有効にしました/proc/sys/net/ipv6/conf/all/forwarding
。ip6tablesには、すべてのチェーンを許可するポリシーがあります。
私の質問は、インターフェイスに割り当てられていないIPのパケットをLinuxが受け入れてさらにルーティングするために、Linuxに必要なものは何ですか?存在するルートだけでは十分ではないようです。
クライアントとサーバーのセットアップは次のとおりです。さらに情報が必要な場合はお知らせください。
クライアント
# ip -6 addresses
10: tun0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qlen 100
inet6 2001:db8::111:800:1001/112 scope global
valid_lft forever preferred_lft forever
# ip -6 routes
2001:db8::111:800:0/112 dev tun0 proto kernel metric 256
2000::/3 dev tun0 metric 1024
サーバ
# ip -6 address
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qlen 1000
inet6 2001:db8:216:3dfa:f1d4:81c0/64 scope global dynamic
valid_lft 86254sec preferred_lft 14254sec
inet6 2001:db8::111:100:100/128 scope global
valid_lft forever preferred_lft forever
12: tun0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qlen 100
inet6 2001:db8::111:800:1/112 scope global
valid_lft forever preferred_lft forever
# ip -6 route
2001:db8::111:100:100 dev eth0 proto kernel metric 256
2001:db8::111:800:0/112 dev tun0 proto kernel metric 256
2001:db8::/64 dev eth0 proto kernel metric 256 expires 86194sec
default via fe80::230:48ff:fe94:d6c5 dev eth0 proto ra metric 1024 expires 1594sec
TRACE
ターゲット(ここではそれほど多くないかもしれません)ip neighbour
、およびを使用してみてくださいip route get
。また、誰がpingしてgoogle.ca
いるかを指定してください。
POSTROUTING ... MASQUERADE
にnat
テーブル。しかし、完全に理解できるかどうかはわかりません。IPv6トラフィックをトンネルしようとしていますか?ある場合、それぞれの施設を設置していますか?ある-p ipv6
IPv4の(!)のルールで許可されたパケットは?