IP 접두사를 만들고 관리하는 방법

이 문서에서는 Azure Operator Nexus의 IP 접두사 및 IP 접두사 규칙에 대한 기본 관리 작업을 설명합니다.

IP 접두사 작업

IP 접두사 만들기

IP 접두사 리소스를 만들려면 다음 단계를 수행합니다.

  1. IP 접두사 리소스의 속성 및 규칙을 지정합니다. 다음 azcli 명령을 참조로 사용할 수 있습니다.

    az networkfabric ipprefix create--resource-group myResourceGroup \
      --name myIpPrefix \
      --location eastus \
      --ip-prefix-rules action=Permit condition=EqualTo networkPrefix=10.10.10.0/28 sequenceNumber=10 \
      --ip-prefix-rules action=Permit condition=EqualTo networkPrefix=20.20.20.0/24 sequenceNumber=20
    

    IP 접두사 리소스의 속성 및 규칙은 다음과 같습니다.

    • resource-group: IP 접두사 리소스를 만들 리소스 그룹의 이름입니다. 

    • name: IP 접두사 리소스의 이름입니다. 

    • location: IP 접두사 리소스를 만들려는 Azure 지역입니다. 

    • ip-prefix-rules: IP 접두사 리소스에 대한 일치 조건 및 동작을 정의하는 규칙 목록입니다. 각 규칙에는 다음과 같은 속성이 있습니다.

      • action: 조건이 충족되면 수행할 작업입니다. Permit 또는 Deny 중 하나일 수 있습니다. Permit 는 경로를 허용하고 Deny 경로를 거부하는 것을 의미합니다. 

      • condition: 경로의 네트워크 접두사를 규칙의 네트워크 접두사와 비교하는 조건입니다. 다음 값 중 하나일 수 있습니다.

        • EqualTo: 경로의 네트워크 접두사가 규칙의 네트워크 접두사와 같으면 조건이 true입니다. 

        • NotEqualTo: 경로의 네트워크 접두사가 규칙의 네트워크 접두사와 같지 않은 경우 조건이 true입니다. 

        • GreaterThanOrEqualTo: 경로의 네트워크 접두사가 규칙의 네트워크 접두사보다 크거나 같은 경우 조건이 true입니다.

      • networkPrefix: 일치시킬 네트워크 세그먼트입니다. IP 주소 및 접두사 길이(예: 10.10.10.0/28 또는 2001:db8::/64)입니다. IPv4의 경우 접두사 길이는 1-32여야 합니다. IPv6의 경우 접두사 길이는 1-128이어야 합니다.

      • sequenceNumber: 가장 낮은 값에서 가장 높은 규칙의 평가 순서입니다. 시퀀스 번호가 가장 낮은 규칙이 먼저 평가되고 시퀀스 번호가 가장 높은 규칙이 마지막으로 평가됩니다. 규칙이 경로와 일치하면 평가가 중지되고 규칙의 동작이 실행됩니다. 경로와 일치하는 규칙이 없으면 기본 동작은 Deny입니다. 

  2. azcli 명령을 사용하여 IP 접두사 리소스를 만듭니다. 이전 단계와 동일한 명령을 사용하거나 요구 사항에 따라 수정할 수 있습니다.

  3. IP 접두사 리소스가 성공적으로 생성되었는지 확인합니다. 이 az networkfabric ipprefix show 명령을 사용하여 IP 접두사 리소스의 세부 정보를 표시할 수 있습니다. 다음 예제를 참조로 사용할 수 있습니다.

    az networkfabric ipprefix show \
      --resource-group myResourceGroup \
      --name myIpPrefix 
    

이 예제 myResourceGroup 에서는 IP 접두사 리소스를 만든 리소스 그룹의 이름이고 myIpPrefix IP 접두사 리소스의 이름입니다. 

응답에는 ID, 형식, ipPrefixRules, 위치, 이름, provisioningState, resourceGroup 및 태그와 같은 IP 접두사 리소스의 속성과 규칙이 포함되어야 합니다. 

IP 접두사 리소스 표시

ID 또는 이름으로 기존 IP 접두사 리소스의 세부 정보를 가져오려면 다음 명령을 사용합니다.

# Get the details of an IP prefix resource by its name
az networkfabric ipprefix show \
  --resource-group myResourceGroup \
  --name myIpPrefix

REST API 응답 본문은 다음과 같습니다.

{
  "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.ManagedNetworkFabric/ipPrefixes/myIpPrefix",
  "location": "eastus",
  "name": "myIpPrefix",
  "properties": {
    "ipPrefixRules": [
      {
        "action": "Permit",
        "condition": "EqualTo",
        "networkPrefix": "10.10.10.0/28",
        "sequenceNumber": 10
      },
      {
        "action": "Permit",
        "condition": "EqualTo",
        "networkPrefix": "20.20.20.0/24",
        "sequenceNumber": 20
      }
    ]
  }
}

IP 접두사 리소스 업데이트

IP 접두사 리소스를 업데이트하려면 다음 단계를 수행합니다.

  1. 업데이트하려는 IP 접두사 리소스의 속성과 규칙을 지정합니다. 이전 섹션과 동일한 JSON 템플릿을 사용하거나 요구 사항에 따라 수정할 수 있습니다. 

  2. Azure CLI 명령 또는 REST API 메서드를 사용하여 IP 접두사 리소스를 업데이트합니다. 다음 예제를 참조로 사용할 수 있습니다.

    az networkfabric ipprefix update  \
      -g "example-rg" \
      --resource-name "example-ipprefix" \
      --ip-prefix-rules "[{action:Permit,sequenceNumber:4155123341,networkPrefix:'10.10.10.10/30',condition:GreaterThanOrEqualTo,subnetMaskLength:10}]"
    

이 예제 resourceGroupName 에서는 IP 접두사 리소스를 만든 리소스 그룹의 이름이고, ipPrefixName IP 접두사 리소스의 이름이며 --add , 이 옵션은 ipPrefixRules 속성에 새 규칙을 추가합니다. 새 규칙은 네트워크 접두사 30.30.30.0/24의 경로를 거부하며 시퀀스 번호는 30입니다. 

IP 접두사 리소스 삭제

ID 또는 이름으로 기존 IP 접두사 리소스를 삭제하려면 다음 명령을 사용합니다.

# Delete an IP prefix resource by its name
az networkfabric ipprefix delete \
  --resource-group myResourceGroup \
  --name myIpPrefix

ID로 IP 접두사 리소스를 삭제하기 위한 REST API 요청 본문은 다음과 같습니다.

{
  "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.ManagedNetworkFabric/ipPrefixes/myIpPrefix"
}

IP 접두사 리소스 예제

ipprefixv4-externalnetwork1-export

이 리소스는 리소스 그룹의 특정 외부 네트워크에 대한 네트워크 트래픽 규칙을 관리하는 데 사용됩니다. 여기에는 20.20.20.0/24 및 50.50.50.0/24 네트워크 접두사로의 트래픽을 허용하지만 10.10.10.0/28 네트워크 접두사로의 트래픽을 거부하는 규칙이 포함되어 있습니다. 

{
  "id": "/subscriptions/.../resourceGroups/.../providers/Microsoft.ManagedNetworkFabric/ipPrefixes/ipprefixv4-externalnetwork1-export",
  "ipPrefixRules": [
    {
      "action": "Deny",
      "condition": "EqualTo",
      "networkPrefix": "10.10.10.0/28",
      "sequenceNumber": 10
    },
    {
      "action": "Permit",
      "condition": "EqualTo",
      "networkPrefix": "20.20.20.0/24",
      "sequenceNumber": 12
    },
    {
      "action": "Permit",
      "condition": "EqualTo",
      "networkPrefix": "50.50.50.0/24",
      "sequenceNumber": 13
    }
  ],
  "location": "eastus",
  "name": "ipprefixv4-externalnetwork1-export",
  "provisioningState": "Succeeded",
  "resourceGroup": "...",
  "type": "microsoft.managednetworkfabric/ipprefixes"
}

이 리소스는 10.10.10.0/28 네트워크 접두사에 대한 트래픽을 거부하고 20.20.20.0/24 및 50.50.50.0/24 네트워크 접두사로의 트래픽을 허용합니다.

ipprefixv4-1204-cn1

이 리소스는 리소스 그룹의 특정 네트워크에 대한 네트워크 트래픽 규칙을 관리하는 데 사용됩니다. 여기에는 10.10.10.0/28 및 20.20.20.0/24 네트워크 접두사로의 트래픽을 허용하는 규칙이 포함되어 있습니다. 

{
  "id": "/subscriptions/.../resourceGroups/.../providers/Microsoft.ManagedNetworkFabric/ipPrefixes/ipprefixv4-1204-cn1",
  "ipPrefixRules": [
    {
      "action": "Permit",
      "condition": "EqualTo",
      "networkPrefix": "10.10.10.0/28",
      "sequenceNumber": 10
    },
    {
      "action": "Permit",
      "condition": "EqualTo",
      "networkPrefix": "20.20.20.0/24",
      "sequenceNumber": 12
    }
  ],
  "location": "eastus",
  "name": "ipprefixv4-1204-cn1",
  "provisioningState": "Succeeded",
  "resourceGroup": "...",
  "type": "microsoft.managednetworkfabric/ipprefixes"
}

이 리소스는 10.10.10.0/28 및 20.20.20.0/24 네트워크 접두사로의 트래픽을 허용합니다.

ipprefix-v6-ingress

이 리소스는 지역에 있으며 eastus 리소스 그룹의 일부입니다. 구성되었지만 현재는 사용할 수 없습니다. 리소스는 형식 microsoft.managednetworkfabric/ipprefixes입니다.

리소스에는 두 개의 IP 접두사 규칙이 있습니다.

  1. 서브넷 마스크 길이가 59인 fda0:d59c:db12::/59보다 크거나 같은 네트워크 접두사에서 트래픽을 허용합니다. 

  2. 서브넷 마스크 길이가 64인 fc00:f853:ccd:e793::/64보다 크거나 같은 네트워크 접두사에서 트래픽을 허용합니다. 

{
  "administrativeState": "Disabled",
  "configurationState": "Succeeded",
  "id": "/subscriptions/.../resourceGroups/.../providers/Microsoft.ManagedNetworkFabric/ipprefixes/ipprefix-v6-ingress",
  "ipPrefixRules": [
    {
      "action": "Permit",
      "condition": "GreaterThanOrEqualTo",
      "networkPrefix": "fda0:d59c:db12::/59",
      "sequenceNumber": 10,
      "subnetMaskLength": "59"
    },
    {
      "action": "Permit",
      "condition": "GreaterThanOrEqualTo",
      "networkPrefix": "fc00:f853:ccd:e793::/64",
      "sequenceNumber": 20,
      "subnetMaskLength": "64"
    }
  ],
  "location": "eastus",
  "name": "ipprefix-v6-ingress",
  "provisioningState": "Succeeded",
  "resourceGroup": "...",
  "type": "microsoft.managednetworkfabric/ipprefixes"
}

이 리소스는 지정된 네트워크 접두사에서 IPv6 트래픽을 허용하도록 구성됩니다.