3
3

More than 3 years have passed since last update.

インターフェイス VPC エンドポイント (AWS PrivateLink)についてのメモ

Posted at

メモ

  • AWSサービス毎、サブネット毎(ただし同じAZのサブネットは2つ以上指定できない)に有効にできる
    • 例えば「EC2」のAPIエンドポイントに対して、既存のサブネット4つのうち2つをインターフェイス VPC エンドポイントを有効にする、等
  • 有効にするとそのサブネットでENIが生成される
  • 有効にしたサブネット(AZ)毎にプライベートDNS名が払い出される
  • 「Private DNS names enabled」をEnabledにするとデフォルトのAPIエンドポイントのIPアドレスがVPCエンドポイントになる

kousei.png

検証

上図のようにインターネットへの到達性の無いプライベートサブネットのインスタンスに踏み台からログインし、動作確認する。

「Private DNS names enabled」が有効の場合

デフォルトのAPIエンドポイントに対して dig する。VPCエンドポイントのIPアドレスが返答されている

[ec2-user@ip-10-0-1-64 ~]$ dig ec2.ap-northeast-1.amazonaws.com

;; ANSWER SECTION:
ec2.ap-northeast-1.amazonaws.com. 60 IN A       10.0.0.254
ec2.ap-northeast-1.amazonaws.com. 60 IN A       10.0.1.11

当然、インターネット(例: 8.8.8.8)には到達性は無いが、AWS APIは使用できる。

[ec2-user@ip-10-0-1-64 ~]$ ping 8.8.8.8 -c 1 -W 3
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.


--- 8.8.8.8 ping statistics ---
1 packets transmitted, 0 received, 100% packet loss, time 0ms


[ec2-user@ip-10-0-1-64 ~]$ aws ec2 describe-instances --query 'Reservations[].Instances[].{ipaddress:NetworkInterfaces[].PrivateIpAddress[]'}
[
    {
        "ipaddress": [
            "172.31.15.184"
        ]
    }
]

「Private DNS names enabled」が無効の場合

デフォルトのAPIエンドポイントは普通にグローバルIPアドレスが返答される。

[ec2-user@ip-10-0-1-64 ~]$ dig ec2.ap-northeast-1.amazonaws.com

;; ANSWER SECTION:
ec2.ap-northeast-1.amazonaws.com. 15 IN A       54.239.96.159

プライベートサブネットからはインターネットに到達性が無いので、当然APIも実行できない

[ec2-user@ip-10-0-1-64 ~]$ aws ec2 describe-instances --query 'Reservations[].Instances[].{ipaddress:NetworkInterfaces[].PrivateIpAddress[]'}

ただし、プライベートDNS名で発行されたエンドポイントのURLを直接指定( endpoint-url )すれば実行できる。

[ec2-user@ip-10-0-1-64 ~]$ aws ec2 describe-instances --query 'Reservations[].Instances[].{ipaddress:NetworkInterfaces[].PrivateIpAddress[]'} --endpoint-url "https://vpce-0c428aae6eb77d7a8-hekvq062.ec2.ap-northeast-1.vpce.amazonaws.com"
[
    {
        "ipaddress": [
            "172.31.15.184"
        ]
    }
]
3
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
3