2つの異なるGoogle Cloud VPNゲートウェイGW_IP_1
とGW_IP_2
2つのNATポストルーターを使用してR1
2つのIPSecトンネルを設定したいと思いますR2
。このような:
GW_IP_1 ---\ /--- R1
|-- my_main_router_NAT_firewall ---|
GW_IP_2 ---/ \--- R2
問題:ゲートウェイ(and)の送信元IPアドレスに基づいて特定のルータ(and)にUDP
ポートを転送します500
。R1
R2
GW_IP_1
GW_IP_2
奇妙な状況が発生しました。トンネルが機能し、パケットが正しく一致して転送されましたが、パケットは機能しませんでした。2番目のルータR2の場合一致するものはありません。どこかから消えたようです。
ネイティブNATtingルーターでDNATルールを作成しました。
-t nat -A PREROUTING -p udp -s GW_IP_1 --dport 500 -j DNAT --to R1:500
-t nat -A PREROUTING -p udp -s GW_IP_2 --dport 500 -j DNAT --to R2:500
走りtcpdump
続けています。パケットが受信され、トンネルが開きます。R1
R2
R1
しかし、R2は500個のパケットを見ませんでした。。その後、両方のパケットtcpdump
でmain_router
パケットを実行し、期待GW_IP_1
どおりにGW_IP_2
到着しました。
私は数日間ルーター(Ubiquiti ER-X)などと相談しました。これがファームウェアのバグであるか、このタイプのルーターに固有の問題だと思いました。しかし、最初から2つのインターフェイス、転送、およびすべてのルールを使用して単純なLinuxルータを設定し、結果は同じでした。 1つのトンネルは機能していましたが(パケットは正しく配信されました)、2番目のルーターは機能しませんでした。パケットなし受信されます。
iptables
したがって、これはおそらく/kernelのもう少し基本的なものです。誰かがこれを説明できますか?