Trabalho com sub-redes

As sub-redes ajudam o seu tráfego de rede a percorrer caminhos mais eficientes desde a origem até o destino. Você pode usar ACLs de rede com sub-redes para proteger seus recursos dentro de cada sub-rede.

Antes de Iniciar

Antes de começar, você deve ser designado uma ou mais funções de acesso IAM que incluam as seguintes ações, dependendo de quaisquer condições listadas. Você pode verificar seu acesso acessando Usuários > Usuário > Acesso.

  • is.subnet.subnet.create
  • is.public-gateway.public-gateway.operate (obrigatório quando public_gateway é especificado)
  • is.network-acl.network-acl.operate

Criação de sub-redes

É possível criar sub-redes usando o console, a CLI ou a API.

Se você utilizar um intervalo de IPs fora dos intervalos definidos pela RFC 1918 (10.0.0.0/8, 172.16.0.0/12 ou 192.168.0.0/16) para uma sub-rede, as instâncias conectadas a essa sub-rede podem não conseguir acessar partes da Internet. Se você planeja configurar VPCs que utilizem endereços de rede privada ( non-RFC-1918 ) e também tenham conectividade pública (endereços IP flutuantes ou gateways públicos), certifique-se de configurar uma rota personalizada com a ação “ Delegate-VPC ”.

Criação de sub-redes no console

Para criar uma sub-rede no console, siga estas etapas:

  1. A partir do seu navegador, abra o IBM Cloud console.

  2. Selecione o menu Navegação Ícone do menu de navegação e clique em Ícone VPC de infraestrutura > Rede > Sub-redes.

  3. Clique em Create (Criar ) na tabela da lista Subnets for VPC.

  4. Na seção “Localização”, forneça as seguintes informações:

    • Geografia: indique a área geral onde deseja que a sub-rede seja criada.
    • Região: indique a região onde deseja que a sub-rede seja criada.
    • Zona: indique a zona onde deseja que a sub-rede seja criada.
  5. Na seção “Detalhes”, forneça as seguintes informações:

    • Nome: Digite um identificador único para a sub-rede, como my-subnet.
    • Grupo de recursos: Selecione um grupo de recursos para a sub-rede.
    • Tags: Opcionalmente, adiciona-se quaisquer tags relevantes para ajudar a agrupar suas sub-redes.
    • Tags de gerenciamento de acesso: Opcionalmente, adiciona tags de gerenciamento de acesso a recursos para ajudar a organizar as relações de controle de acesso. O único formato suportado para as tags de gerenciamento de acesso é key:value. Para obter mais informações, consulte Controlando o acesso aos recursos usando tags.
    • Nuvem privada virtual: selecione a VPC na qual deseja que a sub-rede seja criada.
  6. Na seção de seleção de intervalo de IP, forneça as seguintes informações:

    • Faixa de IP: O local mais eficiente para sua faixa de IP é calculado automaticamente. Se você deseja customizar a faixa de IP em vez de aceitar a seleção padrão, selecione um prefixo de endereço diferente, altere o número de endereços ou digite seu intervalo de IP manualmente.

    • Prefixo do endereço: Selecione o prefixo da rede básica para sua sub-rede. Isso determina o intervalo de IP maior a partir do qual os endereços IP de sua sub-rede são alocados. Escolha entre os prefixos disponíveis em sua VPC.

    • Total de endereços IP: Selecione o número total de endereços IPv4 necessários.

    • Espaço de endereços: Exibe o intervalo completo de endereços IP do prefixo selecionado em sua VPC. Esse intervalo define os limites dentro dos quais você pode alocar intervalos de IP de sub-rede.

    • Tabela de roteamento: selecione qual tabela de roteamento você deseja que a nova sub-rede use.

    • Lista de controle de acesso à sub-rede: Selecione qual lista de controle de acesso você deseja que a nova sub-rede use.

    • gateway público: Indique se você deseja que a sub-rede se comunique com a internet pública, alternando o switch para Anexado.

      A conexão de um gateway público cria um IP flutuante e gera um custo.

  7. No painel Resumo, clique em Criar sub-rede.

Guia de recursos anexados

A guia Attached Resources (Recursos anexados) lista todos os recursos anexados à sub-rede e permite a criação de:

  • INSTÂNCIAS
  • Servidores bare metal
  • Modelos de instância
  • Grupos de instâncias
  • Balanceadores de carga.
  • Gateways VPN
  • Gateways de terminal virtual
  • Servidores VPN

Clique em Create (Criar ) na tabela da lista de recursos do recurso que você deseja criar. Você será direcionado para o respectivo fluxo de trabalho de criação de recurso, onde poderá iniciar o processo de criação do recurso.

Guia IPs reservados

A guia IPs reservados lista todos os endereços IP reservados para a sub-rede. Para obter mais informações, consulte Gerenciamento de endereços IP.

Criação de sub-redes pela CLI

Para criar sub-redes pela CLI, execute o seguinte comando:

ibmcloud is subnet-create SUBNET_NAME VPC ((--zone ZONE_NAME --ipv4-address-count ADDR_COUNT) | --ipv4-cidr-block CIDR_BLOCK) [--acl ACL] [--pgw PGW] [--rt RT] [--resource-group-id RESOURCE_GROUP_ID | --resource-group-name RESOURCE_GROUP_NAME] {} [--output JSON] [-q, --quiet]

Em que:

SUBNET_NAME
Nome da sub-rede.
VPC
ID ou nome da VPC.
--ipv4-cidr-block
o intervalo do IPv4 da sub-rede. Essa opção é mutuamente exclusiva com a opção “ --ipv4-address-count ”.
--ipv4-address-count
O número total de IPv4 endereços necessários deve ser uma potência de 2 e o valor mínimo é 8. Essa opção é mutuamente exclusiva com a opção “ --ipv4-cidr-block ”.
--zone
Nome da zona.
--acl
O ID ou o nome da ACL de rede.
--pgw
O ID ou o nome do gateway público.
--rt
O ID ou o nome da tabela de roteamento. Essa opção também é compatível com o nome do recurso de nuvem (CRN) da tabela de roteamento.
--resource-group-id
O ID do grupo de recursos. Este ID é mutuamente exclusivo com --resource-group-name.
--resource-group-name
Nome do grupo de recursos. Esse nome é mutuamente exclusivo com --resource-group-id.
--output
Especifique o formato de saída. Somente JSON é suportado. Um de: JSON.
-q, --quiet
Suprimir a saída detalhada.

Criação de sub-redes com a API

Siga estas instruções para criar sub-redes usando a API:

  1. Configure o seu Ambiente de API.
  2. Armazene quaisquer variáveis adicionais a serem utilizadas nos comandos da API.
Parâmetros para criar uma sub-rede
Parâmetros de consulta Informações
version
Necessário
string
Solicita a versão da API válida a partir de uma data no formato YYYY-MM-DD. É possível fornecer qualquer data até a data atual. Especifique a data atual para solicitar a versão mais recente.
Valores possíveis: O valor deve corresponder à expressão regular ^[0-9]{4}-[0-9]{2}-[0-9]{2}$
generation
Necessário
int32
A geração de infraestrutura.
Valores possíveis: 2
Corpo da solicitação
Obrigatório
O objeto protótipo da sub-rede.
vpc
Necessário
string
A VPC em que essa sub-rede reside.
Um dos seguintes: VPCIdentityById, VPCIdentityByCRN, VPCIdentityByHref
ip_version
string
A versão do IP a ser suportada para esta sub-rede. Valores permitidos: [ipv4]
name
Necessário
string
O nome desta sub-rede. O nome não deve ser usado por outra sub-rede na VPC. Se não for especificado, o nome será uma lista com hífen de palavras selecionadas aleatoriamente.
Valores possíveis: 1 ≤ comprimento ≤ 63, O valor deve corresponder à expressão regular ([a-z]|[a-z][-a-z0-9]*[a-z0-9])$
Exemplo: my-subnet
network_acl
string
A ACL de rede a ser usada para esta sub-rede. Se não for especificado, será utilizada a ACL de rede padrão para a VPC.
Um dos seguintes: NetworkACLIdentityById, NetworkACLIdentityByCRN, NetworkACLIdentityHref
public_gateway
string
O gateway público a ser usado para o tráfego destinado à Internet para esta sub-rede. Se não for especificado, a sub-rede não será anexada a um gateway público.
Um dos seguintes: PublicGatewayIdentityById, PublicGatewayIdentityByCRN, PublicGatewayIdentityByHref
resource_group
ResourceGroupIdentityById
O Grupo de recursos a ser usado. Se não for especificado, será utilizado o grupo de recursos padrão da conta.
routing_table
string
A tabela de roteamento a ser usada para esta sub-rede. Se não especificado, a tabela de roteamento padrão para o VPC é usada. As propriedades da tabela de route_direct_link_ingress roteamento, route_internet_ingress, route_transit_gateway_ingress e route_vpc_zone_ingress devem ser false.
Um dos seguintes: RoutingTableIdentityById, RoutingTableIdentityByCRN, RoutingTableIdentityByHref
SubnetByTotalCount
int 64
ou
SubnetByCIDR
string
Para SubnetByTotalCount, especifique o número total de IPv4 endereços necessários. Para SubnetByCIDR, especifique o IPv4 intervalo da sub-rede, expresso no formato CIDR. Ambas as opções exigem um zone para que a sub-rede seja criada.

Quando todas as variáveis forem iniciadas, envie a solicitação.

Consulte o seguinte exemplo:

curl -X POST
"$vpc_api_endpoint/v1/subnets?version=2022-10-31&generation=2"
-H "Authorization: Bearer $iam_token"
-d '{
      "name": "my-subnet-1",
      "ipv4_cidr_block": "10.0.1.0/24",
      "ip_version": "ipv4",
      "zone": { "name": "us-south-1" },
      "vpc": { "id": "a0819609-0997-4f92-9409-86c95ddf59d3" }
    }'

A resposta a seguir é exibida após você iniciar a solicitação:

Exemplo de resposta da API
Corpo da Resposta Detalhes
available_ipv4_address_count
Sempre incluído
int64
O número de endereços IPv4 nessa sub-rede que não estão em uso e não estão reservados pelo usuário ou pelo provedor.
Exemplo: 15
created_at
Sempre incluído
date-time
A data e a hora em que essa sub-rede foi criada.
crn
Sempre incluído
string
O CRN para esta sub-rede.
Valores possíveis: 9 ≤ comprimento ≤ 512
Exemplo: crn:v1:bluemix:public:is:us-south-1:a/123456::subnet:7ec86020-1c6e-4889-b3f0-a15f2e50f87e
href
Sempre incluído*
string
O URL para essa sub-rede
Valores possíveis: 10 ≤ comprimento ≤ 8000, O valor deve corresponder à expressão regular ^http(s)?://([^/?#]*)([^?#]*)(?([^#]*))?(#(.*))?$
Exemplo: https://us-south.iaas.cloud.ibm.com/v1/subnets/7ec86020-1c6e-4889-b3f0-a15f2e50f87e
id
Sempre incluído
string
O identificador exclusivo dessa sub-rede
Valores possíveis: 1 ≤ comprimento ≤ 64, O valor deve corresponder à expressão regular ^[-0-9a-z_]+$
Exemplo: 7ec86020-1c6e-4889-b3f0-a15f2e50f87e
ip_version
Sempre incluído
string
As versões IP suportadas por esta sub-rede.
Valores possíveis: [ipv4]
ipv4_cidr_block
Sempre incluído
string
O intervalo IPv4 da sub-rede, que é expresso no formato CIDR.
Valores possíveis: 9 ≤ comprimento ≤ 18, O valor deve corresponder à expressão regular ^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]).){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(/(3[0-2]|[1-2][0-9]|[0-9]))$
Exemplo: 10.0.0.0/24
name
Sempre incluído
string
O nome desta sub-rede. O nome é exclusivo em todas as sub-redes da VPC.
Valores possíveis: 1 ≤ comprimento ≤ 63, O valor deve corresponder à expressão regular ^-?([a-z]|[a-z][-a-z0-9]*[a-z0-9]|[0-9][-a-z0-9]*([a-z]|[-a-z][-a-z0-9]*[a-z0-9]))$
Exemplo: my-subnet
network_acl Sempre incluído
NetworkACLReference
resource_group
Sempre incluído
ResourceGroupReference
O grupo de recursos para esta sub-rede.
resource_type
Sempre incluído
string
O tipo de recurso.
Valores possíveis: 1 ≤ comprimento ≤ 128, O valor deve corresponder à expressão regular ^[a-z][a-z0-9]*(_[a-z0-9]+)*$
Exemplo: subnet
routing_table
Sempre incluído
RoutingTableReference
A tabela de roteamento para esta sub-rede.
status
Sempre incluído
string
O status da sub-rede.
Valores possíveis: available,deleting,failed, pending
total_ipv4_address_count
Sempre incluído
int64
vpc
Sempre incluído
VPCReference
A VPC em que essa sub-rede reside.
zone
Sempre incluído
ZoneReference
A zona em que essa sub-rede está localizada.
public_gateway
PublicGatewayReference
O gateway público a ser usado para o tráfego destinado à Internet para esta sub-rede.
Criar códigos de status
Código de status Significado
201 A sub-rede foi criada com sucesso.
400 Foi fornecido um objeto protótipo de sub-rede inválido.
409 O objeto protótipo da sub-rede entra em conflito com outra sub-rede na VPC ou especifica um bloco CIDR fora dos prefixos de endereço da VPC.

Para obter mais informações (incluindo Java exemplos em Node,, Python e Go), consulte o método criar uma sub-rede na referência da API VPC.

Visualização de sub-redes

Você pode visualizar os detalhes de uma sub-rede em seu VPC usando a UI, API ou CLI.

Visualizando sub-redes no console

Após a criação da sub-rede, ela aparece na lista Sub-redes para VPC.

Para visualizar os detalhes sobre uma sub-rede na lista do console, clique no link da sub-rede na coluna Nome. A guia Visão geral mostra as informações que você usou durante a criação da sub-rede.

Visualização de sub-redes pela CLI

Para visualizar os detalhes sobre uma sub-rede na VPC a partir da CLI, execute o seguinte comando:

ibmcloud is subnet SUBNET [--vpc VPC] [--show-attached] [--output JSON] [-q, --quiet]

Em que:

SUBNET
ID ou nome da sub-rede.
--vpc
ID ou nome da VPC. Só é necessário especificar o recurso exclusivo por nome dentro desta VPC.
--show-attached
Visualizar detalhes dos recursos (instâncias, balanceadores de carga, gateways VPN) conectados à sub-rede.
--output
Especifique o formato de saída. Somente JSON é suportado. Um de: JSON.
-q, --quiet
Suprimir a saída detalhada.

Visualização de sub-redes com a API

Para chamar esse método, você deve ter designada uma ou mais funções de acesso do IAM que incluam a ação a seguir. Você pode verificar seu acesso acessando Usuários > Usuário > Acesso.

  • is.subnet.subnet.read

Siga estas instruções para recuperar uma sub-rede em seu VPC usando a API:

  1. Configure o seu Ambiente de API.
  2. Armazene quaisquer variáveis adicionais a serem utilizadas nos comandos da API.
Parâmetros para recuperar uma sub-rede
Parâmetros de consulta Informações
id
Necessário
string
O identificador da sub-rede.
Valores possíveis: 1 ≤ comprimento ≤ 64; o valor deve corresponder à expressão regular ^[-0-9a-z_]+$
version
Necessário
string
Solicita a versão da API válida a partir de uma data no formato YYYY-MM-DD. É possível fornecer qualquer data até a data atual. Especifique a data atual para solicitar a versão mais recente.
Valores possíveis: O valor deve corresponder à expressão regular ^[0-9]{4}-[0-9]{2}-[0-9]{2}$
generation
Necessário
int32
A geração de infraestrutura.
Valores permitidos: 2
  1. Quando todas as variáveis estiverem definidas, execute o comando.

Consulte o seguinte exemplo:

curl -X GET "$vpc_api_endpoint/v1/subnets/$subnet_id?version=2022-10-31&generation=2"
-H "Authorization: Bearer $iam_token"

A resposta a seguir é exibida após você iniciar a solicitação:

Iniciar resposta recuperar exemplo
Corpo da Resposta Detalhes
available_ipv4_address_count
Sempre incluído
int64
O número de endereços IPv4 nessa sub-rede que não estão em uso e não estão reservados pelo usuário ou pelo provedor.
Exemplo: 15
created_at
Sempre incluído
date-time
A data e a hora em que essa sub-rede foi criada.
crn
Sempre incluído
string
O CRN para essa sub-rede
Valores possíveis: 9 ≤ comprimento ≤ 512
Exemplo: crn:v1:bluemix:public:is:us-south-1:a/123456::subnet:7ec86020-1c6e-4889-b3f0-a15f2e50f87e
href
Sempre incluído*
string
O URL para essa sub-rede
Valores possíveis: 10 ≤ comprimento ≤ 8000, O valor deve corresponder à expressão regular ^http(s)?://([^/?#]*)([^?#]*)(?([^#]*))?(#(.*))?$
Exemplo: https://us-south.iaas.cloud.ibm.com/v1/subnets/7ec86020-1c6e-4889-b3f0-a15f2e50f87e
id
Sempre incluído
string
O identificador exclusivo dessa sub-rede
Valores possíveis: 1 ≤ comprimento ≤ 64, O valor deve corresponder à expressão regular ^[-0-9a-z_]+$
Exemplo: 7ec86020-1c6e-4889-b3f0-a15f2e50f87e
ip_version
Sempre incluído
string
As versões IP suportadas por esta sub-rede.
Valores possíveis: [ipv4]
ipv4_cidr_block
Sempre incluído
string
O intervalo de endereços IPv4 da sub-rede, expresso no formato CIDR.
Valores possíveis: 9 ≤ comprimento ≤ 18, O valor deve corresponder à expressão regular ^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]).){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(/(3[0-2]|[1-2][0-9]|[0-9]))$
Exemplo: 10.0.0.0/24
name
Sempre incluído
string
O nome desta sub-rede. O nome é exclusivo em todas as sub-redes da VPC.
Valores possíveis: 1 ≤ comprimento ≤ 63, O valor deve corresponder à expressão regular ^-?([a-z]|[a-z][-a-z0-9]*[a-z0-9]|[0-9][-a-z0-9]*([a-z]|[-a-z][-a-z0-9]*[a-z0-9]))$
Exemplo: my-subnet
network_acl Sempre incluído
NetworkACLReference
resource_group
Sempre incluído
ResourceGroupReference
O grupo de recursos para esta sub-rede.
resource_type
Sempre incluído
string
O tipo de recurso.
Valores possíveis: 1 ≤ comprimento ≤ 128, O valor deve corresponder à expressão regular ^[a-z][a-z0-9]*(_[a-z0-9]+)*$
Exemplo: subnet
routing_table
Sempre incluído
RoutingTableReference
A tabela de roteamento para esta sub-rede.
status
Sempre incluído
string
O status da sub-rede.
Valores possíveis: available,deleting,failed, pending
total_ipv4_address_count
Sempre incluído
int64
vpc
Sempre incluído
VPCReference
A VPC em que essa sub-rede reside.
zone
Sempre incluído
ZoneReference
A zona em que essa sub-rede está localizada.
public_gateway
PublicGatewayReference
O gateway público a ser usado para o tráfego destinado à Internet para esta sub-rede.
Recuperar códigos de status
Código de status Significado
200 A sub-rede foi recuperada com sucesso.
404 Não foi possível localizar uma sub-rede com o identificador especificado.

Para obter mais informações (incluindo exemplos Java em Node,, Python e Go), consulte “Recuperar uma sub-rede” na referência da API VPC.