Corretor de pacotes de rede
O Network Packet Broker do Azure Operator Nexus é uma oferta especializada do Microsoft Azure adaptada para fornecedores de serviços de telecomunicações. Com o Network Packet Broker do Azure Operator Nexus, os operadores de telecomunicações podem capturar, agregar, filtrar e monitorizar o tráfego de forma eficiente na sua infraestrutura (AON), permitindo uma inspeção profunda de pacotes, análise de tráfego e monitorização de rede melhorada. Isto é particularmente crucial no setor das telecomunicações, onde a manutenção de um serviço de alta qualidade, a garantia da segurança e o cumprimento dos requisitos regulamentares são primordiais. Ao aproveitar essa solução, as operadoras podem obter melhor visibilidade do tráfego de rede, solucionar problemas de forma mais eficaz e, finalmente, fornecer serviços aprimorados aos clientes, mantendo os mais altos padrões de segurança e desempenho de rede.
O NPB foi projetado e modelado como um recurso de nível superior separado do Azure Resource Manager (ARM) em Microsoft.managednetworkfabric. Os operadores podem Criar, Ler, Atualizar e Eliminar funções de Rede TAP, Regra de Rede TAP e Grupo Vizinho. Cada agente de pacotes de rede terá vários recursos, como Network TAP, Neighbor Group, & Network TAP Rules para gerenciar, filtrar e encaminhar o tráfego designado.
Etapas para habilitar o Network Packet Broker
Pré-requisitos
- Os dispositivos NPB são corretamente colocados em rack, empilhados e provisionados. Para Procedimento sobre como provisionar a malha de rede, consulte Provisionamento de malha de rede.
- Os respetivos vProbes devem ser configurados com IPs dedicados
- Para vProbes internos, devem ser criados domínios de isolamento de camada 3 com redes internas. As sub-redes conectadas necessárias devem ser configuradas, além disso, o sinalizador de extensão deve ser definido como NPB (em redes internas). Para obter Procedimento sobre como criar redes internas e externas em um Domínio de Isolamento e definir sinalizador de extensão para NPB, consulte Domínios de Isolamento.
- Para o caso de uso Network to Network Inter-connect (NNI), o NNI deve ser criado como tipo
NPB
. As propriedades apropriadas das camadas 2 e 3 devem ser definidas durante a criação do NNI. Para obter Procedimento sobre como criar a rede para interconexão de rede (NNI), consulte Provisionamento de malha de rede.
Passos
- Criar uma regra TAP de rede que forneça a configuração de correspondência (apenas o método de entrada em linha é suportado)
- Crie um recurso de Grupo Vizinho definindo destinos.
- Crie um recurso TAP de rede fazendo referência às regras de toque e aos grupos vizinhos.
- Habilite o recurso Network TAP.
BFN
Este recurso seria criado automaticamente pelo NNF durante a inicialização.
Mostrar NPB
Este comando mostra os detalhes do recurso lógico NPB.
az networkfabric npb show --resource-group "example-rg" --resource-name "NPB1"
Saída esperada
{
"properties": {
"networkFabricId": "/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourcegroups/example-rg/providers/Microsoft.ManagedNetworkFabric/networkFabrics/example-networkFabric",
"networkDeviceIds": [
"/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourcegroups/example-rg/providers/Microsoft.ManagedNetworkFabric/networkDevices/example-networkDevice"
],
"sourceInterfaceIds": [
"/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourcegroups/example-rg/providers/Microsoft.ManagedNetworkFabric/networkDevices/example-networkDevice/networkInterfaces/example-networkInterface"
],
"networkTapIds": [
"/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourcegroups/example-rg/providers/Microsoft.ManagedNetworkFabric/networkTaps/example-networkTap"
],
"neighborGroupIds": [
"/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourcegroups/example-rg/providers/Microsoft.ManagedNetworkFabric/neighborGroups/example-neighborGroup"
],
"provisioningState": "Succeeded"
},
"tags": {
"key2806": "key"
},
"location": "eastuseuap",
"id": "/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourcegroups/example-rg/providers/Microsoft.ManagedNetworkFabric/networkPacketBrokers/example-networkPacketBroker",
"name": "example-networkPacketBroker",
"type": "microsoft.managednetworkfabric/networkPacketBrokers",
"systemData": {
"createdBy": "email@address.com",
"createdByType": "User",
"createdAt": "2023-05-17T11:56:12.100Z",
"lastModifiedBy": "email@address.com",
"lastModifiedByType": "User",
"lastModifiedAt": "2023-05-17T11:56:12.100Z"
}
}
Regras da Rede TAP
O recurso NetworkTapRule fornece a capacidade de fornecer combinações de condições e ações de filtragem e encaminhamento.
Parâmetros para as Regras TAP da Rede
Parâmetro | Description | Exemplo | Obrigatório |
---|---|---|---|
resource-group | Use um nome de grupo de recursos apropriado especificamente para sua NetworkTapRule | ResourceGroupName | True |
nome-recurso | Nome do recurso da rede Toque em | InternetTAPrule1 | True |
localização | AzON Azure Region usado durante a criação de NFC | eastus | True |
tipo de configuração | Método de entrada para configurar a Regra de Toque de Rede. | Inline ou Arquivo | True |
configurações de correspondência | Lista de configurações de correspondência. | ||
match-configurations/matchconfigurationName | Nome do bloco de configuração Match | ||
match-configurations/sequenceNumber | Número sequencial da configuração Match | ||
match-configurations/ipAddressType | Família de endereços IP | ||
configurações de correspondência/condições de correspondência | Lista de condições de correspondência dinâmica com base em porta, protocolo, Vlan & condições de IP. | ||
configurações de correspondência/ação | Forneça detalhes da ação. As ações podem ser Drop, Count, Log, Goto, Redirect, Mirror | ||
configurações de correspondência dinâmica | Lista de configurações de correspondência dinâmica com base em Port, Vlan & IP |
Nota
As regras de Toque de Rede e os Grupos Vizinhos devem ser criados antes de serem recriados no Toque de Rede
Criar regra de toque em rede
Este comando cria uma regra de Toque de Rede:
az networkfabric taprule create --resource-group "example-rg" --location "westus3"--resource-name "example-networktaprule"\
--configuration-type "Inline" \
--match-configurations "[{matchConfigurationName:config1,sequenceNumber:10,ipAddressType:IPv4,matchConditions:[{encapsulationType:None,portCondition:{portType:SourcePort,layer4Protocol:TCP,ports:[100],portGroupNames:['example-portGroup1']},protocolTypes:[TCP],vlanMatchCondition:{vlans:['10'],innerVlans:['11-20']},ipCondition:{type:SourceIP,prefixType:Prefix,ipPrefixValues:['10.10.10.10/20']}}],\
actions:[{type:Drop,truncate:100,isTimestampEnabled:True,destinationId:'/subscriptions/xxxxx-xxxx-xxxx-xxxx-xxxxx/resourcegroups/example-rg/providers/Microsoft.ManagedNetworkFabric/neighborGroups/example-neighborGroup',matchConfigurationName:match1}]}]"\
--dynamic-match-configurations"[{ipGroups:[{name:'example-ipGroup1',ipAddressType:IPv4,ipPrefixes:['10.10.10.10/30']}],vlanGroups:[{name:'exmaple-vlanGroup',vlans:['10']}],portGroups:[{name:'example-portGroup1',ports:['100-200']}]}]"
Resultado esperado:
{
"properties": {
"networkTapId": "/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourcegroups/example-rg/providers/Microsoft.ManagedNetworkFabric/networkTaps/example-taprule",
"pollingIntervalInSeconds": 30,
"lastSyncedTime": "2023-06-12T07:11:22.485Z",
"configurationState": "Succeeded",
"provisioningState": "Accepted",
"administrativeState": "Enabled",
"annotation": "annotation",
"configurationType": "Inline",
"tapRulesUrl": "",
"matchConfigurations": [
{
"matchConfigurationName": "config1",
"sequenceNumber": 10,
"ipAddressType": "IPv4",
"matchConditions": [
{
"encapsulationType": "None",
"portCondition": {
"portType": "SourcePort",
"l4Protocol": "TCP",
"ports": [
"100"
],
"portGroupNames": [
"example-portGroup1"
]
},
"protocolTypes": [
"TCP"
],
"vlanMatchCondition": {
"vlans": [
"10"
],
"innerVlans": [
"11-20"
],
"vlanGroupNames": [
"exmaple-vlanGroup"
]
},
"ipCondition": {
"type": "SourceIP",
"prefixType": "Prefix",
"ipPrefixValues": [
"10.10.10.10/20"
],
"ipGroupNames": [
"example-ipGroup"
]
}
}
],
"actions": [
{
"type": "Drop",
"truncate": "100",
"isTimestampEnabled": "True",
"destinationId": "/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourcegroups/example-rg/providers/Microsoft.ManagedNetworkFabric/neighborGroups/example-neighborGroup",
"matchConfigurationName": "match1"
}
]
}
],
"dynamicMatchConfigurations": [
{
"ipGroups": [
{
"name": "example-ipGroup1",
"ipPrefixes": [
"10.10.10.10/30"
]
}
],
"vlanGroups": [
{
"name": "exmaple-vlanGroup",
"vlans": [
"10",
"100-200"
]
}
],
"portGroups": [
{
"name": "example-portGroup1",
"ports": [
"100-200"
]
},
{
"name": "example-portGroup2",
"ports": [
"900",
"1000-2000"
]
}
]
}
]
},
"tags": {
"keyID": "keyValue"
},
"location": "eastuseuap",
"id": "/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourcegroups/example-rg/providers/Microsoft.ManagedNetworkFabric/networkTapRules/example-tapRule",
"name": "example-tapRule",
"type": "microsoft.managednetworkfabric/networkTapRules",
"systemData": {
"createdBy": "email@address.com",
"createdByType": "User",
"createdAt": "2023-06-12T07:11:22.488Z",
"lastModifiedBy": "user@mail.com",
"lastModifiedByType": "User",
"lastModifiedAt": "2023-06-12T07:11:22.488Z"
}
}
Mostrar regra de toque em rede
Este comando exibe um recurso da comunidade IP:
az networkfabric taprule show --resource-group "example-rg" --resource-name "example-networktaprule"
Resultado esperado:
{
"properties": {
"networkTapId": "/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourcegroups/example-rg/providers/Microsoft.ManagedNetworkFabric/networkTaps/example-taprule",
"pollingIntervalInSeconds": 30,
"lastSyncedTime": "2023-06-12T07:11:22.485Z",
"configurationState": "Succeeded",
"provisioningState": "Accepted",
"administrativeState": "Enabled",
"annotation": "annotation",
"configurationType": "Inline",
"tapRulesUrl": "",
"matchConfigurations": [
{
"matchConfigurationName": "config1",
"sequenceNumber": 10,
"ipAddressType": "IPv4",
"matchConditions": [
{
"encapsulationType": "None",
"portCondition": {
"portType": "SourcePort",
"l4Protocol": "TCP",
"ports": [
"100"
],
"portGroupNames": [
"example-portGroup1"
]
},
"protocolTypes": [
"TCP"
],
"vlanMatchCondition": {
"vlans": [
"10"
],
"innerVlans": [
"11-20"
],
"vlanGroupNames": [
"exmaple-vlanGroup"
]
},
"ipCondition": {
"type": "SourceIP",
"prefixType": "Prefix",
"ipPrefixValues": [
"10.10.10.10/20"
],
"ipGroupNames": [
"example-ipGroup"
]
}
}
],
"actions": [
{
"type": "Drop",
"truncate": "100",
"isTimestampEnabled": "True",
"destinationId": "/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourcegroups/example-rg/providers/Microsoft.ManagedNetworkFabric/neighborGroups/example-neighborGroup",
"matchConfigurationName": "match1"
}
]
}
],
"dynamicMatchConfigurations": [
{
"ipGroups": [
{
"name": "example-ipGroup1",
"ipPrefixes": [
"10.10.10.10/30"
]
}
],
"vlanGroups": [
{
"name": "exmaple-vlanGroup",
"vlans": [
"10",
"100-200"
]
}
],
"portGroups": [
{
"name": "example-portGroup1",
"ports": [
"100-200"
]
},
{
"name": "example-portGroup2",
"ports": [
"900",
"1000-2000"
]
}
]
}
]
},
"tags": {
"keyID": "keyValue"
},
"location": "eastuseuap",
"id": "/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourcegroups/example-rg/providers/Microsoft.ManagedNetworkFabric/networkTapRules/example-tapRule",
"name": "example-tapRule",
"type": "microsoft.managednetworkfabric/networkTapRules",
"systemData": {
"createdBy": "email@address.com",
"createdByType": "User",
"createdAt": "2023-06-12T07:11:22.488Z",
"lastModifiedBy": "user@mail.com",
"lastModifiedByType": "User",
"lastModifiedAt": "2023-06-12T07:11:22.488Z"
}
}
Grupo de vizinhos
O recurso Grupo Vizinho tem a capacidade de agrupar destinos para encaminhar o tráfego filtrado
Parâmetros para grupo vizinho
Parâmetro | Description | Exemplo | Obrigatório |
---|---|---|---|
resource-group | Use um nome de grupo de recursos apropriado especificamente para seu NeighborGroup | ResourceGroupName | True |
nome-recurso | Nome do recurso do NeighborGroup | exemplo-Vizinho | True |
localização | AzON Azure Region usado durante a criação de NFC | eastus | True |
destination | Lista de destinos Ipv4 ou Ipv6 para encaminhar tráfego | 10.10.10.10 | True |
Criar grupo Vizinho
Este comando cria um recurso de Grupo Vizinho:
az networkfabric neighborgroup create --resource-group "example-rg" --location "westus3"
--resource-name "example-neighborgroup" --destination "{ipv4Addresses:['10.10.10.10']}"
Resultado esperado:
{
"properties": {
"networkTapIds": [
],
"networkTapRuleIds": [
],
"destination": {
"ipv4Addresses": [
"10.10.10.10",
]
},
"provisioningState": "Succeeded",
"annotation": "annotation"
},
"tags": {
"keyID": "KeyValue"
},
"location": "eastus",
"id": "/subscriptions/subscriptionId/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/neighborGroups/example-neighborGroup",
"name": "example-neighborGroup",
"type": "microsoft.managednetworkfabric/neighborGroups",
"systemData": {
"createdBy": "user@mail.com",
"createdByType": "User",
"createdAt": "2023-05-23T05:49:59.193Z",
"lastModifiedBy": "email@address.com",
"lastModifiedByType": "User",
"lastModifiedAt": "2023-05-23T05:49:59.194Z"
}
}
Mostrar recurso de grupo Vizinho
Este comando exibe um recurso de comunidade estendida IP:
az networkfabric neighborgroup show --resource-group "example-rg" --resource-name "example-neighborgroup"
Resultado esperado:
{
"properties": {
"networkTapIds": [
],
"networkTapRuleIds": [
],
"destination": {
"ipv4Addresses": [
"10.10.10.10",
]
},
"provisioningState": "Succeeded",
"annotation": "annotation"
},
"tags": {
"keyID": "KeyValue"
},
"location": "eastus",
"id": "/subscriptions/subscriptionId/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/neighborGroups/example-neighborGroup",
"name": "example-neighborGroup",
"type": "microsoft.managednetworkfabric/neighborGroups",
"systemData": {
"createdBy": "user@mail.com",
"createdByType": "User",
"createdAt": "2023-05-23T05:49:59.193Z",
"lastModifiedBy": "email@address.com",
"lastModifiedByType": "User",
"lastModifiedAt": "2023-05-23T05:49:59.194Z"
}
}
Rede TAP
Rede TAP permite aos Operadores definir destinos e mecanismo de encapsulamento para encaminhar tráfego filtrado com base nas Regras TAP da Rede
Parâmetros para Rede TAP
Parâmetro | Description | Exemplo | Obrigatório |
---|---|---|---|
resource-group | Usar um nome de grupo de recursos apropriado especificamente para sua rede Toque em | ResourceGroupName | True |
nome-recurso | Nome do recurso da rede Toque em | RedeTAP-Austin | True |
localização | AzON Azure Region usado durante a criação de NFC | eastus | True |
ID do corretor de pacotes de rede | ARMID do recurso Network Packet Broker | True | |
tipo de sondagem | Método de sondagem para regras de toque de rede (Push ou Pull) | Pull (Git: Solicitar) | True |
destination | Definições de destino | True | |
destino/nome | Nome do destino | ||
destino/tipo | tipo de destino. IsolationDomain ou NNI | ||
destination/IsolationDomainProperties | Detalhes do domínio Isolamento. Encapsulamento, IDs de grupo vizinhos | ID do Azure Resource Manager (ARM) da rede interna ou NNI | False |
destinationTapRuleId | ARMID da regra Tap, que precisa ser aplicada | True |
Criar Rede TAP
Este comando cria o recurso Tap de rede:
az networkfabric tap create --resource-group "example-rg" --location "westus3" \
--resource-name "example-networktap" \
--network-packet-broker-id "/subscriptions/xxxxx-xxxx-xxxx-xxxx-xxxxx/resourcegroups/example-rg/providers/Microsoft.ManagedNetworkFabric/networkPacketBrokers/example-networkPacketBroker" \
--polling-type "Pull"\
--destinations "[{name:'example-destinationName',destinationType:IsolationDomain,destinationId:'/subscriptions/xxxxx/resourcegroups/example-rg/providers/Microsoft.ManagedNetworkFabric/l3IsloationDomains/example-l3Domain/internalNetworks/example-internalNetwork',\
isolationDomainProperties:{encapsulation:None,neighborGroupIds:['/subscriptions/xxxxx-xxxx-xxxx-xxxx-xxxxx/resourcegroups/example-rg/providers/Microsoft.ManagedNetworkFabric/neighborGroups/example-neighborGroup']},\