ソース IP に関する Strongswan の問題

ソース IP に関する Strongswan の問題

AWS のリージョンと OpenStack で実装されたデータセンターの間に VPN 接続を確立しました。

|---AWS------------------|        |-----OpenStack----------|
Private IP      EIP               Float. IP     Private IP
10.2.10.250 <-> 35.x.255.x TUNNEL 75.x.65.x <-> 172.16.0.156

OpenStack のホストから AWS の別のホストに ping を実行しても、応答がありません。これは、10.2.10.250 VPN サーバーで実行されている tcpdump からの行です。

3:04:01.523351 IP 172.16.0.156 > 10.2.10.27: ICMP echo request, id 9407, seq 8, length 64

問題は、ping 元のサーバーが 172.16.0.156 ではなく、172.16.0.125 のようなアドレスであることです。そのため、OpenStack ネットワークで何かが SNAT を強制しているのではないかと考えています。両方のホストですべての iptables をフラッシュしました。2 つの AWS リージョンで環境を再現しましたが、ping は機能し、送信元 IP は正しいです。

これは /etc/ipsec.conf ファイルです:

config setup
        charondebug="all"
        uniqueids=yes
        strictcrlpolicy=no

conn %default
        ike=aes256-sha2_256-modp1024!
        esp=aes256-sha2_256!
        keyingtries=0
        ikelifetime=1h
        lifetime=8h
        dpddelay=30
        dpdtimeout=120
        dpdaction=restart
        auto=start
        keyexchange=ikev2
        type=tunnel

conn uswest2-x-to-x-x
    leftfirewall=yes
        leftcert=device-x-x_cert.pem
        leftid="C=CH, O=strongSwan, CN=device-x-x"
        rightid="C=CH, O=strongSwan, CN=device-uswest2-x-a"
        left=172.16.0.156
        leftsubnet=172.16.0.0/24
        right=35.x.255.x
        rightsubnet=10.2.0.0/16

そして iptables:

# iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

Chain DOCKER (0 references)
target     prot opt source               destination

Chain DOCKER-ISOLATION (0 references)
target     prot opt source               destination

関連情報