EC2 インスタンスの IPv4 アドレスを管理する - Amazon Elastic Compute Cloud

EC2 インスタンスの IPv4 アドレスを管理する

インスタンスを起動するときに、パブリック IPv4 アドレスをインスタンスに割り当てることができます。インスタンスの IPv4 アドレスをコンソールに表示するには、Instances (インスタンス) ページまたは [Network Interfaces] (ネットワークインターフェイス) ページを使用します。

IPv4 アドレスの表示

Amazon EC2 コンソールを使用して、インスタンスのプライベート IPv4 アドレスおよびパブリック IPv4 アドレスを表示できます。また、インスタンスメタデータを使用して、インスタンス内からインスタンスのパブリック IPv4 アドレスとプライベート IPv4 アドレスを確認することもできます。詳細については、インスタンスメタデータを使用して EC2 インスタンスを管理するを参照してください。

パブリック IPv4 アドレスは、コンソールのネットワークインターフェイスのプロパティとして表示されますが、NAT によってプライマリプライベート IPv4 アドレスにマッピングされます。したがって、インスタンスのネットワークインターフェイスのプロパティを、例えば ifconfig (Linux) または ipconfig (Windows) を通して調べてみると、パブリック IPv4 アドレスは表示されていません。インスタンスからインスタンスのパブリック IPv4 アドレスを判断するには、インスタンスメタデータを使用します。

コマンドラインを使用してインスタンスの IPv4 アドレスを表示するには

次のいずれかのコマンドを使用できます。これらのコマンドラインインターフェイスの詳細については、「Amazon EC2 へのアクセス」を参照してください。

インスタンスのメタデータを使用してインスタンスの IPv4 アドレスを確認するには
  1. インスタンスに接続します。詳細については、「EC2 インスタンスに接続する」を参照してください。

  2. プライベート IP アドレスにアクセスするには、次のコマンドを使用します。

    IMDSv2
    [ec2-user ~]$ TOKEN=`curl -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 21600"` \ && curl -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/local-ipv4
    IMDSv1
    [ec2-user ~]$ curl http://169.254.169.254/latest/meta-data/local-ipv4
    Tools for Windows PowerShell
    PS C:\> Invoke-RestMethod http://169.254.169.254/latest/meta-data/local-ipv4
  3. パブリック IP アドレスにアクセスするには、次のコマンドを使用します。インスタンスに Elastic IP アドレスが関連付けられている場合、返される値は Elastic IP アドレスの値です。

    IMDSv2
    [ec2-user ~]$ TOKEN=`curl -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 21600"` \ && curl -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/public-ipv4
    IMDSv1
    [ec2-user ~]$ curl http://169.254.169.254/latest/meta-data/public-ipv4
    Tools for Windows PowerShell
    PS C:\> Invoke-RestMethod http://169.254.169.254/latest/meta-data/public-ipv4

インスタンス起動時のパブリック IPv4 アドレスの割り当て

各サブネットに、そのサブネット内で起動されるインスタンスにパブリック IP アドレスが割り当てられるかどうかを決定する属性があります。デフォルトでは、デフォルト以外のサブネットではこの属性が false に設定されており、デフォルトのサブネットではこの属性が true に設定されています。インスタンスを起動する場合、パブリック IPv4 アドレス指定機能を使用してインスタンスにパブリック IPv4 アドレスを割り当てるかどうかを制御することもできます。サブネットの IP アドレス指定属性のデフォルトの動作をオーバーライドできます。パブリック IPv4 アドレスは、Amazon のパブリック IPv4 アドレスプールから割り当てられ、デバイスインデックス eth0 を持つネットワークインターフェイスに割り当てられます。この機能は、インスタンス起動時の特定の条件により異なります。

考慮事項
  • ネットワークインターフェースに関連付けられた IP アドレスを管理することで、起動後にインスタンスからパブリック IP アドレスの割り当てを解除できます。パブリック IPv4 アドレスの詳細については、「パブリック IPv4 アドレス」を参照してください。

  • 複数のネットワークインターフェイスを指定した場合、パブリック IP アドレスを自動割り当てすることはできません。さらに、eth0 のように既存のネットワークインターフェイスを指定すると、パブリック IP の自動割り当て機能を使用してサブネット設定をオーバーライドすることはできません。

  • 起動時にパブリック IP アドレスをインスタンスに割り当てるかどうかにかかわらず、起動後に Elastic IP アドレスをインスタンスに関連付けることができます。詳細については、「Elastic IP アドレス」を参照してください。サブネットのパブリック IPv4 アドレス指定動作を変更することもできます。詳細については、「サブネットの IPv4 アドレス指定属性の変更」を参照してください。

コンソールを使用してインスタンス起動時にパブリック IPv4 アドレスを割り当てるには

手順に従ってインスタンスを起動し、[Network Settings] (ネットワーク設定) を設定するときに、[Auto-assign Public IP] (パブリック IP を自動的に割り当てる) オプションを選択します。

コマンドラインを使用してパブリック IP アドレス指定機能を有効または無効にするには

次のいずれかのコマンドを使用できます。これらのコマンドラインインターフェイスの詳細については、Amazon EC2 へのアクセスを参照してください。

  • run-instances コマンド (AWS CLI) で --associate-public-ip-address または --no-associate-public-ip-address オプションを使用します。

  • New-EC2Instance コマンド (AWS Tools for Windows PowerShell) で -AssociatePublicIp パラメータを使用します。