

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 di indirizzi IP elastici con Amazon EC2 con AWS SDK per PHP versione 3
<a name="ec2-examples-using-elastic-ip-addresses"></a>

Un indirizzo IP elastico è un indirizzo IP statico progettato per il cloud computing dinamico. Un indirizzo IP elastico è associato al tuo. Account AWS Si tratta di un indirizzo IP pubblico, raggiungibile da Internet. Se l'istanza in uso non dispone di un indirizzo IP pubblico, puoi associare un indirizzo IP elastico all'istanza per abilitare la comunicazione con Internet.

Gli esempi seguenti mostrano come:
+ Descrivi una o più istanze utilizzando [DescribeInstances](https://docs.aws.amazon.com/aws-sdk-php/v3/api/api-ec2-2016-11-15.html#describeinstances).
+ Acquisisci un indirizzo IP elastico utilizzando [AllocateAddress](https://docs.aws.amazon.com/aws-sdk-php/v3/api/api-ec2-2016-11-15.html#allocateaddress).
+ Associa un indirizzo IP elastico a un'istanza utilizzando [AssociateAddress](https://docs.aws.amazon.com/aws-sdk-php/v3/api/api-ec2-2016-11-15.html#associateaddress).
+ Rilascia un indirizzo IP elastico utilizzando [ReleaseAddress](https://docs.aws.amazon.com/aws-sdk-php/v3/api/api-ec2-2016-11-15.html#releaseaddress).

Tutto il codice di esempio per il AWS SDK per PHP è [disponibile qui GitHub](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/php/example_code).

## Credenziali
<a name="examplecredentials"></a>

Prima di eseguire il codice di esempio, configurate AWS le vostre credenziali, come descritto in[Autenticazione con l' AWS utilizzo AWS SDK per PHP della versione 3](credentials.md). Quindi importate il file AWS SDK per PHP, come descritto in[Installazione della AWS SDK per PHP versione 3](getting-started_installation.md).

## Descrivi un'istanza
<a name="describe-an-instance"></a>

 **Importazioni** 

```
require 'vendor/autoload.php';

use Aws\Ec2\Ec2Client;
```

 **Codice di esempio** 

```
$ec2Client = new Aws\Ec2\Ec2Client([
    'region' => 'us-west-2',
    'version' => '2016-11-15',
    'profile' => 'default'
]);
$result = $ec2Client->describeInstances();
echo "Instances: \n";
foreach ($result['Reservations'] as $reservation) {
    foreach ($reservation['Instances'] as $instance) {
        echo "InstanceId: {$instance['InstanceId']} - {$instance['State']['Name']} \n";
    }
}
```

## Assegna e associa un indirizzo
<a name="allocate-and-associate-an-address"></a>

 **Importazioni** 

```
require 'vendor/autoload.php';
```

 **Codice di esempio** 

```
$ec2Client = new Aws\Ec2\Ec2Client([
    'region' => 'us-west-2',
    'version' => '2016-11-15',
    'profile' => 'default'
]);

$instanceId = 'InstanceID';

$allocation = $ec2Client->allocateAddress(array(
    'DryRun' => false,
    'Domain' => 'vpc',
));

$result = $ec2Client->associateAddress(array(
    'DryRun' => false,
    'InstanceId' => $instanceId,
    'AllocationId' => $allocation->get('AllocationId')
));

var_dump($result);
```

## Rilascia un indirizzo
<a name="release-an-address"></a>

 **Importazioni** 

```
require 'vendor/autoload.php';
```

 **Codice di esempio** 

```
$ec2Client = new Aws\Ec2\Ec2Client([
    'region' => 'us-west-2',
    'version' => '2016-11-15',
    'profile' => 'default'
]);

$associationID = 'AssociationID';

$allocationID = 'AllocationID';

$result = $ec2Client->disassociateAddress([
    'AssociationId' => $associationID,
]);

$result = $ec2Client->releaseAddress([
    'AllocationId' => $allocationID,
]);

var_dump($result);
```