現在、2つのサイトに環境を設定しています。すべてのサーバーはLinuxベースです。最初のサイトは私のオフィスで、2番目のサイトはAWSです。
サイト間VPNを使用するAWSのVPCには2つのサーバーがあります。
- Web01 - 172.31.24.106およびRevproxy01 - 172.31.17.216
オフィスにサーバー(Raspberry PI)1台とIPカメラ1台があります。
- Rasberry01 - 192.168.102.1とカメラ1 - 192.168.102.79。
Raspberry PIはAPとして機能し(hostapdとdnsmasqを使用)、カメラはWi-Fi経由でPIに直接接続されます(カメラはローカルLANに接続されず、独自のLAN上のRaspberry PIにのみ接続されます)。
VPNはRaspberry1(IPSec Strongswan)にあり、AWS側に接続されているAWSサイト間VPNで構成されています。
多くの研究と時間を経て、すべてを準備して実行しました。
- 172.31.24.106および172.31.17.216は192.168.102.1およびpingを実行できます。
- 192.168.102.1 は 172.31.24.106 および 172.31.17.216 に ping を送信できます。
ルーティングは AWS 側で確立されるため、192.168.102.0/24 ネットワークへのトラフィックは 192.168.102.1 に移動します。
次のステップは、172.31.24.106から192.168.102.79にpingを送信することです。 192.168.102.1でTCPDumpを実行し、172.31.24.106で192.168.102.79をpingすると@ 192.168.102.1に到着したパケットを見ることができます.
172.31.24.106が192.168.102.79をpingすると、トラフィックがeth0(192.168.1.114)からwlan0(192.168.102.1)に転送され、次に正しい宛先192.168に転送されるようになります。 102.79
最終的にweb01とRevproxy01からカメラhttpフィードにアクセスしたいと思います。
ネットワーク図
+-------------+ +--------------+ +----------------------+
|Raspberry1 +--------------+ | | |
| |VPN to AWS | Office Router+-------------+ +-------------+ |
| +--------------+ | | | | | |
| |192.168.1.114 | | | +---+172.31.24.106| |
+-------------+ +--------------+ | | | | |
WLAN |192.168.102.1 | | +-------------+ |
|192.168.102.79 | | |
+-------------+ | | |
|Camera01 | | | |
| | | | +-------------+ |
| | | | | | |
| | | +---+172.31.14.216| |
+-------------+ | | | |
| +-------------+ |
| |
| |
| AWS VPC |
| |
+----------------------+
ベストアンサー1
私の考えでは、VPN全体はこの問題とは関係ありません。結局のところ、これは単純なルーティング問題のようです。
Raspberry1がトラフィックを(成功的に)転送するには、次のものが必要です。
Raspberry1でルーティング機能を有効にする(
sysctl
):net.ipv4.ip_forward = 1
次のように、Raspberry1のファイアウォールからの配信を許可します(ファイアウォールが有効な場合)。
iptables -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT iptables -A FORWARD -s 172.31.24.106 -d 192.168.102.79 -j ACCEPT
Camera01 のトラフィックが 192.168.102.1 から着信するように、192.168.102.1 を Camera01 のデフォルトゲートウェイまたは Raspberry1 の SNAT として設定する必要があります。