Updated on 2023-08-02 GMT+08:00

Changing an EIP

You can change the EIP bound to a cloud phone server on the management console or by calling APIs.

Only EIPs bound to cloud phone servers that use custom networks can be changed. You can go to the details page of a cloud phone server to view its network type.

Changing an EIP on the Console

  1. Unbind an EIP.
    1. Log in to the management console.
    2. In the upper left corner, select the region where the cloud phone server is deployed.
    3. On the Service List page, choose Compute > Cloud Phone Host.

      The CPH console is displayed.

    4. In the navigation pane on the left, choose Servers.
    5. In the server list, select the server that needs to change its EIPs, and choose More > Unbind EIP in the Operation column.
    6. In the displayed Unbind EIP dialog box, select the EIP to be unbound and click OK.
      Figure 1 Unbind EIP
  1. Bind an EIP.
    1. In the server list, select the server to which you want to bind an EIP, and choose More > Bind EIP in the Operation column.
    1. In the displayed Bind EIP dialog box, select an EIP, and click OK.
    Figure 2 Bind EIP

Changing an EIP by Calling APIs

  1. Unbind an EIP.
    1. Query the EIP address (for example, 122.9.102.xxx) of the server on the management console or by calling the Querying Details About a Cloud Phone Server API.
    2. Query the EIP ID by IP address on the EIP management console or by calling the Querying All EIPs API.
    3. Call the Unbinding an EIP API.
      The following shows an example of an API call:
      curl -i -k -X POST https://{Endpoint}/v3/{project_id}/eip/publicips/{eip_id}/disassociate-instance -H "Content-Type: application/json" -H "X-Auth-Token: ${token}"
  2. Bind an EIP.
    Strictly speaking, an EIP is bound to a server port. You can bind an EIP to a cloud phone server that has idle ports.
    1. Obtain the ID of the EIP to be bound by following the steps 1. The EIP must be in the unbound state.
    2. Call the Querying Ports API to query all ports of the server by using server_id.
      The following shows an example of an API call:
      curl -i -k -X GET https://{Endpoint}/v1/{project_id}/ports?instance_id={cph_server_id} -H "Content-Type: application/json" -H "X-Auth-Token: ${token}"
    1. Call the Querying EIPs API to query EIPs by using port_id. You can specify one or more port IDs at a time. If there is a port that has no EIP bound, you can bind an EIP to the port.
      The following shows an example of an API call:
      curl -i -k -X GET https://{Endpoint}/v1/{project_id}/publicips?port_id={port_id1}\&port_id={port_id2}\&port_id={port_id3} -H "Content-Type: application/json" -H "X-Auth-Token: ${token}"
    1. If a port has no EIP bound, call the Binding an EIP API to bind an EIP to this port.
      The following shows an example of an API call:
      curl -i -k -X POST https://{Endpoint}/v3/{project_id}/eip/publicips/{eip_id}/associate-instance -H "Content-Type: application/json" -H "X-Auth-Token: ${token}" -d '{"publicip":{"associate_instance_id":"{port_id}","associate_instance_type":"PORT"}}'