Este conteúdo foi traduzido por máquina para sua conveniência e a Huawei Cloud não pode garantir que o conteúdo foi traduzido com precisão. Para exibir o conteúdo original, use o link no canto superior direito para mudar para a página em inglês.
Central de ajuda/ Elastic IP/ Referência de API/ Exemplos de aplicação/ Atribuição de um EIP com uma largura de banda compartilhada específica
Atualizado em 2024-09-25 GMT+08:00

Atribuição de um EIP com uma largura de banda compartilhada específica

Cenários

Esta seção descreve como atribuir um EIP com uma largura de banda compartilhada específica chamando APIs.

Pré-requisitos

Você planejou a região onde deseja atribuir o EIP e obteve o ponto de extremidade necessário para chamar APIs. Para mais detalhes, consulte Ponto de extremidades do EIP.

Se você usar um token para autenticação, deverá obter o token e adicionar X-Auth-Token ao cabeçalho da solicitação ao fazer uma chamada de API.

O token obtido do IAM é válido por apenas 24 horas. Se você quiser usar um token para autenticação, poderá armazená-lo em cache para evitar chamadas frequentes.

Procedimento

  1. Atribua uma largura de banda compartilhada.
    1. Envie POST https://Endpoint/v2.0/project_id/bandwidths. O parâmetro project_id indica o ID do projeto.
    2. Adicione X-Auth-Token ao cabeçalho da solicitação.
    3. Especifique os seguintes parâmetros no corpo da solicitação:
      { 
           "bandwidth": { 
               "name": "bandwidth123", 
               "size": 10
           } 
       }
    4. Verifique a mensagem de resposta.
      • A solicitação será bem-sucedida se a seguinte resposta for exibida. Na resposta, id indica o ID da largura de banda.
        { 
           "bandwidth": { 
             "id": "1bffc5f2-ff19-45a6-96d2-dfdca49cc387", 
             "name": "bandwidth123", 
             "size": 10, 
             "share_type": "WHOLE", 
             "publicip_info": [], 
             "tenant_id": "26ae5181a416420998eb2093aaed84d9", 
             "bandwidth_type": "share", 
             "charge_mode": "bandwidth", 
             "enterprise_project_id": "0", 
             "status": "NORMAL", 
             "created_at": "2020-04-21T07:58:02Z",  
             "updated_at": "2020-04-21T07:58:02Z"  
           } 
         }
      • Para obter detalhes sobre os códigos de erro quando a solicitação é anormal, consulte Códigos de erro.
  2. Consultar os detalhes da largura de banda compartilhada.
    1. Envie Get https://Endpoint//v1/project_id/bandwidths/bandwidth_id. O parâmetro project_id indica o ID do projeto.
    2. Adicione X-Auth-Token ao cabeçalho da solicitação.
    3. Verifique a mensagem de resposta.
      • A solicitação será bem-sucedida se a seguinte resposta for exibida. Na resposta, id indica o ID da largura de banda.
        { 
             "bandwidth": { 
                 "id": "1bffc5f2-ff19-45a6-96d2-dfdca49cc387", 
                 "name": "bandwidth123", 
                 "size": 10, 
                 "share_type": "WHOLE", 
                 "publicip_info": [ 
                     { 
                         "publicip_id": "ff156c26-bcc9-4541-a75c-42baf8b9748f", 
                         "publicip_address": "114.xx.xx.244", 
                         "ip_version": 4, 
                         "publicip_type": "5_sbgp" 
                     } 
                 ], 
                 "tenant_id": "b3292dde618e40408e30cd87455a0652", 
                 "bandwidth_type": "sbgp", 
                 "charge_mode": "bandwidth", 
                 "enterprise_project_id": "0", 
                 "status": "NORMAL", 
                 "created_at": "2020-04-21T07:58:02Z", 
                 "updated_at": "2020-04-21T07:58:02Z" 
             } 
         }
      • Para obter detalhes sobre os códigos de erro quando a solicitação é anormal, consulte Códigos de erro.
  3. Atribuir um EIP usando a largura de banda compartilhada.
    1. Envie POST https://Endpoint/v1/project_id/publicips. O parâmetro project_id indica o ID do projeto.
    2. Adicione X-Auth-Token ao cabeçalho da solicitação.
    3. Especifique os seguintes parâmetros no corpo da solicitação:
      {     
           "publicip": {         
               "type": "5_bgp",         
               "ip_version": 6        
        },    
           "bandwidth": {        
               "name": "bandwidth123",        
               "size": 10,         
               "share_type": "WHOLE", 
               "id":"1bffc5f2-ff19-45a6-96d2-dfdca49cc387" 
           },          
           "enterprise_project_id":"0"   
       }
    4. Verifique a mensagem de resposta.
      • A solicitação será bem sucedida se a seguinte resposta for exibida.
        { 
             "publicip": { 
                 "id": "f588ccfa-8750-4d7c-bf5d-2ede24414706", 
                 "status": "PENDING_CREATE", 
                 "type": "5_bgp", 
                 "public_ip_address": "161.xx.xx.7", 
                 "tenant_id": "8b7e35ad379141fc9df3e178bd64f55c", 
                 "ip_version": 4, 
                 "create_time": "2015-07-16 04:10:52", 
                 "bandwidth_size": 0, 
                 "enterprise_project_id":"b261ac1f-2489-4bc7-b31b-c33c3346a439" 
             } 
         }
      • Para obter detalhes sobre os códigos de erro quando a solicitação é anormal, consulte Códigos de erro.
  4. Consultar detalhes do EIP.
    1. Envie GET /v1/project_id/publicips/publicip_id. O parâmetro project_id indica o ID do projeto.
    2. Adicione X-Auth-Token ao cabeçalho da solicitação.
    3. Verifique a mensagem de resposta.
      { 
           "publicip": {
                  "id": "3ec9fea0-2d4c-49e2-8aca-ce883eae547d",
                  "type": "5_bgp",
                  "public_ip_address": "10.246.164.87",
                  "status": "DOWN",
                  "tenant_id": "060576782980d5762f9ec014dd2f1148",
                  "create_time": "2020-08-13 12:55:27",
                  "bandwidth_id": "1bffc5f2-ff19-45a6-96d2-dfdca49cc387",
                  "bandwidth_name": "bandwidth123",
                  "bandwidth_share_type": "WHOLE",
                  "bandwidth_size": 10,
                  "profile": {},
                  "enterprise_project_id": "a380829c-db6f-4db3-b5b6-cc377f7a3ff8",
                  "ip_version": 4
              }
       }