Utilizzo DescribeAddresses con un AWS SDK o una CLI - AWS Esempi di codice SDK

Sono disponibili altri esempi AWS SDK nel repository AWS Doc SDK Examples. GitHub

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Utilizzo DescribeAddresses con un AWS SDK o una CLI

Gli esempi di codice seguenti mostrano come utilizzare DescribeAddresses.

C++
SDK per C++
Nota

C'è altro da fare. GitHub Trova l'esempio completo e scopri di più sulla configurazione e l'esecuzione nel Repository di esempi di codice 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(); }
  • Per i dettagli sull'API, consulta la DescribeAddressessezione AWS SDK for C++ API Reference.

CLI
AWS CLI

Esempio 1: per recuperare i dettagli di tutti gli indirizzi IP elastici

Nell'esempio di describe addresses seguente vengono visualizzati tutti i dettagli relativi agli indirizzi IP elastici.

aws ec2 describe-addresses

Output:

{ "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" } ] }

Esempio 2: per recuperare i dettagli degli indirizzi IP elastici per EC2 -VPC

Nell'esempio di describe-addresses seguente vengono visualizzati i dettagli relativi agli indirizzi IP elastici utilizzati per le istanze in un VPC.

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

Output:

{ "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" } ] }

Esempio 3: per recuperare i dettagli di un indirizzo IP elastico specificato dall'ID di allocazione

L'describe-addressesesempio seguente visualizza i dettagli sull'indirizzo IP elastico con l'ID di allocazione specificato, associato a un'istanza in EC2 -VPC.

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

Output:

{ "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" } ] }

Esempio 4: per recuperare i dettagli di un indirizzo IP elastico specificato dall'indirizzo IP privato del VPC

L'describe-addressesesempio seguente mostra i dettagli sull'indirizzo IP elastico associato a un particolare indirizzo IP privato in EC2 -VPC.

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

Esempio 5: per recuperare i dettagli sugli indirizzi IP elastici in -Classic EC2

TThe l'describe-addressesesempio seguente mostra i dettagli sugli indirizzi IP elastici da utilizzare in EC2 -Classic.

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

Output:

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

Esempio 6: per recuperare i dettagli di un indirizzo IP elastico specificato dall'indirizzo IP pubblico

L'describe-addressesesempio seguente visualizza i dettagli sull'indirizzo IP elastico con il valore203.0.110.25, che è associato a un'istanza in EC2 -Classic.

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

Output:

{ "Addresses": [ { "InstanceId": "i-1234567890abcdef0", "PublicIp": "203.0.110.25", "PublicIpv4Pool": "amazon", "Domain": "standard" } ] }
JavaScript
SDK per JavaScript (v3)
Nota

C'è altro da fare. GitHub Trova l'esempio completo e scopri di più sulla configurazione e l'esecuzione nel Repository di esempi di codice 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; } } };
  • Per i dettagli sull'API, consulta la DescribeAddressessezione AWS SDK for JavaScript API Reference.

PowerShell
Strumenti per PowerShell

Esempio 1: questo esempio descrive l'indirizzo IP elastico specificato per le istanze in EC2 -Classic.

Get-EC2Address -AllocationId eipalloc-12345678

Output:

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

Esempio 2: questo esempio descrive gli indirizzi IP elastici per le istanze in un VPC. Questa sintassi richiede la PowerShell versione 3 o successiva.

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

Esempio 3: questo esempio descrive l'indirizzo IP elastico specificato per le istanze in EC2 -Classic.

Get-EC2Address -PublicIp 203.0.113.17

Output:

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

Esempio 4: questo esempio descrive gli indirizzi IP elastici per le istanze in -Classic. EC2 Questa sintassi richiede la PowerShell versione 3 o successiva.

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

Esempio 5: questo esempio descrive tutti i tuoi indirizzi IP elastici.

Get-EC2Address

Esempio 6: questo esempio restituisce l'IP pubblico e privato per l'ID dell'istanza fornito nel filtro

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

Output:

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

Esempio 7: questo esempio recupera tutto l'Elastic IPs con il relativo ID di allocazione, l'ID di associazione e gli ID di istanza

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

Output:

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

Esempio 8: Questo esempio recupera l'elenco di indirizzi EC2 IP che corrispondono alla chiave di tag «Category» con il valore «Prod»

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

Output:

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}
  • Per i dettagli sull'API, vedere DescribeAddressesin AWS Strumenti per PowerShell Cmdlet Reference.

SAP ABAP
SDK per SAP ABAP
Nota

C'è altro su. GitHub Trova l'esempio completo e scopri di più sulla configurazione e l'esecuzione nel Repository di esempi di codice 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.
  • Per i dettagli sulle API, DescribeAddressesconsulta AWS SDK for SAP ABAP API reference.