다음을 통해 공유


NNI 및 계층 3 격리 도메인 외부 네트워크에 대한 ACL(액세스 제어 목록) 관리 만들기

ACL(액세스 제어 목록)은 네트워크 내에서 인바운드 및 아웃바운드 패킷 흐름을 규제하는 규칙 집합입니다. Azure의 Nexus Network Fabric 서비스는 네트워크 간 상호 연결 및 계층 3 격리 도메인 외부 네트워크에 대한 ACL을 구성하는 API 기반 메커니즘을 제공합니다. 이 가이드에서는 ACL을 만드는 단계를 간략하게 설명합니다.

ACL(액세스 제어 목록) 만들기

ACL을 만들고 해당 속성을 정의하려면 이 명령을 사용할 az networkfabric acl create 수 있습니다. 관련된 단계는 다음과 같습니다.

필수 조건

  1. 구독 설정(필요한 경우):

구독이 여러 개 있고 기본값으로 설정해야 하는 경우 다음을 사용하여 설정할 수 있습니다.

az account set --subscription <subscription-id>
  1. ACL 만들기:
    az networkfabric acl create --resource-group "<resource-group>" --location "<location>" --resource-name "<acl-name>" --annotation "<annotation>" --configuration-type "<configuration-type>" --default-action "<default-action>" --match-configurations "[{matchConfigurationName:<match-config-name>,sequenceNumber:<sequence-number>,ipAddressType:<IPv4/IPv6>,matchConditions:[{ipCondition:{type:<SourceIP/DestinationIP>,prefixType:<Prefix/Exact>,ipPrefixValues:['<ip-prefix1>', '<ip-prefix2>', ...]}}],actions:[{type:<Action>}]}]"
매개 변수 Description
리소스 그룹 네트워크 패브릭의 리소스 그룹을 지정합니다.
위치 ACL이 만들어지는 위치를 정의합니다.
리소스 이름 ACL의 이름을 제공합니다.
Annotation 필요에 따라 ACL에 대한 설명 또는 주석을 추가합니다.
구성 유형 구성이 인라인인지 아니면 파일을 사용하는지를 지정합니다.
기본 작업 일치하는 항목이 없는 경우 수행할 기본 작업을 정의합니다.
매칭 설정 트래픽 일치에 대한 조건 및 작업을 정의합니다.
활동 일치 조건에 따라 수행해야 할 작업을 지정합니다.

매개 변수 사용 지침

아래 표에서는 ACL을 만들 때 매개 변수 사용에 대한 지침을 제공합니다.

매개 변수 Description 예제 또는 범위
defaultAction 수행할 기본 작업을 정의합니다. "defaultAction": "허용"
resource-group 네트워크 패브릭의 리소스 그룹 nfresourcegroup
resource-name ACL의 이름 example-ingressACL
vlan그룹 VLAN 그룹 목록
VLAN 일치해야 하는 VLAN 목록
match-configurations 일치 구성의 이름 example_acl
일치 조건 일치해야 하는 조건
ttl값 TTL [Time To Live] 0-255
DSCP 마킹 일치해야 하는 DSCP 표시 0-63
조각 IP 조각 패킷 지정 범위: 1-8191
예: [1, 5, 1250-1300, 8000-8191]
포트컨디션 일치해야 하는 포트 조건
포트 유형 일치해야 하는 포트 형식 예: SourcePort
ports 일치해야 하는 포트 번호 범위: 0-65535
예: [1, 10, 500, 1025-1050, 64000-65535]
프로토콜 유형 일치해야 하는 프로토콜 [tcp, udp, range[1-2, 1, 2]]
vlanMatch조건 일치해야 하는 VLAN 일치 조건
layer4프로토콜 계층 4 프로토콜 는 TCP 또는 UDP여야 합니다.
ip컨디션 일치해야 하는 IP 조건
행동 일치 조건에 따라 수행할 작업 기본 작업: 허용
기타 가능한 작업: PoliceRate, 삭제, 계산
PoliceRate 작업은 이 페이지의 뒷부분에 자세히 설명되어 있습니다.
구성 유형 구성 유형(인라인 또는 파일) 예: 인라인

비고

  • 인라인 포트 및 인라인 VLAN은 azcli를 사용하여 정적으로 정의됩니다.
  • PortGroupNames 및 VlanGroupNames는 동적으로 정의됩니다.
  • 인라인 VLAN 및 VLANGroupNames와 마찬가지로 인라인 포트와 portGroupNames를 결합하는 것은 허용되지 않습니다.
  • IPGroupNames 및 IpPrefixValues를 결합할 수 없습니다.
  • 송신 ACL은 IP 옵션, IP 길이, 조각, 이더 형식, DSCP 표시 및 TTL 값과 같은 특정 옵션을 지원하지 않습니다.
  • 수신 ACL은 etherType 옵션을 지원하지 않습니다.
  • 포트 입력은 다음과 같습니다 port-numberrange-of-ports.
  • 조각 입력은 다음과 같습니다.port-numberrange-of-ports
  • 영구 네트워크에서 동적 일치 구성을 사용하는 ACL은 지원되지 않습니다.

ACL 만들기에 대한 예제 페이로드

az networkfabric acl create --resource-group "example-rg" --location "eastus2euap" --resource-name "example-Ipv4ingressACL" --annotation "annotation" --configuration-type "Inline" --default-action "Deny" --match-configurations "[{matchConfigurationName:example-match,sequenceNumber:1110,ipAddressType:IPv4,matchConditions:[{ipCondition:{type:SourceIP,prefixType:Prefix,ipPrefixValues:['10.18.0.124/30','10.18.0.128/30','10.18.30.16/30','10.18.30.20/30']}},{ipCondition:{type:DestinationIP,prefixType:Prefix,ipPrefixValues:['10.18.0.124/30','10.18.0.128/30','10.18.30.16/30','10.18.30.20/30']}}],actions:[{type:Count}]}]"

예제 출력

{
  "administrativeState": "Disabled",
  "annotation": "annotation",
  "configurationState": "Succeeded",
  "configurationType": "Inline",
  "defaultAction": "Deny",
  "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/Fab3LabNF-4-0/providers/Microsoft.ManagedNetworkFabric/accessControlLists/L3domain091123-Ipv4egressACL",
  "location": "eastus2euap",
  "matchConfigurations": [
    {
      "actions": [
        {
          "type": "Count"
        }
      ],
      "ipAddressType": "IPv4",
      "matchConditions": [
        {
          "ipCondition": {
            "ipPrefixValues": [
              "10.18.0.124/30",
              "10.18.0.128/30",
              "10.18.30.16/30",
              "10.18.30.20/30"
            ],
            "prefixType": "Prefix",
            "type": "SourceIP"
          }
        },
        {
          "ipCondition": {
            "ipPrefixValues": [
              "10.18.0.124/30",
              "10.18.0.128/30",
              "10.18.30.16/30",
              "10.18.30.20/30"
            ],
            "prefixType": "Prefix",
            "type": "DestinationIP"
          }
        }
      ],
      "matchConfigurationName": "example-Ipv4ingressACL ",
      "sequenceNumber": 1110
    }
  ],
  "name": "example-Ipv4ingressACL",
  "provisioningState": "Succeeded",
  "resourceGroup": "Fab3LabNF-4-0",
  "systemData": {
    "createdAt": "2023-09-11T10:20:20.2617941Z",
    "createdBy": "user@email.com",
    "createdByType": "User",
    "lastModifiedAt": "2023-09-11T10:20:20.2617941Z",
    "lastModifiedBy": "user@email.com",
    "lastModifiedByType": "User"
  },
  "type": "microsoft.managednetworkfabric/accesscontrollists"
}

비고

ACL을 만든 후 추가 참조를 위해 ACL 참조 ID를 적어 두십시오.

트래픽 정책을 통한 속도 제한

지원되는 NF 버전에서 ACL은 트래픽 정책 프레임워크를 통한 속도 제한을 지원합니다. 이 작업은 일치하는 조건에 따라 수행되며, ACL 동작을 간단한 허용/거부 모델에서 세분화된 트래픽 치안 메커니즘으로 전환합니다. 이렇게 하면 IPv4 및 IPv6 흐름에 대한 대역폭 규제가 가능합니다.

주요 기능

  • 선택적 구성: 속도 제한은 기본적으로 적용되지 않습니다. 명시적으로 구성해야 합니다.
  • 범위: 적용 대상 -
    • NNI(네트워크 간 상호 연결)
    • 외부 네트워크 옵션 A 및 옵션 B 하위 인터페이스
  • 지원되는 ACL 형식: ControlPlaneTrafficPolicy, 테넌트 및 관리

매개 변수

속도: 지속적인 트래픽 처리량
단위: bps, kbps, mbps, gbps, pps
버스트 크기: 정의된 속도
단위를 초과하는 임시 허용량: 바이트, kbytes, mbytes, 패킷

API 예제:

"actions": [
{ 
"type": "PoliceRate", 
"policeRateConfiguration":
{ 
"bitRate":
{ 
 "rate": 1000, 
"unit": "Kbps" 
}, 
"burstSize":
{ 
"size": 10, 
 "unit": "KBytes" 
} } } ]

Configuration:

traffic-policies 
   cpu traffic-policy <NF-Name>-cptp-police-rate-acl vrf all 
   traffic-policy <NF-Name>-cptp-police-rate-acl 
      match <NF-Name>-cptp-police-rate-match ipv4 
         protocol neighbors bgp 
         ! 
         actions 
police rate 1000 kbps burst-size 10 kbytes 
      ! 
      match ipv4-all-default ipv4 
      ! 
      match ipv6-all-default ipv6

비고

버스트 크기는 NNI ACL에 경찰 속도가 정의된 경우 필수입니다.

다음 단계

Azure Fabric에서 NNI에 ACL(액세스 제어 목록) 적용