Partilhar via


Configurar domínios de isolamento L2 e L3 usando serviços de malha de rede gerenciados

Os domínios de isolamento permitem a comunicação entre cargas de trabalho hospedadas no mesmo rack (comunicação intra-rack) ou racks diferentes (comunicação entre racks). Este tutorial descreve como você pode gerenciar seus domínios de isolamento de Camada 2 e Camada 3 usando a Interface de Linha de Comando do Azure (AzureCLI). Você pode criar, atualizar, excluir e verificar o status dos domínios de isolamento da Camada 2 e da Camada 3.

Pré-requisitos

  1. Verifique se o Network Fabric Controller (NFC) e o Network Fabric foram criados.

  2. Instale a versão mais recente das extensões CLI necessárias.

  3. Use o comando a seguir para entrar em sua conta do Azure e definir a assinatura para sua ID de assinatura do Azure. Essa deve ser a mesma ID de assinatura que você usa para todos os recursos em uma instância do Azure Operator Nexus.

    az login
    az account set --subscription ********-****-****-****-*********
  1. Registrar provedores para uma malha de rede gerenciada:
    1. Na CLI do Azure, insira o comando az provider register --namespace Microsoft.ManagedNetworkFabric.

    2. Monitore o processo de registro usando o comando az provider show -n Microsoft.ManagedNetworkFabric -o table.

      O registo pode demorar até 10 minutos. Quando terminar, RegistrationState a saída muda para Registered.

Os domínios de isolamento são usados para habilitar a conectividade de Camada 2 ou Camada 3 entre cargas de trabalho hospedadas na instância do Azure Operator Nexus e redes externas.

Nota

O Nexus do operador reserva VLANs <=500 para uso da plataforma e, portanto, VLANs nesse intervalo não podem ser usadas para suas redes de carga de trabalho (locatário). Você deve usar valores de VLAN entre 501 e 4095.

Parâmetros para gerenciamento de domínio de isolamento

Parâmetro Description Exemplo Necessário
resource-group Use um nome de grupo de recursos apropriado especificamente para ISD de sua escolha ResourceGroupName True
resource-name Nome do recurso do l2isolationDomain exemplo-l2domain True
location A região do Azure do Operator Nexus usada durante a criação da NFC eastus True
nf-Id ID da malha de rede "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFresourcegroupname/providers/Microsoft.ManagedNetworkFabric/NetworkFabrics/NFname" True
Vlan-id Valor do identificador VLAN. As VLANs 1-500 são reservadas e não podem ser usadas. O valor do identificador de VLAN não pode ser alterado depois de especificado. O domínio de isolamento deve ser excluído e recriado se o valor do identificador VLAN precisar ser modificado. O intervalo está entre 501-4095 501 True
mtu A unidade de transmissão máxima é 1500 por padrão, se não for especificada 1500
administrativeState Ativar/Desativar indica o estado administrativo do isolationDomain Ativar
subscriptionId Sua subscriptionId do Azure para sua instância do Operator Nexus.
provisioningState Indica o estado de provisionamento

Domínio de isolamento L2

Você usa um domínio de isolamento L2 para estabelecer conectividade de camada 2 entre cargas de trabalho em execução em nós de computação do Operator Nexus.

Criar domínio de isolamento L2

Crie um domínio de isolamento L2:

az networkfabric l2domain create \
--resource-group "ResourceGroupName" \
--resource-name "example-l2domain" \
--location "eastus" \
--nf-id "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/NetworkFabrics/NFname" \
--vlan-id  750\
--mtu 1501

Resultado esperado:

{
  "administrativeState": "Disabled",		 
  "id": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/l2IsolationDomains/example-l2domain",
  "location": "eastus",
  "mtu": 1501,
  "name": "example-l2domain",
  "networkFabricId": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFresourcegroupname/providers/Microsoft.ManagedNetworkFabric/networkFabrics/NFName",
  "provisioningState": "Succeeded",
  "resourceGroup": "ResourceGroupName",
  "systemData": {
    "createdAt": "2023-XX-XXT14:57:59.167177+00:00",
    "createdBy": "email@address.com",
    "createdByType": "User",
    "lastModifiedAt": "2023-XX-XXT14:57:59.167177+00:00",
    "lastModifiedBy": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx",
    "lastModifiedByType": "Application"
  },			   
  "type": "microsoft.managednetworkfabric/l2isolationdomains",
  "vlanId": 750
}

Mostrar domínios de isolamento L2

Este comando mostra detalhes sobre domínios de isolamento L2, incluindo seus estados administrativos:

az networkfabric l2domain show --resource-group "ResourceGroupName" --resource-name "example-l2domain"

Saída esperada

{
  "administrativeState": "Disabled",					 
  "id": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/l2IsolationDomains/example-l2domain",
  "location": "eastus",
  "mtu": 1501,
  "name": "example-l2domain",
  "networkFabricId": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabrics/NFName",
  "provisioningState": "Succeeded",
  "resourceGroup": "ResourceGroupName",
  "systemData": {
    "createdAt": "2023-XX-XXT14:57:59.167177+00:00",
    "createdBy": "email@address.com",
    "createdByType": "User",
    "lastModifiedAt": "2023-XX-XXT14:57:59.167177+00:00",
    "lastModifiedBy": "d1bd24c7-b27f-477e-86dd-939e1078890",
    "lastModifiedByType": "Application"
  },			   
  "type": "microsoft.managednetworkfabric/l2isolationdomains",
  "vlanId": 750
}

Listar todos os domínios de isolamento L2

Este comando lista todos os domínios de isolamento l2 disponíveis no grupo de recursos.

az networkfabric l2domain list --resource-group "ResourceGroupName"

Saída esperada

 {
    "administrativeState": "Enabled",
    "id": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/l2IsolationDomains/example-l2domain",
    "location": "eastus",
    "mtu": 1501,
    "name": "example-l2domain",
    "networkFabricId": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxxxxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabrics/NFName",
    "provisioningState": "Succeeded",
    "resourceGroup": "ResourceGroupName",
    "systemData": {
      "createdAt": "2022-XX-XXT22:26:33.065672+00:00",
      "createdBy": "email@address.com",
      "createdByType": "User",
      "lastModifiedAt": "2022-XX-XXT14:46:45.753165+00:00",
      "lastModifiedBy": "d1bd24c7-b27f-477e-86dd-939e107873d7",
      "lastModifiedByType": "Application"
    },
    "type": "microsoft.managednetworkfabric/l2isolationdomains",
    "vlanId": 750
  }

Alterar o estado administrativo de um domínio de isolamento L2

Você deve habilitar um domínio de isolamento para enviar a configuração por push para os dispositivos de malha de rede. Use o seguinte comando para alterar o estado administrativo de um domínio de isolamento:

az networkfabric l2domain update-admin-state --resource-group "ResourceGroupName" --resource-name "example-l2domain" --state Enable/Disable

Saída esperada

{
  "administrativeState": "Enabled",
  "id": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/l2IsolationDomains/example-l2domain",
  "location": "eastus",
  "mtu": 1501,
  "name": "example-l2domain",
  "networkFabricId": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabrics/NFName",
  "provisioningState": "Succeeded",
  "resourceGroup": "ResourceGroupName",
  "systemData": {
    "createdAt": "2023-XX-XXT14:57:59.167177+00:00",
    "createdBy": "email@address.com",
    "createdByType": "User",
    "lastModifiedAt": "2023-XX-XXT14:57:59.167177+00:00",
    "lastModifiedBy": "d1bd24c7-b27f-477e-86dd-939e107873d7",
    "lastModifiedByType": "Application"
  },
  "type": "microsoft.managednetworkfabric/l2isolationdomains",
  "vlanId": 501
}

Excluir domínio de isolamento L2

Use este comando para excluir um domínio de isolamento L2:

az networkfabric l2domain delete --resource-group "ResourceGroupName" --resource-name "example-l2domain"

Resultado esperado:

Please use show or list command to validate that isolation-domain is deleted. Deleted resources will not appear in result

Configurar domínio de isolamento L3

Um domínio de isolamento de Camada 3 permite a conectividade de camada 3 entre cargas de trabalho em execução em nós de computação do Operator Nexus. O domínio de isolamento L3 permite que as cargas de trabalho troquem informações da camada 3 com dispositivos de malha de rede.

O domínio de isolamento da camada 3 tem dois componentes:

  • Uma rede interna define a conectividade de Camada 3 entre malhas de rede em execução nos nós de computação do Azure Operator Nexus e uma rede externa opcional. Você deve criar pelo menos uma rede interna.
  • Uma rede externa fornece conectividade entre a Internet e as redes internas através dos seus PEs.

O domínio de isolamento L3 permite a implantação de cargas de trabalho que anunciam IPs de serviço para a malha via BGP.

Um domínio de isolamento L3 tem dois ASNs:

  • O ASN de malha refere-se ao ASN dos dispositivos de rede na malha. O ASN de malha foi especificado durante a criação da malha de rede.
  • O ASN Peer refere-se ao ASN das Funções de Rede no Operator Nexus, e não pode ser o mesmo que o ASN de Malha.

O fluxo de trabalho para um provisionamento bem-sucedido de um domínio de isolamento L3 é o seguinte:

  • Criar um domínio de isolamento L3
  • Criar uma ou mais Redes Internas
  • Habilitar um domínio de isolamento L3

Para fazer alterações no domínio de isolamento L3, primeiro Desative o domínio de isolamento L3 (estado administrativo). Reative o domínio de isolamento L3 (estado AdministrativeState) assim que as alterações forem concluídas:

  • Desativar o domínio de isolamento L3
  • Fazer alterações no domínio de isolamento L3
  • Reativar o domínio de isolamento L3

O procedimento para mostrar, habilitar/desabilitar e excluir domínios de isolamento baseados em IPv6 é o mesmo usado para IPv4. o intervalo Vlan para criação Domínio de isolamento 501-4095

Os parâmetros a seguir estão disponíveis para configurar domínios de isolamento L3.

Parâmetro Description Exemplo Necessário
resource-group Use um nome de grupo de recursos apropriado especificamente para ISD de sua escolha ResourceGroupName True
resource-name Nome do recurso do l3isolationDomain exemplo-l3domain True
location A região do Azure do Operator Nexus usada durante a criação da NFC eastus True
nf-Id SubscriptionId do Azure usado durante a criação da NFC /subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/NetworkFabrics/NFName" True

Os seguintes parâmetros para domínios de isolamento são opcionais.

Parâmetro Description Exemplo Necessário
redistributeConnectedSubnet Anunciar sub-redes conectadas O valor padrão é True True
redistributeStaticRoutes Anunciar Rotas estáticas pode ter valor de verdadeiro/falso. O valor padrão é False False
aggregateRouteConfiguration Lista de configurações de rota Ipv4 e Ipv6
connectedSubnetRoutePolicy Configuração de política de rota para sub-redes conectadas a ISD IPv4 ou Ipv6 L3. Consulte o arquivo de ajuda para usar a sintaxe correta

Criar domínio de isolamento L3

Use este comando para criar um domínio de isolamento L3:

az networkfabric l3domain create 
--resource-group "ResourceGroupName" 
--resource-name "example-l3domain"
--location "eastus" 
--nf-id "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/NetworkFabrics/NFName"

Nota

Para a conectividade MPLS Option 10 (B) com redes externas através de dispositivos PE, você pode especificar parâmetros de opção (B) ao criar um domínio de isolamento.

Saída esperada

{
  "administrativeState": "Disabled",
  "configurationState": "Succeeded",								 
  "id": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/l3IsolationDomains/example-l3domain",
  "location": "eastus",
  "name": "example-l3domain",
  "networkFabricId": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabrics/NFName",
  "provisioningState": "Succeeded",
  "redistributeConnectedSubnets": "True",
  "redistributeStaticRoutes": "False",
  "resourceGroup": "ResourceGroupName",
  "systemData": {
    "createdAt": "2022-XX-XXT06:23:43.372461+00:00",
    "createdBy": "email@example.com",
    "createdByType": "User",
    "lastModifiedAt": "2023-XX-XXT09:40:38.815959+00:00",
    "lastModifiedBy": "d1bd24c7-b27f-477e-86dd-939e10787367",
    "lastModifiedByType": "Application"
  },			   
  "type": "microsoft.managednetworkfabric/l3isolationdomains"
}

Criar um domínio de isolamento L3 não confiável

az networkfabric l3domain create --resource-group "ResourceGroupName" --resource-name "l3untrust" --location "eastus" --nf-id "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabrics/NFName" 

Criar um domínio de isolamento L3 confiável

az networkfabric l3domain create --resource-group "ResourceGroupName" --resource-name "l3trust" --location "eastus" --nf-id "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabrics/NFName"

Criar um domínio de isolamento L3 de gerenciamento

az networkfabric l3domain create --resource-group "ResourceGroupName" --resource-name "l3mgmt" --location "eastus" --nf-id "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabrics/NFName"

Mostrar domínios de isolamento L3

Você pode obter os detalhes dos domínios de isolamento L3 e o estado administrativo.

az networkfabric l3domain show --resource-group "ResourceGroupName" --resource-name "example-l3domain"

Saída esperada

{
  "administrativeState": "Disabled",
  "configurationState": "Succeeded",				 								 
  "id": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/l3IsolationDomains/example-l3domain",
  "location": "eastus",
  "name": "example-l3domain",
  "networkFabricId": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabrics/NFName",
  "provisioningState": "Succeeded",
  "redistributeConnectedSubnets": "True",
  "redistributeStaticRoutes": "False",
  "resourceGroup": "2023-XX-XXT09:40:38.815959+00:00",
  "systemData": {
    "createdAt": "2023-XX-XXT09:40:38.815959+00:00",
    "createdBy": "email@example.com",
    "createdByType": "User",
    "lastModifiedAt": "2023-XX-XXT09:40:46.923037+00:00",
    "lastModifiedBy": "d1bd24c7-b27f-477e-86dd-939e10787456",
    "lastModifiedByType": "Application"
  },			   
  "type": "microsoft.managednetworkfabric/l3isolationdomains"
}

Listar todos os domínios de isolamento L3

Use este comando para obter uma lista de todos os domínios de isolamento L3 disponíveis em um grupo de recursos:

az networkfabric l3domain list --resource-group "ResourceGroupName"

Saída esperada

{
    "administrativeState": "Disabled",
    "configurationState": "Succeeded",					 							 
    "id": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/l3IsolationDomains/example-l3domain",
    "location": "eastus",
    "name": "example-l3domain",
    "networkFabricId": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabrics/NFName",
    "provisioningState": "Succeeded",
    "redistributeConnectedSubnets": "True",
    "redistributeStaticRoutes": "False",
    "resourceGroup": "ResourceGroupName",
    "systemData": {
      "createdAt": "2023-XX-XXT09:40:38.815959+00:00",
      "createdBy": "email@example.com",
      "createdByType": "User",
      "lastModifiedAt": "2023-XX-XXT09:40:46.923037+00:00",
      "lastModifiedBy": "d1bd24c7-b27f-477e-86dd-939e10787890",
      "lastModifiedByType": "Application"
    },			   
    "type": "microsoft.managednetworkfabric/l3isolationdomains"
  }

Alterar o estado administrativo de um domínio de isolamento L3

Use o seguinte comando para alterar o estado administrativo de um domínio de isolamento L3 para habilitado ou desabilitado:

##Note: Pelo menos uma rede interna deve estar disponível para alterar o estado administrativo de um Domínio de Isolamento L3.

az networkfabric l3domain update-admin-state --resource-group "ResourceGroupName" --resource-name "example-l3domain" --state Enable/Disable

Saída esperada

{
  "administrativeState": "Enabled",
  "configurationState": "Succeeded",		
  "id": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/ResourceGroupName/providers/Microsoft.ManagedNetworkFabric/l3IsolationDomains/example-l3domain",				 
  "location": "eastus",
  "name": "example-l3domain",
  "networkFabricId": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/NFresourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabrics/NFName",
  "provisioningState": "Succeeded",
  "redistributeConnectedSubnets": "True",
  "redistributeStaticRoutes": "False",
  "resourceGroup": "NFResourceGroupName",
  "systemData": {
    "createdAt": "2023-XX-XXT06:23:43.372461+00:00",
    "createdBy": "email@address.com",
    "createdByType": "User",
    "lastModifiedAt": "2023-XX-XXT06:25:53.240975+00:00",
    "lastModifiedBy": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx",
    "lastModifiedByType": "Application"
  },				 
  "type": "microsoft.managednetworkfabric/l3isolationdomains"
}

Use o az show comando para verificar se o estado administrativo foi alterado para Enabled.

Excluir um domínio de isolamento L3

Use este comando para excluir um domínio de isolamento L3:

 az networkfabric l3domain delete --resource-group "ResourceGroupName" --resource-name "example-l3domain"

Use os show comandos ou list para validar que o domínio de isolamento foi excluído.

Criar Rede Interna

Depois de criar com êxito um domínio de isolamento L3, a próxima etapa é criar uma rede interna. As redes internas permitem a comunicação entre racks e intra-rack da Camada 3 entre cargas de trabalho trocando rotas com a malha. Um domínio de isolamento L3 pode suportar várias redes internas, cada uma em uma VLAN separada.

O diagrama a seguir representa um exemplo de função de rede com três redes internas: confiável, não confiável e de gerenciamento. Cada uma das redes internas é criada em seu próprio domínio de isolamento L3.

Diagrama de uma função de rede com três redes internas.

Os prefixos IPv4 para essas redes são:

  • Rede confiável: 10.151.1.11/24
  • Rede de gestão: 10.151.2.11/24
  • Rede não confiável: 10.151.3.11/24

Os seguintes parâmetros estão disponíveis para a criação de redes internas.

Parâmetro Description Exemplo Necessário
vlan-Id Identificador Vlan com intervalo de 501 a 4095 1001 True
resource-group Usar o nome do grupo de recursos NFC correspondente NFCresourcegroupname True
l3-isolation-domain-name Nome do recurso do l3isolationDomain exemplo-l3domain True
location A região do Azure do Operator Nexus usada durante a criação da NFC eastus True

Os parâmetros a seguir são opcionais para a criação de redes internas.

Parâmetro Description Exemplo Necessário
connectedIPv4Subnets Sub-rede IPv4 usada pelas cargas de trabalho do cluster HAKS 10.0.0.0/24
connectedIPv6Subnets Sub-rede IPv6 usada pelas cargas de trabalho do cluster HAKS 10:101:1::1/64
staticRouteConfiguration Prefixo IPv4/IPv6 da rota estática IPv4 10.0.0.0/24 e ipv6 10:101:1::1/64
staticRouteConfiguration->extension sinalizador de extensão para rota estática de rede interna NoExtension/NPB
bgpConfiguration Endereço nexthop IPv4 10.0.0.0/24
defaultRouteOriginate True/False "Permite que a rota padrão seja originada ao anunciar rotas via BGP" True
peerASN ASN par da função de rede 65047
allowAS Permite que as rotas sejam recebidas e processadas mesmo que o roteador detete seu próprio ASN no AS-Path. A entrada como 0 está desativada, os valores possíveis são 1-10, o padrão é 2. 2
allowASOverride Ativar ou desativar allowAS Ativar
extension sinalizador de extensão para rede interna NoExtension/NPB
ipv4ListenRangePrefixes Faixa de escuta IPv4 BGP, alcance máximo permitido em /28 10.1.0.0/26
ipv6ListenRangePrefixes Faixa de escuta IPv6 BGP, alcance máximo permitido em /127 3FFE:FFFF:0:CD30::/127
ipv4ListenRangePrefixes Faixa de escuta IPv4 BGP, alcance máximo permitido em /28 10.1.0.0/26
ipv4NeighborAddress Endereço vizinho IPv4 10.0.0.11
ipv6NeighborAddress Endereço vizinho IPv6 10:101:1::11
isMonitoringEnabled PARA habilitar ou desabilitar o monitoramento na rede interna False

Você precisa criar uma rede interna antes de habilitar um domínio de isolamento L3. Este comando cria uma rede interna com configuração BGP e um endereço de emparelhamento especificado:

az networkfabric internalnetwork create 
--resource-group "ResourceGroupName" 
--l3-isolation-domain-name "example-l3domain" 
--resource-name "example-internalnetwork" 
--vlan-id 805 
--connected-ipv4-subnets '[{"prefix":"10.1.2.0/24"}]' 
--mtu 1500 
--bgp-configuration  '{"defaultRouteOriginate": "True", "allowAS": 2, "allowASOverride": "Enable", "PeerASN": 65535, "ipv4ListenRangePrefixes": ["10.1.2.0/28"]}'

Saída esperada

{
  "administrativeState": "Enabled",
  "bgpConfiguration": {
    "allowAS": 2,
    "allowASOverride": "Enable",
    "defaultRouteOriginate": "True",
    "fabricASN": 65050,
    "ipv4ListenRangePrefixes": [
      "10.1.2.0/28"
    ],
    "peerASN": 65535
  },
  "configurationState": "Succeeded",
  "connectedIPv4Subnets": [
    {
      "prefix": "10.1.2.0/24"
    }
  ],
  "extension": "NoExtension",
  "id": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/l3IsolationDomains/example-l3domain/internalNetworks/example-internalnetwork",
  "isMonitoringEnabled": "True",
  "mtu": 1500,
  "name": "example-internalnetwork",
  "provisioningState": "Succeeded",
  "resourceGroup": "ResourceGroupName",
  "systemData": {
    "createdAt": "2023-XX-XXT04:32:00.8159767Z",
    "createdBy": "email@example.com",
    "createdByType": "User",
    "lastModifiedAt": "2023-XX-XXT04:32:00.8159767Z",
    "lastModifiedBy": "email@example.com",
    "lastModifiedByType": "User"
  },
  "type": "microsoft.managednetworkfabric/l3isolationdomains/internalnetworks",
  "vlanId": 805
}

Criar uma rede interna não confiável para um domínio de isolamento L3

az networkfabric internalnetwork create --resource-group "ResourceGroupName" --l3-isolation-domain-name l3untrust --resource-name untrustnetwork --location "eastus" --vlan-id 502 --fabric-asn 65048 --peer-asn 65047--connected-i-pv4-subnets prefix="10.151.3.11/24" --mtu 1500

Criar uma rede interna confiável para um domínio de isolamento L3

az networkfabric internalnetwork create --resource-group "ResourceGroupName" --l3-isolation-domain-name l3trust --resource-name trustnetwork --location "eastus" --vlan-id 503 --fabric-asn 65048 --peer-asn 65047--connected-i-pv4-subnets prefix="10.151.1.11/24" --mtu 1500

Criar uma rede de gerenciamento interno para um domínio de isolamento L3

az networkfabric internalnetwork create --resource-group "ResourceGroupName" --l3-isolation-domain-name l3mgmt --resource-name mgmtnetwork --location "eastus" --vlan-id 504 --fabric-asn 65048 --peer-asn 65047--connected-i-pv4-subnets prefix="10.151.2.11/24" --mtu 1500

Crie várias rotas estáticas com um único salto seguinte

az networkfabric internalnetwork create --resource-group "fab2nfrg180723" --l3-isolation-domain-name "example-l3domain" --resource-name "example-internalNetwork" --vlan-id 2600 --mtu 1500 --connected-ipv4-subnets "[{prefix:'10.2.0.0/24'}]" --static-route-configuration '{extension:NPB,bfdConfiguration:{multiplier:5,intervalInMilliSeconds:300},ipv4Routes:[{prefix:'10.3.0.0/24',nextHop:['10.5.0.1']},{prefix:'10.4.0.0/24',nextHop:['10.6.0.1']}]}'

Saída esperada

{
  "administrativeState": "Enabled",
  "configurationState": "Succeeded",
  "connectedIPv4Subnets": [
    {
      "prefix": "10.2.0.0/24"
    }
  ],
  "extension": "NoExtension",
  "id": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/l3IsolationDomains/example-l3domain/internalNetworks/example-internalnetwork",
  "isMonitoringEnabled": "True",
  "mtu": 1500,
  "name": "example-internalNetwork",
  "provisioningState": "Succeeded",
  "resourceGroup": "ResourceGroupName",
  "staticRouteConfiguration": {
    "bfdConfiguration": {
      "administrativeState": "Disabled",
      "intervalInMilliSeconds": 300,
      "multiplier": 5
    },
    "extension": "NoExtension",
    "ipv4Routes": [
      {
        "nextHop": [
          "10.5.0.1"
        ],
        "prefix": "10.3.0.0/24"
      },
      {
        "nextHop": [
          "10.6.0.1"
        ],
        "prefix": "10.4.0.0/24"
      }
    ]
  },
  "systemData": {
    "createdAt": "2023-XX-XXT13:46:26.394343+00:00",
    "createdBy": "email@example.com",
    "createdByType": "User",
    "lastModifiedAt": "2023-XX-XXT13:46:26.394343+00:00",
    "lastModifiedBy": "email@example.com",
    "lastModifiedByType": "User"
  },
  "type": "microsoft.managednetworkfabric/l3isolationdomains/internalnetworks",
  "vlanId": 2600
}

Criar rede interna usando IPv6

az networkfabric internalnetwork create --resource-group "fab2nfrg180723" --l3-isolation-domain-name "example-l3domain" --resource-name "example-internalnetwork" --vlan-id 2800 --connected-ipv6-subnets '[{"prefix":"10:101:1::0/64"}]' --mtu 1500

Saída esperada

{
  "administrativeState": "Enabled",
  "configurationState": "Succeeded",
  "connectedIPv6Subnets": [
    {
      "prefix": "10:101:1::0/64"
    }
  ],
  "extension": "NoExtension",
  "id": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/l3IsolationDomains/l3domain2/internalNetworks/example-internalnetwork",
  "isMonitoringEnabled": "True",
  "mtu": 1500,
  "name": "example-internalnetwork",
  "provisioningState": "Succeeded",
  "resourceGroup": "ResourceGroupName",
  "systemData": {
    "createdAt": "2023-XX-XXT10:34:33.933814+00:00",
    "createdBy": "email@example.com",
    "createdByType": "User",
    "lastModifiedAt": "2023-XX-XXT10:34:33.933814+00:00",
    "lastModifiedBy": "email@example.com",
    "lastModifiedByType": "User"
  },
  "type": "microsoft.managednetworkfabric/l3isolationdomains/internalnetworks",
  "vlanId": 2800
}

Criar redes externas

As redes externas permitem que as cargas de trabalho tenham conectividade de Camada 3 com a borda do seu provedor. Eles também permitem que cargas de trabalho interajam com serviços externos, como firewalls e DNS. Você precisa do ASN de malha (criado durante a criação da malha de rede) para criar redes externas.

Os comandos para criar uma rede externa usando a CLI do Azure incluem os seguintes parâmetros.

Parâmetro Description Exemplo Necessário
emparelhamentoOption Emparelhamento usando optionA ou optionB. Valores possíveis OptionA e OptionB Opção B True
opçãoBProperties Configuração das propriedades OptionB. Para especificar use exportIPv4/IPv6RouteTargets ou importIpv4/Ipv6RouteTargets "exportIpv4/Ipv6RouteTargets": ["1234:1234"]}}
opçãoAProperties Configuração das propriedades OptionA. Por favor, consulte o exemplo de OptionA na seção abaixo
externo Este é um parâmetro opcional para inserir a conectividade MPLS Option 10 (B) para redes externas através de dispositivos Provider Edge. Usando essa opção, um usuário pode inserir destinos de rota de importação e exportação, conforme mostrado no exemplo

Para a opção A, você precisa criar uma rede externa antes de habilitar o domínio de isolamento L3. Um externo depende da rede interna, portanto, um externo não pode ser habilitado sem uma rede interna. O valor vlan-id deve estar entre 501 e 4095.

Criar uma rede externa usando a Opção B

az networkfabric externalnetwork create --resource-group "ResourceGroupName" --l3domain "examplel3-externalnetwork" --resource-name "examplel3-externalnetwork" --peering-option "OptionB" --option-b-properties "{routeTargets:{exportIpv4RouteTargets:['65045:2001'],importIpv4RouteTargets:['65045:2001']}}"

Saída esperada


{
  "administrativeState": "Enabled",
  "id": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/l3IsolationDomains/example-l3domain/externalNetworks/examplel3-externalnetwork",
  "name": "examplel3-externalnetwork",
  "optionBProperties": {
    "exportRouteTargets": [
      "65045:2001"
    ],
    "importRouteTargets": [
      "65045:2001"
    ],
    "routeTargets": {
      "exportIpv4RouteTargets": [
        "65045:2001"
      ],
      "importIpv4RouteTargets": [
        "65045:2001"
      ]
    }
  },
  "peeringOption": "OptionB",
  "provisioningState": "Succeeded",
  "resourceGroup": "ResourceGroupName",
  "systemData": {
    "createdAt": "2023-XX-XXT15:45:31.938216+00:00",
    "createdBy": "email@address.com",
    "createdByType": "User",
    "lastModifiedAt": "2023-XX-XXT15:45:31.938216+00:00",
    "lastModifiedBy": "email@address.com",
    "lastModifiedByType": "User"
  },
  "type": "microsoft.managednetworkfabric/l3isolationdomains/externalnetworks"
}

Criar uma rede externa com a Opção A

az networkfabric externalnetwork create --resource-group "ResourceGroupName" --l3domain "example-l3domain" --resource-name "example-externalipv4network" --peering-option "OptionA" --option-a-properties '{"peerASN": 65026,"vlanId": 2423, "mtu": 1500, "primaryIpv4Prefix": "10.18.0.148/30", "secondaryIpv4Prefix": "10.18.0.152/30"}'

Saída esperada

{
  "administrativeState": "Enabled",
  "id": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/l3IsolationDomains/example-l3domain/externalNetworks/example-externalipv4network",
  "name": "example-externalipv4network",
  "optionAProperties": {
    "fabricASN": 65050,
    "mtu": 1500,
    "peerASN": 65026,
    "primaryIpv4Prefix": "10.21.0.148/30",
    "secondaryIpv4Prefix": "10.21.0.152/30",
    "vlanId": 2423
  },
  "peeringOption": "OptionA",
  "provisioningState": "Succeeded",
  "resourceGroup": "ResourceGroupName",
  "systemData": {
    "createdAt": "2023-07-19T09:54:00.4244793Z",
    "createdAt": "2023-XX-XXT07:23:54.396679+00:00", 
    "createdBy": "email@address.com",
    "lastModifiedAt": "2023-XX-XX1T07:23:54.396679+00:00", 
    "lastModifiedBy": "email@address.com",
    "lastModifiedByType": "User"
  },
  "type": "microsoft.managednetworkfabric/l3isolationdomains/externalnetworks"
}

Criar uma criação de rede externa usando Ipv6

az networkfabric externalnetwork create --resource-group "ResourceGroupName" --l3domain "example-l3domain" --resource-name "example-externalipv6network" --peering-option "OptionA" --option-a-properties '{"peerASN": 65026,"vlanId": 2423, "mtu": 1500, "primaryIpv6Prefix": "fda0:d59c:da16::/127", "secondaryIpv6Prefix": "fda0:d59c:da17::/127"}'

O tamanho do prefixo IPv6 primário e secundário suportado é /127.

Saída esperada

{
  "administrativeState": "Enabled",
  "id": "/subscriptions//xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/l3IsolationDomains/example-l3domain/externalNetworks/example-externalipv6network",
  "name": "example-externalipv6network",
  "optionAProperties": {
    "fabricASN": 65050,
    "mtu": 1500,
    "peerASN": 65026,
    "primaryIpv6Prefix": "fda0:d59c:da16::/127",
    "secondaryIpv6Prefix": "fda0:d59c:da17::/127",
    "vlanId": 2423
  },
  "peeringOption": "OptionA",
  "provisioningState": "Succeeded",
  "resourceGroup": "ResourceGroupName",
  "systemData": {
    "createdAt": "2022-XX-XXT07:52:26.366069+00:00",
    "createdBy": "email@address.com",
    "createdByType": "User",
    "lastModifiedAt": "2022-XX-XXT07:52:26.366069+00:00",
    "lastModifiedBy": "email@address.com",
    "lastModifiedByType": "User"
  },
  "type": "microsoft.managednetworkfabric/l3isolationdomains/externalnetworks"
}

Habilitar um domínio de isolamento L2

az networkfabric l2domain update-administrative-state --resource-group "ResourceGroupName" --resource-name "l2HAnetwork" --state Enable 

Habilitar um domínio de isolamento L3

Use este comando para habilitar um domínio de isolamento L3 não confiável:

az networkfabric l3domain update-admin-state --resource-group "ResourceGroupName" --resource-name "l3untrust" --state Enable 

Use este comando para habilitar um domínio de isolamento L3 confiável:

az networkfabric l3domain update-admin-state --resource-group "ResourceGroupName" --resource-name "l3trust" --state Enable 

Use este comando para habilitar um domínio de isolamento L3 de gerenciamento:

az networkfabric l3domain update-admin-state --resource-group "ResourceGroupName" --resource-name "l3mgmt" --state Enable