Gérez les adresses IPv4 de vos instances EC2 - Amazon Elastic Compute Cloud

Gérez les adresses IPv4 de vos instances EC2

Vous pouvez attribuer une adresse IPv4 publique à votre instance lorsque vous la lancez. Vous pouvez afficher les adresses IPv4 de votre dans la console via la page Instances ou la page Interfaces réseau.

Attribution d’une adresse IPv4 publique lors du lancement

Chaque sous-réseau a un attribut qui détermine si une adresse IP publique est attribuée aux instances lancées dans ce sous-réseau. Par défaut, cet attribut est configuré sur false pour les sous-réseaux personnalisés et sur true pour les sous-réseaux par défaut. Lorsque vous lancez une instance, une fonction d’adressage IPv4 public vous permet également de vérifier si votre instance dispose d’une adresse IPv4 publique. Vous pouvez remplacer le comportement par défaut de l’attribut d’adressage IP du sous-réseau. L’adresse IPv4 publique est attribuée à partir du pool d’adresses IPv4 publiques d’Amazon, et est attribuée à l’interface réseau avec l’index du périphérique 0. Cette fonction dépend de certaines conditions au moment du lancement de votre instance.

Considérations
  • Vous pouvez désattribuer l'adresse IP publique de votre instance après le lancement en gérant les adresses IP associées à une interface réseau. Pour plus d’informations sur les adresses IPv4 publiques, consultez Adresses IPv4 publiques.

  • Vous ne pouvez pas attribuer automatiquement une adresse IP publique si vous spécifiez plusieurs interfaces réseau. En outre, vous ne pouvez pas remplacer le paramètre de sous-réseau à l’aide de la fonction « auto-assign IP public », si vous spécifiez une interface réseau existante pour l'index de périphérique 0.

  • Si vous attribuiez ou non une adresse IP publique à votre instance lors du lancement, vous pouvez associer une adresse IP Elastic à votre instance après son lancement. Pour de plus amples informations, consultez Adresses IP Elastic. Vous pouvez également modifier le comportement de l’adressage IPv4 public de votre sous-réseau. Pour plus d’informations, consultez la section Modifier l’attribut d’adressage IPv4 public de votre sous-réseau.

Console
Pour attribuer une adresse IPv4 publique lors du lancement

Suivez la procédure décrite pour lancer une instance, et lorsque vous configurez les Paramètres réseau, choisissez l’option Auto-assign Public IP (Attribuer automatiquement l’adresse IP publique).

AWS CLI
Pour attribuer une adresse IPv4 publique lors du lancement

Utilisez la commande run-instances avec l’option --associate-public-ip-address.

--associate-public-ip-address
PowerShell
Pour attribuer une adresse IPv4 publique lors du lancement

Utilisez la commande New-EC2Instance avec le paramètre -AssociatePublicIp.

-AssociatePublicIp $true

Attribution d’une adresse IPv4 privée au lancement

Vous pouvez spécifier une adresse IPv4 privée à partir de la plage d’adresses IPv4 du sous-réseau, ou laisser Amazon EC2 en choisir une à votre place. Cette adresse est attribuée à l'interface réseau principale.

Pour attribuer une adresse IPv4 après le lancement, consultez la section Attribution d’adresses IP secondaires à une instance.

Console
Pour attribuer une adresse IPv4 privée au lancement

Suivez la procédure pour lancer une instance. Lorsque vous configurez les paramètres réseau, développez Configuration réseau avancée et saisissez une valeur pour Adresse IP principale.

AWS CLI
Pour attribuer une adresse IPv4 privée au lancement

Utilisez la commande run-instances avec l’option --private-ip-address.

--private-ip-addresses 10.251.50.12

Pour laisser Amazon EC2 choisir l’adresse IP, omettez cette option.

PowerShell
Pour attribuer une adresse IPv4 privée au lancement

Utilisez la commande New-EC2Instance avec le paramètre -PrivateIpAddress.

-PrivateIpAddress 10.251.50.12

Pour laisser Amazon EC2 choisir l’adresse IP, omettez ce paramètre.

Affichage de l’adresse IPv4 principale

L’adresse IPv4 publique est affichée comme propriété de l’interface réseau dans la console, mais elle est mappée à l’adresse IPv4 privée principale via la traduction d’adresses réseau (NAT, Network Address Translation). Par conséquent, si vous inspectez les propriétés de votre interface réseau sur votre instance, par exemple via ifconfig (Linux) ou ipconfig (Windows), l’adresse IPv4 publique ne s’affiche pas.

Console
Pour afficher les adresses IPv4 d’une instance
  1. Ouvrez la console Amazon EC2 à l’adresse https://console.aws.amazon.com/ec2/.

  2. Dans le panneau de navigation, choisissez instances.

  3. Sélectionnez l’instance.

  4. Dans l’onglet Mise en réseau, recherchez Adresse IPv4 publique et Adresses IPv4 privées.

  5. (Facultatif) L’onglet Mise en réseau contient également les interfaces réseau et les adresses IP Elastic de l’instance.

AWS CLI
Pour afficher l’adresse IPv4 principale d’une instance

Utilisez la commande describe-instances.

aws ec2 describe-instances \ --instance-ids i-1234567890abcdef0 \ --query "Reservations[].Instances[].PrivateIpAddress" \ --output text

Voici un exemple de sortie.

10.251.50.12
PowerShell
Pour afficher l’adresse IPv4 principale d’une instance

Utilisez l’applet de commande Get-EC2Instance.

(Get-EC2Instance ` -InstanceId i-1234567890abcdef0).Instances.PrivateIpAddress

Voici un exemple de sortie.

10.251.50.12

Affichage des adresses IPv4 à l’aide des métadonnées d’instance

Vous pouvez obtenir les adresses IPv4 de votre instance en récupérant les métadonnées d’instance. Pour de plus amples informations, consultez Utiliser les métadonnées des instances pour gérer votre instance EC2.

Pour afficher les adresses IPv4 à l’aide des métadonnées d’instance
  1. Connectez-vous à votre instance. Pour de plus amples informations, consultez Connectez-vous à votre instance EC2.

  2. Exécutez une des commandes suivantes :

    IMDSv2
    Linux

    Exécutez la commande suivante à partir de votre instance Linux.

    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
    Windows

    Exécutez la commande suivante à partir de votre instance Windows.

    [string]$token = Invoke-RestMethod -Headers @{"X-aws-ec2-metadata-token-ttl-seconds" = "21600"} ` -Method PUT -Uri http://169.254.169.254/latest/api/token
    Invoke-RestMethod -Headers @{"X-aws-ec2-metadata-token" = $token} ` -Method GET -Uri http://169.254.169.254/latest/meta-data/local-ipv4
    IMDSv1
    Linux

    Exécutez la commande suivante à partir de votre instance Linux.

    curl http://169.254.169.254/latest/meta-data/local-ipv4
    Windows

    Exécutez la commande suivante à partir de votre instance Windows.

    Invoke-RestMethod http://169.254.169.254/latest/meta-data/local-ipv4
  3. Utilisez l’une des commandes suivantes pour accéder à l’adresse IP publique. Si une adresse IP Elastic est associée à l’instance, la commande renvoie l’adresse IP Elastic.

    IMDSv2
    Linux

    Exécutez la commande suivante à partir de votre instance Linux.

    [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
    Windows

    Exécutez la commande suivante à partir de votre instance Windows.

    [string]$token = Invoke-RestMethod -Headers @{"X-aws-ec2-metadata-token-ttl-seconds" = "21600"} ` -Method PUT -Uri http://169.254.169.254/latest/api/token
    Invoke-RestMethod -Headers @{"X-aws-ec2-metadata-token" = $token} ` -Method GET -Uri http://169.254.169.254/latest/meta-data/public-ipv4
    IMDSv1
    Linux

    Exécutez la commande suivante à partir de votre instance Linux.

    curl http://169.254.169.254/latest/meta-data/public-ipv4
    Windows

    Exécutez la commande suivante à partir de votre instance Windows.

    Invoke-RestMethod http://169.254.169.254/latest/meta-data/public-ipv4