web-dev-qa-db-ja.com

AWSのインスタンス間のルーティング

同じVPCにLinux(172.31.25.177)とWindows(172.31.26.178)の2つのインスタンスがあります。両方のIPアドレスのセキュリティグループ内のすべてのポートを開いたところ、それらは相互に接続できます。

WindowsはオンプレミスVPNデバイスに接続されています。 LinuxからWindowsを介して自分のサイトにパケットをルーティングしたいと思います。

私はWindowsでRRASをセットアップし、Linuxのサイトネットワーク(10.98.0.0/16)へのゲートウェイとして彼の内部IPを指定しました。

root@ip-172-31-25-177:~# ip route show
default via 172.31.16.1 dev eth0
10.98.0.0/16 via 172.31.26.178 dev eth0

しかし、サイトリソースに接続しようとすると、Linux(172.31.25.177)からWindowsにパケットが届かないことがわかります。

これを機能させるには、VPCで何を設定する必要がありますか?

2
Evgeniy

VPCのメインルートテーブルオブジェクトにルートを追加する必要があります。

Webコンソールで、VPC管理ページに移動し、左側のメニューに表示されているようにルートテーブルをクリックします。メインルートテーブルを選択します(Yes under Main)。ページの下部にあるRoutesタブをクリックすると、ルートリストが表示されます。青い編集タブをクリックします。リストの下にある別のルートを追加をクリックします。 宛先の下にCIDRサブネットを入力します。 Targetの下にWindowsインスタンスのインスタンスIDまたはネットワークインターフェイスオブジェクトIDを入力します。すべてが正しいことを確認したら、保存をクリックします。 EC2 Instacesページに戻り、Windowsインスタンスを選択します。 アクション>>ネットワーク>>ソース/宛先の変更に移動します。チェック無効ソース/宛先。チェックして、Linuxインスタンスとの間のパケットを許可します。

5
Skaperen

VPCルーティングテーブルを変更する必要があります。サイトサブネットに静的ルートを追加し、ゲートウェイとしてWindowsのIPを使用する必要があります。 Windowsインスタンスはソース/宛先を設定する必要があります。 Falseにチェックします。ルーティングテーブルは次のようになります。

172.31.0.0/16   local                      Active  No
0.0.0.0/0       igw-xxxxxxxx               Active  No <-- this is your VPC internet gateway ID
10.98.0.0/16    eni-xxxxxxxx / i-xxxxxxxx  Active  No <-- this is windows instance

他のすべてがAWSを管理します。

1