Utilisation de DescribeAddresses avec un kit AWS SDK ou une interface de ligne de commande - Exemples de code de kit AWS SDK

D’autres exemples de kits AWS SDK sont disponibles dans le référentiel GitHub AWS Doc SDK Examples.

Utilisation de DescribeAddresses avec un kit AWS SDK ou une interface de ligne de commande

Les exemples de code suivants illustrent comment utiliser DescribeAddresses.

C++
kit SDK pour C++
Note

Il y en a plus sur GitHub. Trouvez l’exemple complet et découvrez comment le configurer et l’exécuter dans le référentiel d’exemples de code AWS.

//! Describe all Elastic IP addresses. /*! \param clientConfiguration: AWS client configuration. \return bool: Function succeeded. */ bool AwsDoc::EC2::describeAddresses( const Aws::Client::ClientConfiguration &clientConfiguration) { Aws::EC2::EC2Client ec2Client(clientConfiguration); Aws::EC2::Model::DescribeAddressesRequest request; Aws::EC2::Model::DescribeAddressesOutcome outcome = ec2Client.DescribeAddresses(request); if (outcome.IsSuccess()) { std::cout << std::left << std::setw(20) << "InstanceId" << std::setw(15) << "Public IP" << std::setw(10) << "Domain" << std::setw(30) << "Allocation ID" << std::setw(25) << "NIC ID" << std::endl; const Aws::Vector<Aws::EC2::Model::Address> &addresses = outcome.GetResult().GetAddresses(); for (const auto &address: addresses) { Aws::String domainString = Aws::EC2::Model::DomainTypeMapper::GetNameForDomainType( address.GetDomain()); std::cout << std::left << std::setw(20) << address.GetInstanceId() << std::setw(15) << address.GetPublicIp() << std::setw(10) << domainString << std::setw(30) << address.GetAllocationId() << std::setw(25) << address.GetNetworkInterfaceId() << std::endl; } } else { std::cerr << "Failed to describe Elastic IP addresses:" << outcome.GetError().GetMessage() << std::endl; } return outcome.IsSuccess(); }
  • Pour plus d’informations sur l’API, consultez la section DescribeAddresses (français non garanti) dans la Référence d’API AWS SDK pour C++.

CLI
AWS CLI

Exemple 1 : récupération des détails de toutes vos adresses IP Elastic

L’exemple describe addresses suivant affiche les détails de vos adresses IP Elastic.

aws ec2 describe-addresses

Sortie :

{ "Addresses": [ { "InstanceId": "i-1234567890abcdef0", "PublicIp": "198.51.100.0", "PublicIpv4Pool": "amazon", "Domain": "standard" }, { "Domain": "vpc", "PublicIpv4Pool": "amazon", "InstanceId": "i-1234567890abcdef0", "NetworkInterfaceId": "eni-12345678", "AssociationId": "eipassoc-12345678", "NetworkInterfaceOwnerId": "123456789012", "PublicIp": "203.0.113.0", "AllocationId": "eipalloc-12345678", "PrivateIpAddress": "10.0.1.241" } ] }

Exemple 2 : récupération des détails de vos adresses IP Elastic pour EC2-VPC

L’exemple describe-addresses suivant affiche les détails de vos adresses IP Elastic à utiliser avec des instances dans un VPC.

aws ec2 describe-addresses \ --filters "Name=domain,Values=vpc"

Sortie :

{ "Addresses": [ { "Domain": "vpc", "PublicIpv4Pool": "amazon", "InstanceId": "i-1234567890abcdef0", "NetworkInterfaceId": "eni-12345678", "AssociationId": "eipassoc-12345678", "NetworkInterfaceOwnerId": "123456789012", "PublicIp": "203.0.113.0", "AllocationId": "eipalloc-12345678", "PrivateIpAddress": "10.0.1.241" } ] }

Exemple 3 : récupération des détails d’une adresse IP Elastic spécifiée selon l’identifiant d’allocation

L’exemple describe-addresses suivant affiche des détails sur l’adresse IP Elastic avec l’ID d’allocation spécifié, qui est associée à une instance dans EC2-VPC.

aws ec2 describe-addresses \ --allocation-ids eipalloc-282d9641

Sortie :

{ "Addresses": [ { "Domain": "vpc", "PublicIpv4Pool": "amazon", "InstanceId": "i-1234567890abcdef0", "NetworkInterfaceId": "eni-1a2b3c4d", "AssociationId": "eipassoc-123abc12", "NetworkInterfaceOwnerId": "1234567891012", "PublicIp": "203.0.113.25", "AllocationId": "eipalloc-282d9641", "PrivateIpAddress": "10.251.50.12" } ] }

Exemple 4 : récupération des détails d’une adresse IP Elastic spécifiée au moyen de son adresse IP privée de VPC

L’exemple describe-addresses suivant affiche des détails sur l’adresse IP Elastic associée à une adresse IP privée particulière dans EC2-VPC.

aws ec2 describe-addresses \ --filters "Name=private-ip-address,Values=10.251.50.12"

Exemple 5 : récupération des détails de toutes vos adresses IP Elastic dans EC2-Classic

L’exemple describe-addresses suivant affiche des détails sur vos adresses IP Elastic à utiliser dans EC2-Classic.

aws ec2 describe-addresses \ --filters "Name=domain,Values=standard"

Sortie :

{ "Addresses": [ { "InstanceId": "i-1234567890abcdef0", "PublicIp": "203.0.110.25", "PublicIpv4Pool": "amazon", "Domain": "standard" } ] }

Exemple 6 : récupération des détails d’une adresse IP Elastic spécifiée au moyen de son adresse IP publique

L’exemple describe-addresses suivant affiche des détails sur l’adresse IP Elastic avec la valeur 203.0.110.25, qui est associée à une instance dans EC2-Classic.

aws ec2 describe-addresses \ --public-ips 203.0.110.25

Sortie :

{ "Addresses": [ { "InstanceId": "i-1234567890abcdef0", "PublicIp": "203.0.110.25", "PublicIpv4Pool": "amazon", "Domain": "standard" } ] }
  • Pour plus d’informations sur l’API, consultez la rubrique DescribeAddresses dans l’AWS CLI Command Reference.

JavaScript
Kit SDK pour JavaScript (v3)
Note

Il y en a plus sur GitHub. Trouvez l’exemple complet et découvrez comment le configurer et l’exécuter dans le référentiel d’exemples de code AWS.

import { DescribeAddressesCommand, EC2Client } from "@aws-sdk/client-ec2"; /** * Describes the specified Elastic IP addresses or all of your Elastic IP addresses. * @param {{ allocationId: string }} options */ export const main = async ({ allocationId }) => { const client = new EC2Client({}); const command = new DescribeAddressesCommand({ // You can omit this property to show all addresses. AllocationIds: [allocationId], }); try { const { Addresses } = await client.send(command); const addressList = Addresses.map((address) => ` • ${address.PublicIp}`); console.log("Elastic IP addresses:"); console.log(addressList.join("\n")); } catch (caught) { if ( caught instanceof Error && caught.name === "InvalidAllocationID.NotFound" ) { console.warn(`${caught.message}. Please provide a valid AllocationId.`); } else { throw caught; } } };
  • Pour plus d’informations sur l’API, consultez la section DescribeAddresses (français non garanti) dans la Référence d’API AWS SDK pour JavaScript.

PowerShell
Outils pour PowerShell V4

Exemple 1 : cet exemple décrit l’adresse IP Elastic spécifiée pour les instances dans EC2-Classic.

Get-EC2Address -AllocationId eipalloc-12345678

Sortie :

AllocationId : eipalloc-12345678 AssociationId : eipassoc-12345678 Domain : vpc InstanceId : i-87654321 NetworkInterfaceId : eni-12345678 NetworkInterfaceOwnerId : 12345678 PrivateIpAddress : 10.0.2.172 PublicIp : 198.51.100.2

Exemple 2 : cet exemple décrit vos adresses IP Elastic spécifiées pour les instances dans un VPC. Cette syntaxe nécessite PowerShell version 3 ou ultérieure.

Get-EC2Address -Filter @{ Name="domain";Values="vpc" }

Exemple 3 : cet exemple décrit l’adresse IP Elastic spécifiée pour les instances dans EC2-Classic.

Get-EC2Address -PublicIp 203.0.113.17

Sortie :

AllocationId : AssociationId : Domain : standard InstanceId : i-12345678 NetworkInterfaceId : NetworkInterfaceOwnerId : PrivateIpAddress : PublicIp : 203.0.113.17

Exemple 4 : cet exemple décrit vos adresses IP Elastic spécifiées pour les instances dans EC2-Classic. Cette syntaxe nécessite PowerShell version 3 ou ultérieure.

Get-EC2Address -Filter @{ Name="domain";Values="standard" }

Exemple 5 : cet exemple décrit toutes vos adresses IP Elastic.

Get-EC2Address

Exemple 6 : cet exemple renvoie les adresses IP publique et privée pour l’identifiant d’instance fourni dans le filtre

Get-EC2Address -Region eu-west-1 -Filter @{Name="instance-id";Values="i-0c12d3f4f567ffb89"} | Select-Object PrivateIpAddress, PublicIp

Sortie :

PrivateIpAddress PublicIp ---------------- -------- 10.0.0.99 63.36.5.227

Exemple 7 : cet exemple récupère toutes les adresses IP élastiques avec leur identifiant d’allocation, leur identifiant d’association et leurs identifiants d’instance

Get-EC2Address -Region eu-west-1 | Select-Object InstanceId, AssociationId, AllocationId, PublicIp

Sortie :

InstanceId AssociationId AllocationId PublicIp ---------- ------------- ------------ -------- eipalloc-012e3b456789e1fad 17.212.120.178 i-0c123dfd3415bac67 eipassoc-0e123456bb7890bdb eipalloc-01cd23ebf45f7890c 17.212.124.77 eipalloc-012345678eeabcfad 17.212.225.7 i-0123d405c67e89a0c eipassoc-0c123b456783966ba eipalloc-0123cdd456a8f7892 37.216.52.173 i-0f1bf2f34c5678d09 eipassoc-0e12934568a952d96 eipalloc-0e1c23e4d5e6789e4 37.218.222.278 i-012e3cb4df567e8aa eipassoc-0d1b2fa4d67d03810 eipalloc-0123f456f78a01b58 37.210.82.27 i-0123bcf4b567890e1 eipassoc-01d2345f678903fb1 eipalloc-0e1db23cfef5c45c7 37.215.222.270

Exemple 8 : cet exemple extrait la liste des adresses IP EC2 correspondant à la clé de balise « Catégorie » à la valeur « Prod’

Get-EC2Address -Filter @{Name="tag:Category";Values="Prod"}

Sortie :

AllocationId : eipalloc-0123f456f81a01b58 AssociationId : eipassoc-0d1b23a456d103810 CustomerOwnedIp : CustomerOwnedIpv4Pool : Domain : vpc InstanceId : i-012e3cb4df567e1aa NetworkBorderGroup : eu-west-1 NetworkInterfaceId : eni-0123f41d5a60d5f40 NetworkInterfaceOwnerId : 123456789012 PrivateIpAddress : 192.168.1.84 PublicIp : 34.250.81.29 PublicIpv4Pool : amazon Tags : {Category, Name}
  • Pour plus de détails sur l’API, consultez DescribeAddresses dans la Référence des applets de commande pour les Outils AWS pour PowerShell (V4).

Outils pour PowerShell V5

Exemple 1 : cet exemple décrit l’adresse IP Elastic spécifiée pour les instances dans EC2-Classic.

Get-EC2Address -AllocationId eipalloc-12345678

Sortie :

AllocationId : eipalloc-12345678 AssociationId : eipassoc-12345678 Domain : vpc InstanceId : i-87654321 NetworkInterfaceId : eni-12345678 NetworkInterfaceOwnerId : 12345678 PrivateIpAddress : 10.0.2.172 PublicIp : 198.51.100.2

Exemple 2 : cet exemple décrit vos adresses IP Elastic spécifiées pour les instances dans un VPC. Cette syntaxe nécessite PowerShell version 3 ou ultérieure.

Get-EC2Address -Filter @{ Name="domain";Values="vpc" }

Exemple 3 : cet exemple décrit l’adresse IP Elastic spécifiée pour les instances dans EC2-Classic.

Get-EC2Address -PublicIp 203.0.113.17

Sortie :

AllocationId : AssociationId : Domain : standard InstanceId : i-12345678 NetworkInterfaceId : NetworkInterfaceOwnerId : PrivateIpAddress : PublicIp : 203.0.113.17

Exemple 4 : cet exemple décrit vos adresses IP Elastic spécifiées pour les instances dans EC2-Classic. Cette syntaxe nécessite PowerShell version 3 ou ultérieure.

Get-EC2Address -Filter @{ Name="domain";Values="standard" }

Exemple 5 : cet exemple décrit toutes vos adresses IP Elastic.

Get-EC2Address

Exemple 6 : cet exemple renvoie les adresses IP publique et privée pour l’identifiant d’instance fourni dans le filtre

Get-EC2Address -Region eu-west-1 -Filter @{Name="instance-id";Values="i-0c12d3f4f567ffb89"} | Select-Object PrivateIpAddress, PublicIp

Sortie :

PrivateIpAddress PublicIp ---------------- -------- 10.0.0.99 63.36.5.227

Exemple 7 : cet exemple récupère toutes les adresses IP élastiques avec leur identifiant d’allocation, leur identifiant d’association et leurs identifiants d’instance

Get-EC2Address -Region eu-west-1 | Select-Object InstanceId, AssociationId, AllocationId, PublicIp

Sortie :

InstanceId AssociationId AllocationId PublicIp ---------- ------------- ------------ -------- eipalloc-012e3b456789e1fad 17.212.120.178 i-0c123dfd3415bac67 eipassoc-0e123456bb7890bdb eipalloc-01cd23ebf45f7890c 17.212.124.77 eipalloc-012345678eeabcfad 17.212.225.7 i-0123d405c67e89a0c eipassoc-0c123b456783966ba eipalloc-0123cdd456a8f7892 37.216.52.173 i-0f1bf2f34c5678d09 eipassoc-0e12934568a952d96 eipalloc-0e1c23e4d5e6789e4 37.218.222.278 i-012e3cb4df567e8aa eipassoc-0d1b2fa4d67d03810 eipalloc-0123f456f78a01b58 37.210.82.27 i-0123bcf4b567890e1 eipassoc-01d2345f678903fb1 eipalloc-0e1db23cfef5c45c7 37.215.222.270

Exemple 8 : cet exemple extrait la liste des adresses IP EC2 correspondant à la clé de balise « Catégorie » à la valeur « Prod’

Get-EC2Address -Filter @{Name="tag:Category";Values="Prod"}

Sortie :

AllocationId : eipalloc-0123f456f81a01b58 AssociationId : eipassoc-0d1b23a456d103810 CustomerOwnedIp : CustomerOwnedIpv4Pool : Domain : vpc InstanceId : i-012e3cb4df567e1aa NetworkBorderGroup : eu-west-1 NetworkInterfaceId : eni-0123f41d5a60d5f40 NetworkInterfaceOwnerId : 123456789012 PrivateIpAddress : 192.168.1.84 PublicIp : 34.250.81.29 PublicIpv4Pool : amazon Tags : {Category, Name}
  • Pour plus de détails sur l’API, consultez DescribeAddresses dans la Référence des applets de commande pour les Outils AWS pour PowerShell (V5).

SAP ABAP
Kit SDK pour SAP ABAP
Note

Il y en a plus sur GitHub. Trouvez l’exemple complet et découvrez comment le configurer et l’exécuter dans le référentiel d’exemples de code AWS.

TRY. oo_result = lo_ec2->describeaddresses( ). " oo_result is returned for testing purposes. " DATA(lt_addresses) = oo_result->get_addresses( ). MESSAGE 'Retrieved information about Elastic IP addresses.' TYPE 'I'. CATCH /aws1/cx_rt_service_generic INTO DATA(lo_exception). DATA(lv_error) = |"{ lo_exception->av_err_code }" - { lo_exception->av_err_msg }|. MESSAGE lv_error TYPE 'E'. ENDTRY.
  • Pour plus d’informations sur l’API, consultez la section DescribeAddresses (français non garanti) dans la Référence d’API du kit SDK AWS pour SAP ABAP.