.png)
3 つのパブリック サブネット (IGW を指す) と 3 つのプライベート サブネット (それぞれに NAT GW がある) を持つ新しい VPC (10.0.0.0/16) があります。パブリック サブネットに OpenVPN アプライアンスをデプロイし、NAT モードを使用するように構成しました (Yes, using NAT
ルーティング構成で)。また、プライベート サブネットの 1 つにテスト インスタンスがあります。OpenVPN インスタンスとテスト インスタンスの両方に、"寛大な" 柔軟性 (つまり、テスト目的ですべての入出力が許可される) を備えた SG グループがあります。OpenVPN では、10.0.0.0/16
現場で構成しましたSpecify the private subnets to which all clients should be given access (one per line):
。
私の Mac (ホーム ネットワーク 192.168.178.0/24 上) からトンネルを確立して、テスト インスタンスに簡単にアクセスできます。すべて順調です。
ここでルートモードに切り替えたいと思います。
- ルーティング モードを に変更しました
Yes, using Routing
。OpenVPN インスタンスの送信元/宛先チェックを無効にしました。 - 私は、VPC 内の 4 つのルーティング テーブルすべて (プライベート サブネット x 3 つとパブリック サブネット x 1 つ) に静的ルートを追加して、
192.168.178.0/24
(ホーム ネットワーク) 宛のトラフィックが OpenVPN インスタンスに送信されるよう指定しました (おそらく、パブリック サブネットではこれは不要でした)。 - に加えて、フィールド
192.168.178.0/24
に を追加しました(必須かどうかはわかりません) 。Specify the private subnets to which all clients should be given access (one per line):
10.0.0.0/16
- ログインに使用しているユーザーのユーザー権限を再構成し
Use Routing
、上記の両方のサブネット (10. と 192.) を再度指定しました。
トンネルを確立することはできます。OpenVPN インスタンスの内部 IP にアクセスできます。
$ traceroute 10.0.4.223
traceroute to 10.0.4.223 (10.0.4.223), 64 hops max, 52 byte packets
1 10.0.4.223 (10.0.4.223) 178.345 ms 174.470 ms 173.680 ms
$
しかし、プライベートサブネット内のテストインスタンスにアクセスできません。
$ traceroute 10.0.165.139
traceroute to 10.0.165.139 (10.0.165.139), 64 hops max, 52 byte packets
1 172.27.232.1 (172.27.232.1) 194.976 ms 177.014 ms 174.402 ms
2 * * *
3 * * *
4 * * *
^C
$
興味深いことに、OpenVPN サーバーに ssh で接続し、トンネルを開始したローカル ワークステーションで NGINX を curl しようとしても、アクセスできません。ワークステーションは OpenVPN サーバーにアクセスできるようですが (上記のトレースを参照10.0.4.223
)、OpenVPN サーバーはワークステーションにアクセスできません (何らかの理由により)。
ワークステーションから開始されたフローは、OpenVPN インスタンスへの (およびそこからの) ルートを見つけることができるようです。ただし、ワークステーションからテスト インスタンスへの (およびそこからの) ルートはどこかで途切れ、OpenVPN インスタンスからワークステーションへの開始時にも途切れているようです (curl を参照)。
答え1
最終的に、OpenVPN アクセス サーバー アプライアンスは、ローカル サブネット上のクライアントのネイティブ IP に接続するように構成できないことがわかりました。ただし、VPN によって割り当てられたトンネル IP 経由でクライアントに到達することはできます。この IP は、ユーザーごとに静的に構成することも、アプライアンスで定義されたプールから取得することもできます。
私の場合は両方を設定しました (画像を参照)。
重要なのは、これらがルーティング情報で使用する必要のあるサブネットでもあるということです。つまり、10.0.0.0/16 ネットワークにある IP は、割り当てられた 172.27 アドレスの 1 つでクライアント デバイスに到達できるため、ルーティング テーブルで指定する必要があるのは 172.27 ネットワークです (クライアント デバイスのローカル ネイティブ ネットワーク (私の例では 192.168.178.0/24) ではありません)。