Сетевой брокер пакетов
Брокер сетевых пакетов Оператора Azure Nexus — это специализированное предложение от Microsoft Azure, адаптированное для поставщиков услуг телекоммуникаций. С помощью брокера сетевых пакетов Оператора Azure Nexus операторы телекоммуникаций могут эффективно записывать, агрегировать, фильтровать и отслеживать трафик в своей инфраструктуре (AON), что позволяет выполнять глубокую проверку пакетов, анализ трафика и расширенный мониторинг сети. Это важно в телекоммуникационной отрасли, где обеспечение высокого качества обслуживания, обеспечение безопасности и соблюдение нормативных требований являются важными. Применяя это решение, операторы могут обеспечить более высокую видимость сетевого трафика, устранять проблемы более эффективно и в конечном итоге предоставлять улучшенные службы своим клиентам, сохраняя самые высокие стандарты сетевой безопасности и производительности.
Брокер сетевых пакетов (NPB) разработан и моделировался как отдельный ресурс Azure Resource Manager (ARM) в Microsoft.managednetworkfabric. Операторы могут создавать, читать, обновлять и удалять сетевые функции TAP, правила NETWORK TAP и соседних групп. Каждый брокер сетевых пакетов имеет несколько ресурсов, таких как Network TAP, соседская группа и правила TAP сети для управления, фильтрации и перенаправления указанного трафика.
Действия по включению брокера сетевых пакетов
Необходимые условия
- Устройства NPB правильно установлены, стекированы и подготовлены. Процедура подготовки сетевой структуры см. в разделе "Подготовка Network Fabric".
- Соответствующие vProbes должны быть настроены с выделенными IP-адресами
- Для внутренних vProbes необходимо создать домены изоляции уровня 3 с внутренними сетями. Необходимо настроить необходимые подключенные подсети, кроме того, флаг расширения должен иметь значение NPB (во внутренних сетях). Процедура создания внутренних и внешних сетей в домене изоляции и задания флага расширения для NPB см. в разделе "Домены изоляции".
- Для варианта использования "Сеть — сеть — сеть" (NNI) необходимо создать NNI в качестве типа
NPB
. Соответствующие свойства уровня 2 и уровня 3 должны быть определены во время создания NNI. Инструкции по созданию сети к сетевому соединению (NNI) см. в разделе "Подготовка Network Fabric".
Шаги
- Создайте правило NETWORK TAP, предоставляющее конфигурацию соответствия (поддерживается только встроенный метод ввода)
- Создайте ресурс группы соседей, определяющий назначения.
- Создайте ресурс TAP сети, ссылающийся на правила касания и группы соседей.
- Включите ресурс NETWORK TAP.
NPB
NNF автоматически создаст этот ресурс во время начальной загрузки.
Показать NPB
Эта команда содержит сведения о логическом ресурсе NPB.
az networkfabric npb show --resource-group "example-rg" --resource-name "NPB1"
Ожидаемые выходные данные
{
"properties": {
"networkFabricId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourcegroups/example-rg/providers/Microsoft.ManagedNetworkFabric/networkFabrics/example-networkFabric",
"networkDeviceIds": [
"/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourcegroups/example-rg/providers/Microsoft.ManagedNetworkFabric/networkDevices/example-networkDevice"
],
"sourceInterfaceIds": [
"/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourcegroups/example-rg/providers/Microsoft.ManagedNetworkFabric/networkDevices/example-networkDevice/networkInterfaces/example-networkInterface"
],
"networkTapIds": [
"/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourcegroups/example-rg/providers/Microsoft.ManagedNetworkFabric/networkTaps/example-networkTap"
],
"neighborGroupIds": [
"/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourcegroups/example-rg/providers/Microsoft.ManagedNetworkFabric/neighborGroups/example-neighborGroup"
],
"provisioningState": "Succeeded"
},
"tags": {
"key2806": "key"
},
"location": "eastuseuap",
"id": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/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"
}
}
Правила TAP сети
Ресурс NetworkTapRule обеспечивает возможность фильтрации и переадресации сочетаний условий и действий.
Параметры для правил СЕТЕВОГО TAP
Параметр | Описание | Пример | Обязательное поле |
---|---|---|---|
resource-group | Используйте соответствующее имя группы ресурсов специально для networkTapRule | ResourceGroupName | Истина |
имя ресурса | Имена ресурсов касания сети | InternetTAPrule1 | Истина |
расположение | AzON Azure Region, используемый во время создания контроллера Network Fabric (NFC) | eastus | Истина |
тип конфигурации | Методы ввода для настройки правила касания сети. | Встроенный или файл | Истина |
конфигурации сопоставления | Список конфигураций соответствия. | ||
match-configurations/matchconfigurationName | Имя блока конфигурации Match | ||
match-configurations/sequenceNumber | Порядковый номер конфигурации match | ||
match-configurations/ipAddressType | Семейство IP-адресов | ||
match-configurations/matchconditions | Список условий динамического соответствия на основе портов, протоколов, VLAN и IP-адресов. | ||
сопоставления конфигураций и действий | Укажите сведения о действии. Действия могут быть drop, Count, Log,Goto,Redirect,Mirror | ||
динамические конфигурации сопоставления | Список конфигураций динамического сопоставления на основе порта, виртуальной локальной сети и IP-адреса |
Примечание.
Правила касания сети и группы соседей должны быть созданы перед ссылкой на них в разделе "Сетевой касание"
Создание правила касания сети
Эта команда создает правило сетевого касания:
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:'example-vlanGroup',vlans:['10']}],portGroups:[{name:'example-portGroup1',ports:['100-200']}]}]"
Ожидаемые выходные данные:
{
"properties": {
"networkTapId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/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": [
"example-vlanGroup"
]
},
"ipCondition": {
"type": "SourceIP",
"prefixType": "Prefix",
"ipPrefixValues": [
"10.10.10.10/20"
],
"ipGroupNames": [
"example-ipGroup"
]
}
}
],
"actions": [
{
"type": "Drop",
"truncate": "100",
"isTimestampEnabled": "True",
"destinationId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourcegroups/example-rg/providers/Microsoft.ManagedNetworkFabric/neighborGroups/example-neighborGroup",
"matchConfigurationName": "match1"
}
]
}
],
"dynamicMatchConfigurations": [
{
"ipGroups": [
{
"name": "example-ipGroup1",
"ipPrefixes": [
"10.10.10.10/30"
]
}
],
"vlanGroups": [
{
"name": "example-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/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/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"
}
}
Показать правило касания сети
Эта команда отображает ресурс сообщества IP:
az networkfabric taprule show --resource-group "example-rg" --resource-name "example-networktaprule"
Ожидаемые выходные данные:
{
"properties": {
"networkTapId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/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": [
"example-vlanGroup"
]
},
"ipCondition": {
"type": "SourceIP",
"prefixType": "Prefix",
"ipPrefixValues": [
"10.10.10.10/20"
],
"ipGroupNames": [
"example-ipGroup"
]
}
}
],
"actions": [
{
"type": "Drop",
"truncate": "100",
"isTimestampEnabled": "True",
"destinationId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourcegroups/example-rg/providers/Microsoft.ManagedNetworkFabric/neighborGroups/example-neighborGroup",
"matchConfigurationName": "match1"
}
]
}
],
"dynamicMatchConfigurations": [
{
"ipGroups": [
{
"name": "example-ipGroup1",
"ipPrefixes": [
"10.10.10.10/30"
]
}
],
"vlanGroups": [
{
"name": "example-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/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/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"
}
}
Соседняя группа
Ресурс группы соседей имеет возможность группировать назначения для пересылки отфильтрованного трафика.
Параметры для соседней группы
Параметр | Описание | Пример | Обязательное поле |
---|---|---|---|
resource-group | Используйте соответствующее имя группы ресурсов специально для вашей группы соседей | ResourceGroupName | Истина |
имя ресурса | Имена ресурсов соседней группы | example-Neighbor | Истина |
расположение | AzON Azure Region, используемый во время создания NFC | eastus | Истина |
destination | Список назначений Ipv4 или Ipv6 для пересылки трафика | 10.10.10.10 | Истина |
Создание группы соседей
Эта команда создает ресурс группы соседей:
az networkfabric neighborgroup create --resource-group "example-rg" --location "westus3"
--resource-name "example-neighborgroup" --destination "{ipv4Addresses:['10.10.10.10']}"
Ожидаемые выходные данные:
{
"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"
}
}
Показать ресурс группы соседей
Эта команда отображает ресурс расширенного сообщества IP:
az networkfabric neighborgroup show --resource-group "example-rg" --resource-name "example-neighborgroup"
Ожидаемые выходные данные:
{
"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"
}
}
виртуальной сети Azure
Сеть TAP позволяет операторам определять назначения и механизм инкапсуляции для пересылки отфильтрованного трафика на основе правил СЕТЕВОго TAP
Параметры для сетевого касания
Параметр | Описание | Пример | Обязательное поле |
---|---|---|---|
resource-group | Используйте соответствующее имя группы ресурсов специально для касания сети | ResourceGroupName | Истина |
имя ресурса | Имя ресурса касания сети | NetworkTAP-Austin | Истина |
расположение | AzON Azure Region, используемый во время создания NFC | eastus | Истина |
network-packet-broker-id | ARMID ресурса брокера сетевых пакетов | Истина | |
тип опроса | Метод опроса для правил касания сети (push или pull) | Извлечь | Истина |
destination | Определения назначения | Истина | |
назначение или имя | имя назначения | ||
назначение или тип | тип назначения. ИзоляцияDomain или NNI | ||
destination/IsolationDomainProperties | Сведения о домене изоляции. Инкапсуляция, идентификаторы групп соседей | Идентификатор Azure Resource Manager (ARM) внутренней сети или NNI | False |
destinationTapRuleId | ARMID правила Tap, которое необходимо применить | Истина |
Примечание.
Правила касания сети и группы соседей должны быть созданы перед ссылкой на них в разделе "Сетевой касание"
Соглашения об именовании устройств NetworkTAP и рекомендации.
Важно убедиться, что конфигурации и значения в этих именах наборов полей (vlanGroupNames, ipGroupNames, PortGroupNames) уникальны и не конфликтуют друг с другом.
Рекомендации.
Уникальные имена наборов полей: имена наборов полей в NetworkTAPRules должны быть уникальными, если содержимое набора полей отличается.
Уникальные имена ресурсов: имена ресурсов NetworkTAP и NetworkTAPRule должны быть уникальными в группах ресурсов в Структуре.
Создание региональных ресурсов: ресурсы NetworkTAP и NetworkTAPRule должны быть созданы в пределах региона и связаны с соответствующей структурой в регионе.
Изменение имени назначения: имя назначения уникально для определенной конфигурации назначения правила касания сети. Имя назначения нельзя изменить после отправки конфигурации касания сети на устройство.
Создание сетевого касания
Эта команда создает ресурс 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/l3IsolationDomains/example-l3Domain/internalNetworks/example-internalNetwork',\
isolationDomainProperties:{encapsulation:None,neighborGroupIds:['/subscriptions/xxxxx-xxxx-xxxx-xxxx-xxxxx/resourcegroups/example-rg/providers/Microsoft.ManagedNetworkFabric/neighborGroups/example-neighborGroup']},\