内容
オンプレミス環境のPCからアカウントAのVPCエンドポイント~アカウントBのエンドポイントサービス経由でNLBにアクセスする構成を例にします。EC2上ではNginxがポート80で稼働しており、オンプレミスPCからはhttp://VPCエンドポイントのDNS名
を指定することによってEC上のNginxに接続します。
説明
TCPリスナーでパススルー構成となるため、EC2のSecurity Group C
で192.168.1.10/32:80
が必要そうですがなくても大丈夫です。なぜならPrivateLink経由でNLBにアクセスする場合は、NLBで送信元IPが書き換わって、EC2にアクセスするのはNLBのIPになるからです。
ちなみにPrivateLinkを使用しない場合はNLBでアドレスは書き換わりません。
※デフォルト設定の「クライアントIPアドレスの保持」が「有効」な場合。「無効」するとNLBのIPアドレスに書き換わる。
PrivateLink経由の接続の場合、「クライアントIPアドレスの保持」が「有効」でも「無効」でもNLBのIPアドレスに書き換わります。クライアントのIPアドレスを保持したい場合はProxy Protocolを有効にします。
その場合、nginx側のアクセスログに送信元IPアドレスを記録するためにはログフォーマットに$proxy_protocol_addr
の追加が必要です。