추가 네트워크 인터페이스의 라우팅 구성


이 튜토리얼에서는 각각 서로 다른 Virtual Private Cloud(VPC) 네트워크에 연결된 여러 네트워크 인터페이스가 있는 가상 머신(VM) 인스턴스를 만드는 방법을 설명합니다. 또한 이 튜토리얼에서는 nic1 인터페이스를 성공적으로 핑할 수 있도록 Linux VM에서 라우팅을 구성하는 방법의 예시를 제공합니다.

여러 네트워크 인터페이스 컨트롤러가 있는 VM을 다중 NIC VM이라고 합니다.

비용

이 문서에서는 비용이 청구될 수 있는 다음과 같은 Google Cloud 구성요소를 사용합니다.

프로젝트 사용량을 기준으로 예상 비용을 산출하려면 가격 계산기를 사용하세요. Google Cloud를 처음 사용하는 사용자는 무료 체험판을 사용할 수 있습니다.

시작하기 전에

  1. Google Cloud 계정에 로그인합니다. Google Cloud를 처음 사용하는 경우 계정을 만들고 Google 제품의 실제 성능을 평가해 보세요. 신규 고객에게는 워크로드를 실행, 테스트, 배포하는 데 사용할 수 있는 $300의 무료 크레딧이 제공됩니다.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Google Cloud 프로젝트에 결제가 사용 설정되어 있는지 확인합니다.

  4. Compute Engine API 사용 설정

    API 사용 설정

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  6. Google Cloud 프로젝트에 결제가 사용 설정되어 있는지 확인합니다.

  7. Compute Engine API 사용 설정

    API 사용 설정

구성 예시

다음 다이어그램은 이 튜토리얼에서 만드는 VPC 네트워크, 서브넷, VM을 리소스 이름 및 서브넷 IP 주소 범위에 사용할 수 있는 예시 값과 함께 표시합니다.

그림 1. 이 튜토리얼에서는 각각 서브넷 2개가 포함된 VPC 네트워크 2개를 만듭니다. 모든 서브넷은 동일한 리전에 있습니다. 또한 최초 두 서브넷에 연결되는 한 개의 다중 NIC VM과 나머지 두 서브넷에 각각 한 개의 VM으로 총 세 개의 VM을 만듭니다(확대하려면 클릭).

2개의 VPC 네트워크 만들기

다중 NIC VM을 만들려면 먼저 연결하려는 VPC 네트워크가 있어야 합니다. 두 개의 VPC 네트워크를 만듭니다. 이 튜토리얼에서는 각 VPC 네트워크에 두 개의 서브넷이 있습니다.

구성 예시에 표시된 구성을 만들려면 다음 값을 사용하여 네트워크와 서브넷을 만듭니다.

  • 다음을 포함하는 network-1이라는 네트워크:
    • 기본 IPv4 주소 범위가 10.10.1.0/24subnet-1이라는 서브넷
    • 기본 IPv4 주소 범위가 10.10.3.0/24subnet-3이라는 서브넷
  • 다음을 포함하는 network-2라는 네트워크:

    • 기본 IPv4 주소 범위가 10.10.2.0/24subnet-2이라는 서브넷
    • 기본 IPv4 주소 범위가 10.10.4.0/24subnet-4이라는 서브넷

콘솔

  1. Google Cloud 콘솔에서 VPC 네트워크 페이지로 이동합니다.

    VPC 네트워크로 이동

  2. VPC 네트워크 만들기를 클릭합니다.

  3. 이름 필드에 VPC 네트워크의 이름을 입력합니다.

  4. 서브넷 생성 모드에서 커스텀을 선택합니다.

  5. 새 서브넷 섹션에서 다음을 지정합니다.

    1. 서브넷 이름을 입력합니다.
    2. 리전을 선택합니다. 생성한 두 VPC 네트워크 모두 서브넷 중 하나 이상에 대해 동일한 리전을 사용해야 합니다. 다음 섹션에서 다중 NIC VM을 만들 때 이 동일한 리전을 사용합니다. 예시 구성은 모든 서브넷에 동일한 리전을 사용합니다.
    3. IP 주소 범위를 입력합니다. 이 범위는 서브넷의 기본 IPv4 범위입니다.

      RFC 1918 주소가 아닌 범위를 선택하는 경우 범위가 기존 구성과 충돌하지 않는지 확인합니다. 자세한 내용은 IPv4 서브넷 범위를 참조하세요.

    4. 완료를 클릭합니다.

  6. 서브넷 추가를 클릭하여 두 번째 서브넷을 만듭니다. 이 두 번째 서브넷을 사용하여 VM 인스턴스의 네트워크 인터페이스의 기본 서브넷 범위 외부에서 ping를 테스트합니다.

  7. 방화벽 규칙 섹션에서 allow-custom 규칙을 선택한 후 수정을 클릭합니다. 테스트 VM에서 multi-nic-vm으로의 연결을 테스트할 수 있도록 다음과 같이 규칙을 구성합니다.

    1. IPv4 범위에서 서브넷의 IPv4 주소 범위에 대한 체크박스를 선택한 상태로 둡니다.
    2. SSH를 사용하여 테스트 VM에 연결할 수 있도록 기타 IPv4 범위35.235.240.0/20을 입력합니다. 이 범위를 포함하면 IAP(Identity-Aware Proxy) TCP 전달을 사용하는 SSH 연결이 허용됩니다. 자세한 내용은 VM에 대한 인그레스 SSH 연결 허용을 참조하세요.
    3. 프로토콜 및 포트에서 지정된 프로토콜 및 포트를 선택합니다.
      1. TCP를 선택한 후 22, 3389를 입력하여 RDP 및 SSH를 허용합니다.
      2. 기타를 선택한 후 icmp를 입력하여 ICMP를 허용합니다.
  8. 만들기를 클릭합니다.

  9. 이 단계를 반복하여 두 번째 VPC 네트워크를 만듭니다. 서브넷 IP 주소 범위가 예시 구성에 사용된 IP 주소 범위와 같이 첫 번째 네트워크의 서브넷과 겹치지 않는지 확인합니다.

gcloud

  1. networks create 명령어를 사용하여 VPC 네트워크를 만듭니다.

    gcloud compute networks create NETWORK --subnet-mode=custom
    

    다음을 바꿉니다.

    • NETWORK: VPC 네트워크의 이름입니다.
  2. networks subnets create 명령어를 사용하여 VPC 네트워크의 서브넷을 만듭니다.

    gcloud compute networks subnets create NAME \
      --network=NETWORK \
      --range=RANGE \
      --region=REGION
    

    다음을 바꿉니다.

    • NAME: 서브넷의 이름입니다.
    • NETWORK: VPC 네트워크의 이름입니다.
    • RANGE: IP 주소 범위. 이 범위는 서브넷의 기본 IPv4 범위입니다.

      RFC 1918 주소가 아닌 범위를 입력하는 경우 범위가 기존 구성과 충돌하지 않는지 확인합니다. 자세한 내용은 IPv4 서브넷 범위를 참조하세요.

    • REGION: 리전. 생성한 두 VPC 네트워크 모두 서브넷 중 하나 이상에 대해 동일한 리전을 사용해야 합니다. 다음 섹션에서 다중 NIC VM을 만들 때 이 동일한 리전을 사용합니다. 예시 구성은 모든 서브넷에 동일한 리전을 사용합니다.

  3. 이전 단계를 반복하여 다른 서브넷을 만듭니다. 이 두 번째 서브넷을 사용하여 VM 인스턴스 네트워크 인터페이스의 기본 서브넷 범위 외부에서 ping을 테스트합니다.

  4. SSH, RDP, ICMP를 허용하는 방화벽 규칙을 만듭니다.

    gcloud compute firewall-rules create allow-ssh-rdp-icmp \
     --network NETWORK \
     --action=ALLOW \
     --direction=INGRESS \
     --rules=tcp:22,tcp:3389,icmp \
     --source-ranges=SOURCE_RANGE
    

    다음을 바꿉니다.

    • NETWORK: 만들려는 네트워크에 해당하는 값을 입력합니다.
      • 첫 번째 네트워크의 경우 network-1을 입력합니다.
      • 두 번째 네트워크에 대해 이 섹션의 단계를 반복할 때 network-2를 입력합니다.
    • SOURCE_RANGE: 만들려는 네트워크에 해당하는 값을 입력합니다.
      • 첫 번째 네트워크의 경우 10.10.3.0/24, 35.235.240.0/20을 입력합니다. 10.10.3.0/24를 포함하면 test-vm-1에서 multi-nic-vmnic0 인터페이스로의 연결을 테스트할 수 있습니다. 35.235.240.0/20을 포함하면 IAP(Identity-Aware Proxy) TCP 전달을 사용하는 SSH 연결이 허용됩니다. 자세한 내용은 VM에 대한 인그레스 SSH 연결 허용을 참조하세요.
      • 두 번째 네트워크에 대해 이 섹션의 단계를 반복할 때 10.10.4.0/24, 35.235.240.0/20을 입력합니다. 10.10.4.0/24를 포함하면 test-vm-2에서 multi-nic-vmnic0 인터페이스로의 연결을 테스트할 수 있습니다. 35.235.240.0/20을 포함하면 IAP(Identity-Aware Proxy) TCP 전달을 사용하는 SSH 연결이 허용됩니다. 자세한 내용은 VM에 대한 인그레스 SSH 연결 허용을 참조하세요.
  5. 이 단계를 반복하여 두 번째 VPC 네트워크를 만듭니다. 서브넷 IP 주소 범위가 예시 구성에 사용된 IP 주소 범위와 같이 첫 번째 네트워크의 서브넷과 겹치지 않는지 확인합니다.

다중 NIC VM 만들기

이전 섹션에서 만든 각 VPC 네트워크에 대해 하나의 인터페이스가 있는 VM 인스턴스를 만듭니다.

다중 NIC VM을 만들려면 다음 안내를 따르세요.

콘솔

  1. Google Cloud 콘솔에서 인스턴스 만들기 페이지로 이동합니다.

    인스턴스 만들기로 이동

  2. 이름 필드에 인스턴스의 이름을 입력합니다. 이는 예시 구성multi-nic-vm에 해당합니다.

  3. 리전 필드에서 각 VPC 네트워크에 하나의 서브넷을 만든 동일한 리전을 선택합니다. VM 인스턴스는 인터페이스가 연결되는 서브넷과 같은 리전에 있어야 합니다. 예시 구성에서는 모든 서브넷에 동일한 리전을 사용합니다.

  4. 영역 필드에서 영역을 선택합니다.

  5. 고급 옵션 섹션에서 네트워킹을 펼친 후 다음을 수행합니다.

    1. 네트워크 인터페이스 섹션을 검토합니다. Google Cloud는 첫 번째 네트워크 인터페이스에 네트워크 및 서브네트워크를 자동으로 채웁니다. 이는 예시 구성network-1subnet-1에 해당합니다.
    2. 기본 내부 IPv6 주소에서 다음 중 하나를 선택합니다.
      • 임시: 새 임시 IPv4 주소 할당
      • 목록의 예약된 고정 내부 IPv4 주소
      • 고정 내부 IPv4 주소 예약: 새 고정 내부 IPv4 주소 예약 및 할당 예시 구성을 사용하는 경우 10.10.1.3을 예약합니다.
    3. 외부 IPv4 주소의 경우 None을 하나 선택합니다.

    4. 다른 인터페이스를 추가하려면 네트워크 인터페이스 추가를 클릭합니다.

    5. 네트워크서브네트워크에 생성한 두 번째 네트워크 및 서브네트워크를 선택합니다. 예시 구성network-2subnet-2에 해당합니다.

    6. IP 스택 유형IPv4(단일 스택)를 선택합니다.

    7. 기본 내부 IPv4 주소에서 다음 중 하나를 선택합니다.

      • 임시: 새 임시 IPv4 주소 할당
      • 목록의 예약된 고정 내부 IPv4 주소
      • 고정 내부 IPv4 주소 예약: 새 고정 내부 IPv4 주소 예약 및 할당 예시 구성을 사용하는 경우 10.10.2.3을 예약합니다.
    8. 외부 IPv4 주소의 경우 None을 하나 선택합니다.

    9. 네트워크 인터페이스 추가를 완료하려면 완료를 클릭합니다.

  6. 만들기를 클릭합니다.

gcloud

새 인스턴스에 네트워크 인터페이스를 만들려면 instances create 명령어를 사용합니다.

각 인터페이스에 --network-interface 플래그를 포함한 후 network, subnet, private-network-ip 등 적절한 네트워킹 키를 추가합니다. 외부 IP 주소의 경우 다음 명령어에서 no-address를 지정합니다.

gcloud compute instances create INSTANCE_NAME \
    --zone ZONE \
    --network-interface \
        network=NIC0_NETWORK,subnet=NIC0_SUBNET,private-network-ip=NIC0_INTERNAL_IPV4_ADDRESS,no-address \
    --network-interface \
        network=NIC1_NETWORK,subnet=NIC1_SUBNET,private-network-ip=NIC1_INTERNAL_IPV4_ADDRESS,no-address

다음을 바꿉니다.

  • INSTANCE_NAME: 만들려는 VM 인스턴스의 이름 이는 예시 구성multi-nic-vm에 해당합니다.
  • ZONE: 인스턴스가 생성되는 영역 각 VPC 네트워크에 하나의 서브넷을 만든 동일한 리전에 영역을 입력합니다. VM 인스턴스는 인터페이스가 연결되는 서브넷과 같은 리전에 있어야 합니다. 예시 구성에서는 모든 서브넷에 동일한 리전을 사용합니다.
  • 첫 번째 인터페이스의 값:
    • NIC0_NETWORK: 인터페이스가 연결되는 네트워크. 이는 예시 구성network-1에 해당합니다.
    • NIC0_SUBNET: 인터페이스가 연결되는 서브넷. 이는 예시 구성subnet-1에 해당합니다.
    • NIC0_INTERNAL_IPV4_ADDRESS: 인터페이스가 대상 서브넷에 포함할 내부 IPv4 주소. 예시 구성을 사용하는 경우 10.10.1.3을 입력합니다. 유효한 주소가 할당되기만 하면 되는 경우에는 생략합니다.
  • 두 번째 인터페이스 값
    • NIC1_NETWORK: 인터페이스가 연결되는 네트워크. 이는 예시 구성network-2에 해당합니다.
    • NIC1_SUBNET: 인터페이스가 연결되는 서브넷. 이는 예시 구성subnet-2에 해당합니다.
    • NIC1_INTERNAL_IPV4_ADDRESS: 인터페이스가 대상 서브넷에 포함할 내부 IPv4 주소. 예시 구성을 사용하는 경우 10.10.2.3을 입력합니다. 유효한 주소가 할당되기만 하면 되는 경우에는 생략합니다.

2개의 테스트 VM 만들기

2개의 추가 VM 인스턴스를 만듭니다.

  • 생성한 다중 NIC VM의 nic0 인터페이스로, 하나는 동일한 네트워크에 있지만 다른 서브넷에 있습니다. 이는 예시 구성test-vm-1subnet-3에 해당합니다.
  • 생성한 다중 NIC VM의 nic1 인터페이스로, 하나는 동일한 네트워크에 있지만 다른 서브넷에 있습니다. 이는 예시 구성test-vm-2subnet-4에 해당합니다.

이러한 VM 인스턴스를 사용하여 여러 네트워크 인터페이스가 있는 VM 인스턴스의 기본 서브넷 범위를 벗어나는 서브넷에서 ping을 테스트합니다.

VM 인스턴스를 만들려면 다음 안내를 따르세요.

콘솔

  1. Google Cloud 콘솔에서 인스턴스 만들기 페이지로 이동합니다.

    인스턴스 만들기로 이동

  2. 이름 필드에 인스턴스의 이름을 입력합니다.

  3. 리전 필드에서 첫 번째 VPC 네트워크에 추가 서브넷을 배치한 리전을 선택합니다.

  4. 영역 필드에서 영역을 선택합니다.

  5. 고급 옵션 섹션에서 네트워킹을 펼친 후 다음을 수행합니다.

    1. 네트워크 인터페이스 섹션을 검토합니다. 서브넷이 다중 NIC VM의 nic0 인터페이스에서 사용하는 것과 다른지 확인합니다.
  6. 만들기를 클릭합니다.

  7. 이 단계를 반복하여 두 번째 VPC 네트워크에 있고 다중 NIC VM의 nic1 인터페이스와 다른 서브넷에 있는 인스턴스를 만듭니다.

gcloud

  1. instances create 명령어를 실행하고 각 인터페이스에 --network-interface 플래그를 포함한 후 network, subnet, private-network-ip 또는 address 등 적절한 네트워킹 키를 추가합니다.

    gcloud compute instances create INSTANCE_NAME \
      --zone ZONE \
      --network-interface \
           network=NIC0_NETWORK,subnet=NIC0_SUBNET, private-network-ip=NIC0_INTERNAL_IPV4_ADDRESS
    

    다음을 바꿉니다.

    • INSTANCE_NAME: 만들려는 VM 인스턴스의 이름
    • ZONE: 인스턴스가 생성되는 영역 첫 번째 VPC 네트워크에 추가 서브넷을 배치한 리전(다중 NIC VM에서 사용되지 않는 서브넷)을 입력합니다.
    • NIC0_NETWORK: 인터페이스가 연결되는 네트워크.
    • NIC0_SUBNET: 인터페이스가 연결되는 서브넷.
    • NIC0_INTERNAL_IPV4_ADDRESS: 인터페이스가 대상 서브넷에 포함할 내부 IPv4 주소. 유효한 주소가 할당되기만 하면 되는 경우에는 생략합니다.
  2. 이전 단계를 반복하여 두 번째 VPC 네트워크에 있고 멀티 NIC VM의 nic1 인터페이스와 다른 서브넷에 있는 인스턴스를 만듭니다.

다중 NIC VM에 대한 연결 테스트

이 섹션의 단계에 따라 여러 네트워크 인터페이스가 있는 VM 인스턴스의 각 인터페이스에 대해 생성한 추가 VM 인스턴스의 ping을 테스트합니다.

다음 표는 예시 구성의 IP 주소 값을 사용하여 튜토리얼의 이 시점에서 성공적으로 핑을 수행할 수 있는 시나리오를 보여줍니다.

소스 대상 ping successful
multi-nic-vmnic0 인터페이스와 동일한 네트워크에 있지만 서로 다른 서브넷에 있는 VM(test-vm-1). multi-nic-vmnic0 인터페이스 내부 IP 주소(10.10.1.3)
multi-nic-vmnic1 인터페이스와 동일한 네트워크에 있지만 서로 다른 서브넷에 있는 VM(test-vm-2) multi-nic-vmnic1 인터페이스의 내부 IP 주소(10.10.2.3)

다중 NIC VM의 IP 주소 가져오기

필요한 경우 다음 섹션에서 핑할 수 있도록 다중 NIC VM의 인터페이스 IP 주소를 가져옵니다.

콘솔

  1. Google Cloud 콘솔에서 VM 인스턴스 페이지로 이동합니다.

    VM 인스턴스로 이동

  2. VM 인스턴스 목록에서 만든 다중 NIC VM을 찾고 다음 단계에서 핑할 수 있도록 이러한 값을 기록합니다.

    • 해당 nic0nic1 인터페이스의 내부 IP 주소

gcloud

  1. instances list 명령어를 실행합니다.

    gcloud compute instances list
    
  2. 다중 NIC VM을 찾아 출력에서 다음을 기록합니다.

    • INTERNAL_IP: 첫 번째 및 두 번째 주소는 nic0nic1 네트워크 인터페이스에 해당합니다.

VM의 nic0 인터페이스 핑

  1. VM 인스턴스 목록에서 동일한 네트워크이지만 다른 서브넷에서 다중 NIC VM의 nic0 인터페이스로 만든 VM을 찾습니다.

    1. 인스턴스 행에서 SSH를 클릭합니다.
  2. 다음 명령어를 실행하여 다중 NIC VM의 nic0 인터페이스에 대해 내부 IP 주소를 핑합니다.

    ping INTERNAL_IP_NIC0
    

    INTERNAL_IP_NIC0를 이전에 기록한 해당 주소로 바꿉니다. 예시 구성을 사용하는 경우 10.10.1.3을 입력합니다.

    핑이 성공적으로 수행됩니다.

  3. exit를 실행하여 터미널 창을 닫습니다.

VM의 nic1 인터페이스 핑

  1. VM 인스턴스 목록에서 다중 NIC VM의 nic1 인터페이스로 동일한 네트워크에 있고 서로 다른 서브넷에서 생성한 인스턴스를 찾습니다.

    1. 인스턴스 행에서 SSH를 클릭합니다.
  2. 다음 명령어를 실행하여 다중 NIC VM의 두 번째 인터페이스의 내부 IP 주소를 핑합니다.

    ping INTERNAL_IP_NIC1
    

    INTERNAL_IP_NIC1을 이전에 기록한 해당 주소로 바꿉니다. 예시 구성을 사용하는 경우 10.10.2.3을 입력합니다.

    핑이 실패했습니다.

  3. exit를 실행하여 터미널 창을 닫습니다.

정책 라우팅 구성

비대칭 라우팅으로 인해 이전 섹션의 핑 테스트가 실패했습니다. 트래픽은 multi-nic-vmnic1 인터페이스로 전송되지만 VM의 기본 경로는 nic0에서 전송된 응답이 됩니다. 자세한 내용은 다중 네트워크 인터페이스의 DHCP 동작을 참조하세요.

이 섹션의 단계에 따라 이그레스 패킷이 올바른 인터페이스를 통해 나가도록 정책 라우팅을 구성합니다.

이 튜토리얼에서는 Linux VM을 사용합니다. Windows 운영체제에서는 소스 기반 정책 라우팅이 지원되지 않습니다.

VM의 nic1 인터페이스에 대한 기본 게이트웨이 찾기

메타데이터 서버를 쿼리하여 VM 인스턴스의 기본 게이트웨이를 찾을 수 있습니다. 예시 구성을 사용하는 경우 값은 10.10.2.1입니다.

인터페이스 IPv4 주소의 기본 게이트웨이를 찾으려면 다중 NIC VM에서 다음 요청을 수행합니다.

curl http://metadata.google.internal/computeMetadata/v1/instance/network-interfaces/INTERFACE_NUMBER/gateway -H "Metadata-Flavor: Google"

INTERFACE_NUMBER를 인터페이스 번호로 바꾸세요. 예를 들어 nic1의 기본 게이트웨이를 찾으려면 1을 사용합니다.

다중 NIC VM에서 새 라우팅 테이블 구성

이 섹션에서는 다중 NIC VM에서 새 라우팅 테이블을 구성하는 방법을 설명합니다.

  1. VM 인스턴스에 대한 액세스 사용 설정의 단계에 따라 직렬 콘솔을 사용 설정합니다.

  2. 기본 경로를 변경하는 동안 VM 연결이 끊어지지 않도록 하려면 직렬 콘솔에 연결합니다.

  3. ip link list를 실행하여 VM의 네트워크 인터페이스를 나열한 후 nic1 인터페이스 이름(예: ens5)을 기록합니다.

  4. 다음 명령어를 실행하여 nic1 인터페이스가 IP 주소로 구성되었는지 확인합니다.

    ip addr show NIC
    

    NIC를 이전 단계의 nic1 인터페이스 이름으로 바꿉니다.

    nic1 인터페이스에 IP 주소가 자동으로 할당되지 않은 경우 다음 명령어를 실행하여 IP 주소를 수동으로 할당할 수 있습니다.

    sudo ip addr add IP_ADDRESS dev NIC
    

    다음을 바꿉니다.

    • IP_ADDRESS: 인터페이스에 구성할 내부 IP 주소입니다. 이는 예시 구성10.10.2.3에 해당합니다.
    • NIC: 이전 단계의 nic1 인터페이스 이름입니다.
  5. nic1 네트워크 인터페이스에 대해 커스텀 경로 테이블을 만듭니다.

    echo "1 ROUTE_TABLE_NAME" | sudo tee -a /etc/iproute2/rt_tables
    

    ROUTE_TABLE_NAME을 경로 테이블 이름(예: route-nic1)으로 바꿉니다.

  6. nic1 네트워크 인터페이스에 대한 커스텀 경로 테이블 및 게이트웨이로 전송된 패킷의 소스 힌트가 있는 경로에 대한 기본 경로를 만듭니다.

    sudo ip route add default via GATEWAY dev NIC table ROUTE_TABLE_NAME
    sudo ip route add GATEWAY src IP_ADDRESS dev NIC table ROUTE_TABLE_NAME
    

    다음을 바꿉니다.

    • GATEWAY: 인터페이스의 기본 게이트웨이 IP 주소입니다. 이는 예시 구성10.10.2.1에 해당합니다.
    • NIC: 경로를 추가하려는 인터페이스입니다. 예를 들면 ens5입니다.
    • ROUTE_TABLE_NAME: 경로 테이블의 이름입니다.
    • IP_ADDRESS: 인터페이스에 구성된 내부 IP 주소입니다. 이는 예시 구성10.10.2.3에 해당합니다.
  7. nic1 인터페이스에 할당된 기본 내부 IPv4 주소와 일치하는 소스 또는 대상이 있는 패킷에 커스텀 경로 테이블을 사용하도록 VM에 지시하는 라우팅 규칙을 만듭니다.

    sudo ip rule add from IP_ADDRESS/PREFIX_LENGTH table ROUTE_TABLE_NAME
    sudo ip rule add to IP_ADDRESS/PREFIX_LENGTH table ROUTE_TABLE_NAME
    

    다음을 바꿉니다.

    • IP_ADDRESS: 인터페이스에 구성된 내부 IP 주소입니다. 이는 예시 구성10.10.2.3에 해당합니다.
    • PREFIX_LENGTH: 구성된 IP 주소의 프리픽스 길이입니다.
    • ROUTE_TABLE_NAME: 경로 테이블의 이름입니다.
  8. 캐시 경로 테이블에서 모든 항목을 삭제하려면 다음 명령어를 실행합니다. 이 작업은 이전에 구성된 경로 테이블이 있는 기존 VM을 사용하는 경우에 필요할 수 있습니다.

    sudo ip route flush cache
    

다중 NIC VM에 대한 연결 다시 테스트

다음 표는 정책 라우팅을 구성한 후 성공적으로 핑에 성공할 수 있는 시나리오를 보여줍니다. VM의 nic1 인터페이스 핑 단계를 반복하여 이제 두 IP 주소 모두 성공적으로 핑할 수 있는지 확인합니다.

소스 대상 ping successful
multi-nic-vmnic0 인터페이스와 동일한 네트워크에 있지만 서로 다른 서브넷에 있는 VM(test-vm-1) multi-nic-vmnic0 인터페이스 내부 IP 주소(10.10.1.3)
multi-nic-vmnic1 인터페이스와 동일한 네트워크에 있지만 서로 다른 서브넷에 있는 VM(test-vm-2) multi-nic-vmnic1 인터페이스의 내부 IP 주소(10.10.2.3)

삭제

이 튜토리얼에서 사용된 리소스 비용이 Google Cloud 계정에 청구되지 않도록 하려면 리소스가 포함된 프로젝트를 삭제하거나 프로젝트를 유지하고 개별 리소스를 삭제하세요.

프로젝트 삭제

  1. Google Cloud 콘솔에서 리소스 관리 페이지로 이동합니다.

    리소스 관리로 이동

  2. 프로젝트 목록에서 삭제할 프로젝트를 선택하고 삭제를 클릭합니다.
  3. 대화상자에서 프로젝트 ID를 입력한 후 종료를 클릭하여 프로젝트를 삭제합니다.

개별 리소스 삭제

전체 프로젝트를 삭제하지 않으려면 이 튜토리얼을 위해 생성한 VPC 네트워크 및 VM 인스턴스를 삭제합니다.

네트워크를 삭제하기 전에 네트워크의 모든 서브넷에 있는 모든 리소스와 네트워크를 참조하는 모든 리소스를 삭제해야 합니다.

인스턴스 삭제하기

인스턴스를 삭제하려면 다음 안내를 따르세요.

콘솔

  1. Google Cloud 콘솔에서 VM 인스턴스 페이지로 이동합니다.

    VM 인스턴스로 이동

  2. 삭제하려는 인스턴스를 선택합니다.

  3. 삭제 버튼을 클릭합니다.

gcloud

gcloud compute instances delete 명령어를 사용합니다. 이러한 방식으로 인스턴스를 삭제하면 인스턴스가 종료되고 인스턴스 목록에서 삭제됩니다. 인스턴스에 연결된 모든 리소스(예: 영구 디스크 및 고정 IP 주소)는 해제됩니다.

인스턴스를 삭제하려면 다음 명령어를 사용합니다.

gcloud compute instances delete example-instance [example-instance-2 example-instance-3..]

VPC 네트워크 삭제

VPC 네트워크를 삭제하려면 다음 안내를 따르세요.

콘솔

  1. Google Cloud 콘솔에서 VPC 네트워크 페이지로 이동합니다.

    VPC 네트워크로 이동

  2. VPC 네트워크의 이름을 클릭하여 VPC 네트워크 세부정보 페이지를 표시합니다.

  3. VPC 네트워크 삭제를 클릭합니다.

  4. 표시되는 메시지에서 삭제를 클릭하여 확인합니다.

gcloud

networks delete 명령어를 사용합니다.

gcloud compute networks delete NETWORK

NETWORK를 삭제할 네트워크의 이름으로 바꿉니다.

다음 단계