Windows のEC2インスタンスとprivate subnet内のEC2インスタンスをVPN接続したいとき、
Windows <=> ルータ <=> EC2(private subnet)
というような構成になるが、WindowsとルータをVPN接続しつつネットワーク接続も利用する場合は、
ネットワークの設定で [リモートネットワークでデフォルトゲートウェイを使う]
を外す必要がある。
チェックをつけた場合は、全てのトラフィックがVPNで接続しているネットワークのゲートウェイ経由でインターネットに接続しようとする(デフォルトゲートウェイがVPNのルータになる)。
しかし、チェックをつけない場合は、ネットワーク接続とVPN接続を併用できるものの、デフォルトゲートウェイが既存のものなので、 windows側のローカルIPが192.168.x.x とかでEC2側が10.0.x.x とかの場合は 10.0.x.xに対するトラフィックがネットワーク接続のデフォルトゲートウェイを通ってしまうため、 接続できなくなってしまう。
したがってwindowsのインスタンス上で、EC2のprivate subnetに対するルーティングを以下のように設定する必要がある。
route ADD <private subnetの宛先IP> MASK <private subnetのサブネットマスク> <ルータのIP>
ちなみに、私の試した環境ではWindowsのEC2インスタンスとVPN接続する場合は、 ネットワーク接続と併用しないと既存のRDP接続が失われてしまい、結果としてVPN接続できなかった…。
多分、デフォルトゲートウェイがVPNルータになるからかな?