Broker pakietów sieciowych

Broker pakietów sieciowych w systemie Nexus platformy Azure to wyspecjalizowana oferta oferowana przez platformę Microsoft Azure dostosowaną do dostawców usług telekomunikacyjnych. Dzięki brokerowi pakietów sieciowych operatora platformy Azure Nexus operatorzy telekomunikacyjni mogą efektywnie przechwytywać, agregować, filtrować i monitorować ruch w całej infrastrukturze (AON), co pozwala na głęboką inspekcję pakietów, analizę ruchu i ulepszone monitorowanie sieci. Jest to szczególnie istotne w branży telekomunikacyjnej, gdzie utrzymanie wysokiej jakości usług, zapewnienie bezpieczeństwa i przestrzeganie wymogów regulacyjnych jest najważniejsze. Dzięki wykorzystaniu tego rozwiązania operatorzy mogą uzyskać lepszy wgląd w ruch sieciowy, skuteczniej rozwiązywać problemy i ostatecznie dostarczać ulepszone usługi klientom przy zachowaniu najwyższych standardów zabezpieczeń i wydajności sieci.

Serwer NPB został zaprojektowany i modelowany jako oddzielny zasób usługi Azure Resource Manager (ARM) najwyższego poziomu w obszarze Microsoft.managednetworkfabric. Operatory mogą tworzyć, odczytywać, aktualizować i usuwać funkcje sieci TAP, reguł interfejsu TAP sieci i grupy sąsiadów. Każdy broker pakietów sieciowych będzie miał wiele zasobów, takich jak Network TAP, Neighbor Group i Network TAP Rules w celu zarządzania, filtrowania i przesyłania dalej wyznaczonego ruchu.

Kroki włączania brokera pakietów sieciowych

Wymagania wstępne

  • Urządzenia NPB są poprawnie montowane, ułożone i aprowidowane. Aby zapoznać się z procedurą aprowizacji sieci szkieletowej sieci szkieletowej, zobacz Network Fabric Provisioning (Aprowizowanie sieci szkieletowej sieci szkieletowej).
  • Odpowiednie pakiety vProbe należy skonfigurować przy użyciu dedykowanych adresów IP
  • W przypadku wewnętrznych środowisk vProbe należy utworzyć domeny izolacji warstwy 3 z sieciami wewnętrznymi. Oprócz niej należy skonfigurować wymagane połączone podsieci, a także flagę rozszerzenia należy ustawić na npB (w sieciach wewnętrznych). Aby uzyskać procedurę tworzenia sieci wewnętrznych i zewnętrznych w domenie izolacji i ustawiania flagi rozszerzenia dla serwera NPB, zobacz Domeny izolacji.
  • W przypadku użycia network to Network Inter-connect (NNI) należy utworzyć NNI jako typ NPB. Podczas tworzenia sieci NNI należy zdefiniować odpowiednie właściwości warstwy 2 i warstwy 3. Aby zapoznać się z procedurą tworzenia sieci do połączenia sieciowego (NNI), zobacz Network Fabric Provisioning (Aprowizowanie sieci szkieletowej).

Kroki

  1. Utwórz regułę interfejsu TAP sieci, podając konfigurację dopasowania (obsługiwana jest tylko metoda wejściowa śródliniowa)
  2. Utwórz zasób grupy sąsiadów definiujący miejsca docelowe.
  3. Utwórz zasób network TAP odwołując się do reguł tap i grup sąsiadów.
  4. Włącz zasób network TAP.

NpB

Ten zasób zostanie automatycznie utworzony przez NNF podczas uruchamiania.

Pokaż serwer NPB

To polecenie pokazuje szczegóły zasobu logicznego serwera NPB.

 az networkfabric npb show --resource-group "example-rg" --resource-name "NPB1"

Oczekiwane dane wyjściowe

{
  "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"
  }
}

Reguły interfejsu TAP sieci

Zasób NetworkTapRule zapewnia możliwość udostępniania kombinacji warunków i akcji filtrowania i przesyłania dalej.

Parametry reguł interfejsu TAP sieci

Parametr Opis Przykład Wymagania
resource-group Użyj odpowiedniej nazwy grupy zasobów specjalnie dla elementu NetworkTapRule ResourceGroupName Prawda
nazwa zasobu Nazwa zasobu naciśnięcia sieci InternetTAPrule1 Prawda
lokalizacja Region platformy Azure AzON używany podczas tworzenia nfc eastus Prawda
typ konfiguracji Metoda wprowadzania w celu skonfigurowania reguły naciśnięcia sieci. Wbudowany lub plik Prawda
konfiguracje dopasowania Lista konfiguracji dopasowania.
match-configurations/matchconfigurationName Nazwa bloku konfiguracji Dopasowania
match-configurations/sequenceNumber Numer sekwencji konfiguracji dopasowania
match-configurations/ipAddressType Rodzina adresów IP
match-configurations/matchconditions Lista warunków dopasowania dynamicznego na podstawie portów, protokołów, warunków sieci Vlan i ip.
match-configurations/action Podaj szczegóły akcji. Akcje mogą być drop, Count, Log,Goto,Redirect,Mirror
dynamiczne konfiguracje dopasowania Lista konfiguracji dynamicznych dopasowań opartych na portach, sieci Vlan i adresach IP

Uwaga

Reguły naciśnięcia sieci i grupy sąsiadów muszą zostać utworzone przed ich refrencing w obszarze Naciśnij sieć

Tworzenie reguły naciśnięcia sieci

To polecenie tworzy regułę naciśnięcia sieci:

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']}]}]"

Oczekiwane dane wyjściowe:

{
  "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"
  }
}

Pokaż regułę naciśnięcia sieci

To polecenie wyświetla zasób społeczności adresów IP:

az networkfabric taprule show --resource-group "example-rg" --resource-name "example-networktaprule"

Oczekiwane dane wyjściowe:

{
  "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"
  }
}

Grupa sąsiadów

Zasób grupy sąsiadów ma możliwość grupowania miejsc docelowych na potrzeby przesyłania dalej filtrowanego ruchu

Parametry grupy sąsiadów

Parametr Opis Przykład Wymagania
resource-group Użyj odpowiedniej nazwy grupy zasobów specjalnie dla grupy sąsiadów ResourceGroupName Prawda
nazwa zasobu Nazwa zasobu grupy sąsiadów example-Neighbor Prawda
lokalizacja Region platformy Azure AzON używany podczas tworzenia nfc eastus Prawda
destination Lista miejsc docelowych Ipv4 lub Ipv6 do przesyłania dalej ruchu 10.10.10.10 Prawda

Utwórz grupę sąsiadów

To polecenie tworzy zasób Grupy sąsiadów:

 az networkfabric neighborgroup create --resource-group "example-rg" --location "westus3"
--resource-name "example-neighborgroup" --destination "{ipv4Addresses:['10.10.10.10']}"

Oczekiwane dane wyjściowe:

{
  "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"
  }
}

Pokaż zasób grupy sąsiadów

To polecenie wyświetla rozszerzony zasób społeczności ip:

 az networkfabric neighborgroup show --resource-group "example-rg" --resource-name "example-neighborgroup"

Oczekiwane dane wyjściowe:

{
  "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"
  }
}

Sieć TAP

Funkcja TAP sieci umożliwia operatorom definiowanie miejsc docelowych i mechanizmu hermetyzacji w celu przekazywania filtrowanego ruchu na podstawie reguł interfejsu TAP sieci

Parametry dla sieci TAP

Parametr Opis Przykład Wymagania
resource-group Użyj odpowiedniej nazwy grupy zasobów specjalnie dla pozycji Network Tap ResourceGroupName Prawda
nazwa zasobu Nazwa zasobu naciśnięcia sieci NetworkTAP-Austin Prawda
lokalizacja Region platformy Azure AzON używany podczas tworzenia nfc eastus Prawda
network-packet-broker-id ArmiD zasobu brokera pakietów sieciowych Prawda
typ sondowania Metoda sondowania reguł naciśnięcia sieci (wypychanie lub ściąganie) Pull (Git: ściągnij) Prawda
destination Definicje docelowe Prawda
miejsce docelowe/nazwa nazwa miejsca docelowego
miejsce docelowe/typ typ miejsca docelowego. IzolacjaDomain lub NNI
destination/IsolationDomainProperties Szczegóły domeny izolacji. Hermetyzacja, identyfikatory grup sąsiadów Identyfikator usługi Azure Resource Manager (ARM) sieci wewnętrznej lub NNI Fałsz
destinationTapRuleId ARMID reguły Tap, która musi być stosowana Prawda

Tworzenie interfejsu TAP sieci

To polecenie tworzy zasób network Tap:

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']},\