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
Ouvrez la console Amazon EC2 à l’adresse https://console.aws.amazon.com/ec2/.
-
Dans le panneau de navigation, choisissez instances.
-
Sélectionnez l’instance.
-
Dans l’onglet Mise en réseau, recherchez Adresse IPv4 publique et Adresses IPv4 privées.
-
(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
-
Connectez-vous à votre instance. Pour de plus amples informations, consultez Connectez-vous à votre instance EC2.
-
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
-
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