VPC 네트워크 만들기 및 관리

이 페이지에서는 Virtual Private Cloud(VPC) 네트워크 및 서브네트워크를 생성, 수정 및 삭제하는 방법을 설명합니다. 이 페이지에서는 사용자가 VPC 네트워크에 설명된 VPC 네트워크의 특성에 대해 잘 알고 있다고 가정합니다. 네트워크 및 서브넷은 Google Cloud에서 다른 리소스입니다.

서브넷에서 IPv6 범위를 사용 설정하려면 IPv6 서브넷 범위를 참조하세요.

직접 사용해 보기

Google Cloud를 처음 사용하는 경우 계정을 만들어 실제 시나리오에서 VPC의 성능을 평가할 수 있습니다. 신규 고객에게는 워크로드를 실행, 테스트, 배포하는 데 사용할 수 있는 $300의 무료 크레딧이 제공됩니다.

VPC 무료로 사용해 보기

네트워크 만들기

자동 또는 커스텀 모드 VPC 네트워크를 만들도록 선택할 수 있습니다. 새로 만드는 네트워크의 이름은 같은 프로젝트 내에서 서로 달라야 합니다.

자동 모드 VPC 네트워크 만들기

자동 모드 VPC 네트워크를 만들 때 각 Google Cloud 리전에 서브넷 한 개가 생성됩니다. 새 리전을 사용할 수 있게 되면 해당 리전의 새 서브넷이 자동으로 자동 모드 VPC 네트워크에 추가됩니다. 자동으로 생성된 서브넷의 IPv4 범위는 미리 정의된 범위 집합에서 가져옵니다. 모든 자동 모드 VPC 네트워크는 같은 IPv4 범위 집합을 사용합니다.

IPv6 범위를 포함하는 서브넷은 자동 모드 VPC 네트워크에서 지원되지 않습니다. 이중 스택 서브넷을 만들려면 커스텀 모드 VPC 네트워크를 만듭니다.

자동 모드 VPC 네트워크를 만들려면 다음 단계를 수행합니다.

콘솔

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

    VPC 네트워크로 이동

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

  3. 네트워크의 이름을 입력합니다.

  4. 서브넷 생성 모드에서 자동을 선택합니다.

  5. 방화벽 규칙 섹션에서 사전 정의된 방화벽 규칙을 0개 이상 선택합니다. 이 규칙은 인스턴스에 연결하는 일반적인 사용 사례를 다룹니다.

    사전 정의된 규칙의 선택 여부에 관계없이 네트워크를 만든 후 자체 방화벽 규칙을 만들 수 있습니다.

    사전 정의된 각 규칙 이름은 만들려는 VPC 네트워크의 이름인 NETWORK로 시작합니다. IPv4 방화벽 규칙 탭에서 NETWORK-allow-custom라는 사전 정의된 인그레스 방화벽 규칙을 수정할 수 있습니다. 기본적으로 자동 모드 네트워크의 서브넷에 대한 현재 및 미래 IPv4 범위를 포함하는 소스 범위 10.128.0.0/9를 지정합니다. 규칙이 포함된 행의 오른쪽에서 수정을 클릭하여 서브넷을 선택하고 IPv4 범위를 추가하고 프로토콜 및 포트를 지정합니다.

  6. VPC 네트워크에 동적 라우팅 모드를 선택합니다.

    자세한 내용은 동적 라우팅 모드를 참조하세요. 나중에 동적 라우팅 모드를 변경할 수 있습니다.

  7. 최대 전송 단위(MTU): 네트워크의 MTU를 1460(기본값), 1500 또는 8896으로 선택합니다. MTU를 1460보다 큰 값으로 설정하기 전에 최대 전송 단위를 검토하세요.

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

gcloud

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

gcloud compute networks create NETWORK \
    --subnet-mode=auto \
    --bgp-routing-mode=DYNAMIC_ROUTING_MODE \
    --mtu=MTU

다음을 바꿉니다.

  • NETWORK: VPC 네트워크의 이름입니다.
  • DYNAMIC_ROUTING_MODE: 네트워크에서 Cloud Router의 동작을 제어합니다. global 또는 regional일 수 있습니다. 기본값은 regional입니다. 자세한 내용은 동적 라우팅 모드를 참조하세요.
  • MTU: 네트워크의 최대 패킷 크기인 최대 전송 단위(MTU)입니다. MTU는 1300부터 8896 사이의 모든 값으로 설정할 수 있습니다. 기본값은 1460입니다. MTU를 1460보다 큰 값으로 설정하기 전에 최대 전송 단위를 검토하세요.

Terraform

google_compute_network Terraform 리소스를 사용합니다.

MTU는 네트워크의 최대 전송 단위 또는 가장 큰 패킷 크기입니다. MTU는 1300부터 8896 사이의 모든 값으로 설정할 수 있습니다. 기본값은 1460입니다. MTU를 1460보다 큰 값으로 설정하기 전에 최대 전송 단위를 검토하세요.

resource "google_compute_network" "vpc_network" {
  project                 = var.project_id # Replace this with your project ID in quotes
  name                    = "my-auto-mode-network"
  auto_create_subnetworks = true
  mtu                     = 1460
}

Terraform 구성을 적용하거나 삭제하는 방법은 기본 Terraform 명령어를 참조하세요.

API

networks.insert 메서드에 대해 POST 요청을 실행합니다.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks
{
  "autoCreateSubnetworks": true,
  "name": "auto-network1",
  "mtu": MTU
}

다음을 바꿉니다.

  • PROJECT_ID: VPC 네트워크가 만들어진 프로젝트의 ID입니다.
  • MTU: 네트워크의 최대 패킷 크기인 최대 전송 단위(MTU)입니다. MTU는 1300부터 8896 사이의 모든 값으로 설정할 수 있습니다. 기본값은 1460입니다. MTU를 1460보다 큰 값으로 설정하기 전에 최대 전송 단위를 검토하세요.

VPC 네트워크의 동적 라우팅 모드를 지정하려면 routingConfig 필드를 포함합니다.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks
{
  "routingConfig": {
    "routingMode": "DYNAMIC_ROUTING_MODE"
  },
  "autoCreateSubnetworks": true,
  "name": "NETWORK",
  "mtu": MTU
}

다음을 바꿉니다.

  • PROJECT_ID: VPC 네트워크가 만들어진 프로젝트의 ID입니다.
  • NETWORK: VPC 네트워크의 이름입니다.
  • DYNAMIC_ROUTING_MODE: 네트워크에서 Cloud Router의 동작을 제어합니다. GLOBAL 또는 REGIONAL일 수 있습니다. 기본값은 REGIONAL입니다. 자세한 내용은 동적 라우팅 모드를 참조하세요.
  • MTU: 네트워크의 최대 패킷 크기인 최대 전송 단위(MTU)입니다. MTU는 1300부터 8896 사이의 모든 값으로 설정할 수 있습니다. 기본값은 1460입니다. MTU를 1460보다 큰 값으로 설정하기 전에 최대 전송 단위를 검토하세요.

IPv4 서브넷만 있는 커스텀 모드 VPC 네트워크 만들기

커스텀 모드 VPC 네트워크의 경우 네트워크를 만든 다음 지역 내에서 원하는 서브넷을 만듭니다. 모든 리전의 서브넷을 바로 지정할 필요는 없고 아예 지정하지 않아도 되지만 서브넷이 정의되지 않은 리전에서는 인스턴스를 만들 수 없습니다. 마지막으로 네트워크의 방화벽 규칙을 정의합니다.

IPv4 서브넷만 있는 커스텀 모드 VPC 네트워크를 만들려면 다음 단계를 수행합니다.

콘솔

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

    VPC 네트워크로 이동

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

  3. 네트워크의 이름을 입력합니다.

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

  5. 새 서브넷 섹션에서 서브넷에 다음 구성 매개변수를 지정합니다.

    1. 서브넷 이름을 입력합니다.
    2. 리전을 선택합니다.
    3. IP 주소 범위를 입력합니다. 이 범위는 서브넷의 기본 IPv4 범위입니다.

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

    4. 서브넷의 보조 범위를 정의하려면 보조 IP 범위 만들기를 클릭합니다.

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

    5. 비공개 Google 액세스: 서브넷을 만들 때 또는 나중에 서브넷을 수정하여 서브넷에 비공개 Google 액세스를 사용할지 여부를 선택합니다.

    6. 흐름 로그: 서브넷을 만들 때 또는 나중에 서브넷을 수정하여 서브넷에 VPC 흐름 로그를 사용할지 여부를 선택합니다.

    7. 완료를 클릭합니다.

  6. 서브넷을 추가하려면 서브넷 추가를 클릭하고 이전 단계를 반복합니다. 네트워크를 만든 후에 네트워크에 서브넷을 더 추가할 수도 있습니다.

  7. 방화벽 규칙 섹션의 IPv4 방화벽 규칙에서 사전 정의된 방화벽 규칙을 0개 이상 선택합니다. 이 규칙은 인스턴스에 연결하는 일반적인 사용 사례를 다룹니다.

    사전 정의된 규칙을 선택하지 않으면 네트워크를 만든 후 자체 방화벽 규칙을 만들 수 있습니다.

    사전 정의된 각 규칙 이름은 만들려는 VPC 네트워크의 이름인 NETWORK로 시작합니다. IPv4 방화벽 규칙 탭에서 NETWORK-allow-custom라는 사전 정의된 인그레스 방화벽 규칙을 수정할 수 있습니다. 규칙이 포함된 행의 오른쪽에서 수정을 클릭하여 서브넷을 선택하고 IPv4 범위를 추가하고 프로토콜 및 포트를 지정합니다.

    나중에 서브넷을 추가할 경우 NETWORK-allow-custom 방화벽 규칙은 자동으로 업데이트되지 않습니다. 새 서브넷에 대한 방화벽 규칙이 필요한 경우 방화벽 구성을 업데이트하여 규칙을 추가해야 합니다.

  8. VPC 네트워크에 동적 라우팅 모드를 선택합니다.

    자세한 내용은 동적 라우팅 모드를 참조하세요. 나중에 동적 라우팅 모드를 변경할 수 있습니다.

  9. 최대 전송 단위(MTU): 네트워크의 MTU를 1460(기본값), 1500 또는 8896으로 선택합니다. MTU를 1460보다 큰 값으로 설정하기 전에 최대 전송 단위를 검토하세요.

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

gcloud

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

gcloud compute networks create NETWORK \
    --subnet-mode=custom \
    --bgp-routing-mode=DYNAMIC_ROUTING_MODE \
    --mtu=MTU

다음을 바꿉니다.

  • NETWORK: VPC 네트워크의 이름입니다.
  • DYNAMIC_ROUTING_MODE: 네트워크에서 Cloud Router의 동작을 제어합니다. global 또는 regional일 수 있습니다. 기본값은 regional입니다. 자세한 내용은 동적 라우팅 모드를 참조하세요.
  • MTU: 네트워크의 최대 패킷 크기인 최대 전송 단위(MTU)입니다. MTU는 1300부터 8896 사이의 모든 값으로 설정할 수 있습니다. 기본값은 1460입니다. MTU를 1460보다 큰 값으로 설정하기 전에 최대 전송 단위를 검토하세요.

그런 다음 네트워크에 서브넷을 추가합니다.

Terraform

google_compute_network Terraform 리소스를 사용합니다.

MTU는 네트워크의 최대 전송 단위 또는 가장 큰 패킷 크기입니다. MTU는 1300부터 8896 사이의 모든 값으로 설정할 수 있습니다. 기본값은 1460입니다. MTU를 1460보다 큰 값으로 설정하기 전에 최대 전송 단위를 검토하세요.

resource "google_compute_network" "vpc_network" {
  project                 = var.project_id # Replace this with your project ID in quotes
  name                    = "my-custom-mode-network"
  auto_create_subnetworks = false
  mtu                     = 1460
}

그런 다음 네트워크에 서브넷을 추가합니다.

Terraform 구성을 적용하거나 삭제하는 방법은 기본 Terraform 명령어를 참조하세요.

API

networks.insert 메서드에 대해 POST 요청을 실행합니다.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks
{
  "autoCreateSubnetworks": false,
  "name": "NETWORK",
  "mtu": MTU,
  "routingConfig": {
    "routingMode": "DYNAMIC_ROUTING_MODE"
  }
}

다음을 바꿉니다.

  • PROJECT_ID: VPC 네트워크가 만들어진 프로젝트의 ID입니다.
  • NETWORK: VPC 네트워크의 이름입니다.
  • DYNAMIC_ROUTING_MODE: 네트워크에서 Cloud Router의 동작을 제어합니다. GLOBAL 또는 REGIONAL일 수 있습니다. 기본값은 REGIONAL입니다. 자세한 내용은 동적 라우팅 모드를 참조하세요.
  • MTU: 네트워크의 최대 패킷 크기인 최대 전송 단위(MTU)입니다. MTU는 1300부터 8896 사이의 모든 값으로 설정할 수 있습니다. 기본값은 1460입니다. MTU를 1460보다 큰 값으로 설정하기 전에 최대 전송 단위를 검토하세요.

그런 다음 네트워크에 서브넷을 추가합니다.

이중 스택 서브넷이 있는 커스텀 모드 VPC 네트워크 만들기

네트워크를 만들 때 서브넷을 만들거나 나중에 서브넷을 추가할 수 있습니다.

서브넷은 기본 IP 주소 범위로 다음 구성 중 하나를 포함할 수 있습니다.

  • 단일 스택: 내부 IPv4 범위만
  • 이중 스택: 내부 IPv4 범위 및 내부 IPv6 범위
  • 이중 스택: 내부 IPv4 범위 및 외부 IPv6 범위

VPC 네트워크에서 각 서브넷은 서로 다른 구성을 가질 수 있습니다. 이를 모두 이중 스택 등으로 구성할 필요가 없습니다.

내부 IPv6 범위가 있는 서브넷을 구성하려면 VPC 네트워크 ULA 내부 IPv6 범위를 사용 설정합니다. 내부 IPv6 서브넷 범위는 이 범위에서 할당됩니다.

이중 스택 서브넷이 있는 커스텀 모드 VPC 네트워크를 만들려면 다음 단계를 수행합니다.

콘솔

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

    VPC 네트워크로 이동

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

  3. 네트워크의 이름을 입력합니다.

  4. 이 네트워크에서 서브넷에 내부 IPv6 주소 범위를 구성하려면 다음 단계를 수행합니다.

    1. VPC 네트워크 ULA 내부 IPv6 범위에서 사용 설정됨을 선택합니다.
    2. 내부 IPv6 범위 할당에 대해 자동 또는 수동을 선택합니다.

      수동을 선택한 경우 fd20::/20 범위 내에서 /48 범위를 입력합니다. 범위가 사용 중인 경우 다른 범위를 제공하라는 메시지가 표시됩니다.

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

  6. 새 서브넷 섹션에서 서브넷에 다음 구성 매개변수를 지정합니다.

    1. 서브넷 이름을 입력합니다.
    2. 리전을 선택합니다.
    3. 이중 스택 서브넷을 만들려면 IP 스택 유형IPv4 및 IPv6(이중 스택)을 선택합니다.
    4. IPv4 범위를 입력합니다. 이 범위는 서브넷의 기본 IPv4 범위입니다.

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

    5. IPv6 액세스 유형으로 외부 또는 내부를 선택합니다.

    6. 완료를 클릭합니다.

  7. 서브넷을 추가하려면 서브넷 추가를 클릭하고 이전 단계를 반복합니다.

    VPC 네트워크에서 각 서브넷은 서로 다른 스택 유형 및 IPv6 액세스 유형 구성을 가질 수 있습니다. 특정 네트워크에서 모든 서브넷을 이중 스택 서브넷으로 구성할 필요가 없습니다.

    또한 네트워크를 만든 후 추가 단일 스택 또는 이중 스택 서브넷을 네트워크에 추가할 수 있습니다.

  8. 방화벽 규칙 섹션의 IPv4 방화벽 규칙IPv6 방화벽 규칙 탭에서 사전 정의된 방화벽 규칙을 0개 이상 선택합니다. 이 규칙은 인스턴스에 연결하는 일반적인 사용 사례를 다룹니다.

    사전 정의된 규칙을 선택하지 않으면 네트워크를 만든 후 자체 방화벽 규칙을 만들 수 있습니다.

    사전 정의된 각 규칙 이름은 만들려는 VPC 네트워크의 이름인 NETWORK로 시작합니다. IPv4 방화벽 규칙 탭과 IPv6 방화벽 규칙 탭 모두 편집 가능한 사전 정의된 인그레스 방화벽 규칙이 있습니다. IPv4 규칙 이름은 NETWORK-allow-custom으로 지정되고 IPv6 규칙 이름은 NETWORK-allow-ipv6-custom으로 지정됩니다. 규칙이 포함된 행의 오른쪽에서 수정을 클릭하여 서브넷을 선택하고 IP 범위를 추가하고 프로토콜 및 포트를 지정합니다.

    나중에 서브넷을 추가할 경우에는 NETWORK-allow-customNETWORK-allow-ipv6-custom 방화벽 규칙이 자동으로 업데이트되지 않습니다. 새 서브넷에 대한 방화벽 규칙이 필요한 경우 방화벽 구성을 업데이트하여 규칙을 추가해야 합니다.

  9. VPC 네트워크에 동적 라우팅 모드를 선택합니다.

    자세한 내용은 동적 라우팅 모드를 참조하세요. 나중에 동적 라우팅 모드를 변경할 수 있습니다.

  10. 최대 전송 단위(MTU): 네트워크의 MTU를 1460(기본값), 1500 또는 8896으로 선택합니다. MTU를 1460보다 큰 값으로 설정하기 전에 최대 전송 단위를 검토하세요.

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

gcloud

networks create 명령어를 사용합니다. 네트워크를 만든 후 IPv4 전용 서브넷이중 스택 서브넷을 여기에 추가할 수 있습니다.

이 네트워크의 모든 서브넷에서 내부 IPv6 범위를 구성해야 할 경우에는 --enable-ula-internal-ipv6 플래그를 사용합니다. 이 옵션은 내부 IPv6 서브넷 범위에 대해 Google에서 사용되는 fd20::/20 범위 내에서 /48 ULA 프리픽스를 할당합니다. 할당된 /48 IPv6 범위를 선택하려면 --internal-ipv6-range 플래그를 사용해서 범위를 지정합니다.

이 VPC 네트워크에서 서브넷에 외부 IPv6만 구성하려면 플래그를 둘 다 생략할 수 있습니다.

gcloud compute networks create NETWORK \
    --subnet-mode=custom \
    [ --enable-ula-internal-ipv6 [ --internal-ipv6-range=ULA_IPV6_RANGE ]] \
    --bgp-routing-mode=DYNAMIC_ROUTING_MODE \
    --mtu=MTU

다음을 바꿉니다.

  • NETWORK: VPC 네트워크의 이름입니다.

  • ULA_IPV6_RANGE: 내부 IPv6 서브넷 범위에 대해 Google에서 사용하는 fd20::/20 범위 내의 /48 프리픽스입니다. --internal-ipv6-range 플래그를 사용하지 않으면 Google은 네트워크의 /48 프리픽스를 선택합니다.

  • DYNAMIC_ROUTING_MODE: 네트워크에서 Cloud Router의 동작을 제어합니다. global 또는 regional일 수 있습니다. 기본값은 regional입니다. 자세한 내용은 동적 라우팅 모드를 참조하세요.

  • MTU: 네트워크의 최대 패킷 크기인 최대 전송 단위(MTU)입니다. MTU는 1300부터 8896 사이의 모든 값으로 설정할 수 있습니다. 기본값은 1460입니다. MTU를 1460보다 큰 값으로 설정하기 전에 최대 전송 단위를 검토하세요.

API

networks.insert 메서드에 대해 POST 요청을 실행합니다. 네트워크를 만든 후 IPv4 전용 서브넷이중 스택 서브넷을 여기에 추가할 수 있습니다.

이 네트워크의 서브넷에서 내부 IPv6 범위를 구성하려면 enableUlaInternalIpv6를 true로 설정합니다. 이 옵션은 내부 IPv6 서브넷 범위에 대해 Google에서 사용되는 fd20::/20 범위 내에서 /48 범위를 할당합니다. 할당되는 /48 IPv6 범위를 선택하려면 internalIpv6Range 필드도 사용하여 범위를 지정합니다.

이 VPC 네트워크에서 서브넷에 외부 IPv6만 구성하려면 필드를 둘 다 생략할 수 있습니다.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks
{
  "autoCreateSubnetworks": false,
  "name": "NETWORK",
  "mtu": MTU,
  "enableUlaInternalIpv6": true,
  "internalIpv6Range": "ULA_IPV6_RANGE",
  "routingConfig": {
    "routingMode": "DYNAMIC_ROUTING_MODE"
  }
}

다음을 바꿉니다.

  • PROJECT_ID: VPC 네트워크가 만들어진 프로젝트의 ID입니다.
  • NETWORK: VPC 네트워크의 이름입니다.
  • MTU: 네트워크의 최대 패킷 크기인 최대 전송 단위(MTU)입니다. MTU는 1300부터 8896 사이의 모든 값으로 설정할 수 있습니다. 기본값은 1460입니다. MTU를 1460보다 큰 값으로 설정하기 전에 최대 전송 단위를 검토하세요.
  • ULA_IPV6_RANGE: 내부 IPv6 서브넷 범위에 대해 Google에서 사용하는 fd20::/20 범위 내의 /48 프리픽스입니다. internalIpv6Range 값을 제공하지 않으면 Google은 네트워크의 /48 프리픽스를 선택합니다.
  • DYNAMIC_ROUTING_MODE: 네트워크에서 Cloud Router의 동작을 제어합니다. GLOBAL 또는 REGIONAL일 수 있습니다. 기본값은 REGIONAL입니다. 자세한 내용은 동적 라우팅 모드를 참조하세요.

방화벽 규칙 정보

네트워크를 만든 후 방화벽 규칙을 만들어서 VM 인스턴스 간 통신 등 네트워크의 리소스 간 트래픽을 허용하거나 거부합니다. 또한 방화벽 규칙을 사용하여 인터넷에서 들어오거나 나가는 VPC 네트워크에서 나가거나 들어가는 트래픽을 제어합니다.

네트워크 보기

프로젝트에서 VPC 및 레거시 네트워크를 봅니다. VPC 네트워크의 경우 서브넷 및 서브넷 생성 모드에 대한 정보를 볼 수 있습니다.

콘솔

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

    VPC 네트워크로 이동

    콘솔에 모든 VPC 및 레거시 네트워크가 나열됩니다.

  2. 피어링 연결 및 서브넷과 같은 세부정보를 보려면 VPC 네트워크를 선택하세요.

gcloud

  1. 프로젝트의 네트워크를 나열하려면 networks list 명령어를 사용합니다.

    gcloud compute networks list
    

    이 명령어는 모든 VPC 및 기존 네트워크를 나열합니다. 레거시 네트워크는 LEGACY의 서브넷 생성 모드를 표시하고 VPC 네트워크는 AUTO 또는 CUSTOM을 표시합니다.

    NAME             SUBNET_MODE  BGP_ROUTING_MODE  IPV4_RANGE     GATEWAY_IPV4
    custom-network   CUSTOM       REGIONAL
    default          AUTO         REGIONAL
    legacy-network1  LEGACY       REGIONAL          10.240.0.0/16  10.240.0.1
    
  2. 네트워크를 설명하고 피어링 연결 및 서브넷과 같은 세부정보를 보려면 networks describe 명령어를 사용합니다.

    gcloud compute networks describe NETWORK
    

    NETWORK를 네트워크 이름으로 바꿉니다.

API

  1. 프로젝트의 모든 네트워크를 나열하려면 networks.list 메서드에 대해 GET 요청을 실행합니다.

    GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks
    

    PROJECT_ID를 나열할 VPC 네트워크가 포함된 프로젝트의 ID로 바꿉니다.

  2. 네트워크를 설명하고 세부정보를 보려면 networks.get 메서드에 대해 GET 요청을 실행합니다.

    GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/NETWORK
    

    다음을 바꿉니다.

    • PROJECT_ID: VPC 네트워크가 포함된 프로젝트의 ID입니다.
    • NETWORK: 설명할 VPC 네트워크의 이름입니다.

서브넷 작업

서브넷을 만들거나 수정할 때 다음 규칙을 따라야 합니다.

  • 프로젝트 내에서 서브넷은 VPC 네트워크의 구성원이 아닌 한 VPC 네트워크와 동일한 이름을 가질 수 없습니다. 프로젝트 내에서 동일한 리전의 서브넷은 고유한 이름을 가져야 합니다. 예를 들어 이름이 production인 네트워크에는 각 서브넷이 각각 고유한 리전에 있으면 이름이 동일하게 production인 서브넷이 여러 개 있을 수 있습니다.

  • 서브넷을 만든 후에는 서브넷의 이름 또는 리전을 변경할 수 없습니다. 하지만 리소스에서 서브넷을 사용하지 않으면 서브넷을 삭제하고 대체할 수 있습니다.

  • 각 서브넷에는 하나의 기본 IPv4 범위가 있어야 하며 필요한 경우 별칭 IP에 대해 하나 이상의 보조 IPv4 범위를 지정할 수 있습니다. 네트워크별 한도는 각 서브넷에서 정의할 수 있는 최대 보조 범위 수를 나타냅니다. 기본 및 보조 IPv4 범위는 유효한 범위여야 합니다.

    • VPC 네트워크 내에서 모든 기본 및 보조 IPv4 범위는 고유해야 하지만 연속적일 필요는 없습니다. 예를 들어 서브넷의 기본 범위는 10.0.0.0/24인 동시에 동일한 네트워크에서 다른 서브넷의 기본 범위가 192.168.0.0/16일 수 있습니다.

    • 서브넷을 만든 후 서브넷의 기본 IPv4 범위를 확장할 수 있지만 바꾸거나 축소할 수는 없습니다.

    • 서브넷의 보조 IPv4 주소 범위를 사용하는 VM 인스턴스가 없는 경우에만 해당 범위를 삭제하고 교체할 수 있습니다.

    • 기본 또는 보조 범위의 최소 크기는 8개의 IPv4 주소입니다. 즉, 사용할 수 있는 가장 긴 서브넷 마스크는 /29입니다.

    • 사용할 수 있는 가장 짧은 서브넷 마스크는 /4입니다. 그러나 대부분의 /4 IP 주소 범위의 경우 추가 검증을 통해 이 큰 서브넷을 만들 수 없습니다. 예를 들어 서브넷 범위는 비공개 IPv4 범위 또는 다른 예약된 범위와 겹칠 수 없습니다. 잘못된 서브넷 범위를 선택할 가능성을 최소화하려면 최대 서브넷 크기를 /8로 제한하는 것이 좋습니다.

      유효한 범위에 대한 자세한 내용은 유효한 IPv4 범위를 참조하세요.

  • 서브넷의 기본 및 보조 범위는 할당된 범위, 같은 네트워크에 있는 다른 서브넷의 모든 기본 또는 보조 범위, 피어링된 네트워크에 있는 서브넷의 모든 IPv4 범위와 겹칠 수 없습니다.

  • Google Cloud는 기본 및 보조 IP 범위 둘 다에 해당하는 서브넷 경로를 만듭니다. 서브넷 경로 및 서브넷 IP 범위에는 정의에 따라 가장 구체적인 IP 범위가 있어야 합니다.

    • Cloud VPN, Dedicated Interconnect, Partner Interconnect를 사용하여 VPC 네트워크를 다른 네트워크에 연결한 경우 기본 및 보조 범위는 온프레미스 IP 범위와 충돌할 수 없습니다.

    • 모든 서브넷의 IPv4 범위는 VPC 네트워크 피어링으로 상호 연결된 VPC 네트워크에서 고유해야 합니다.

    • 서브넷 IPv4 범위는 정적 경로의 대상과 충돌할 수 없습니다.

    • 서브넷의 기본 또는 보조 IPv4 범위에 10.128.0.0/9 블록의 IPv4 주소를 사용하지 마세요. 자동 모드 VPC 네트워크에서 자동으로 생성된 서브넷이 해당 블록의 IPv4 주소를 사용합니다. 10.128.0.0/9 블록의 IP 주소를 사용하면 VPC 피어링 또는 Cloud VPN 터널을 사용하여 네트워크를 자동 모드 VPC 네트워크에 연결할 수 없습니다.

서브넷 나열

프로젝트에 존재하는 모든 서브넷을 볼 수 있습니다.

콘솔

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

    VPC 네트워크로 이동

  2. 서브넷을 보려면 다음 중 하나를 수행합니다.

    • 네트워크 이름을 클릭한 다음 VPC 네트워크 세부정보 페이지에서 서브넷 탭을 클릭합니다.

      이 보기를 사용하면 새 서브넷을 추가하고 선택한 단일 네트워크의 다른 구성을 수정할 수 있습니다.

    • 현재 프로젝트의 서브넷 탭을 클릭하고 VPC 네트워크 목록에서 네트워크를 하나 이상 선택합니다.

      이 보기를 사용하면 2개 이상의 네트워크의 서브넷을 나열할 수 있습니다.

gcloud

프로젝트의 모든 네트워크에 있는 모든 서브넷을 나열하거나 특정 네트워크 또는 리전의 서브넷만 표시할 수 있습니다. 다음 예시에서는 subnets list 명령어를 사용하는 방법을 보여줍니다.

  • 모든 VPC 네트워크의 모든 서브넷을 나열하려면 다음 명령어를 사용합니다.

    gcloud compute networks subnets list
    
  • 특정 VPC 네트워크의 모든 서브넷을 나열하려면 다음 명령어를 사용합니다.

    gcloud compute networks subnets list \
       --network=NETWORK
    

    NETWORK를 네트워크 이름으로 바꿉니다.

  • 특정 리전의 모든 서브넷을 나열하려면 다음 명령어를 사용합니다.

    gcloud compute networks subnets list \
       --filter="region:( REGION … )"
    

    REGION을 리전의 이름으로 바꿉니다.

API

프로젝트의 모든 서브넷을 나열하려면 subnetworks.aggregatedList 메서드에 대해 GET 요청을 실행합니다.

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/aggregated/subnetworks

PROJECT_ID를 나열할 서브넷이 포함된 프로젝트의 ID로 바꿉니다.

서브넷 설명

이 섹션의 단계에 따라 기본 IPv4 범위, 보조 IP 범위, IPv6 범위, 리전 등 기존 서브넷의 세부정보를 볼 수 있습니다.

콘솔

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

    VPC 네트워크로 이동

    프로젝트의 모든 네트워크와 서브넷은 계층 구조 보기로 표시되며 서브넷은 네트워크 내의 항목으로 표시됩니다.

  2. 특정 네트워크의 서브넷만 보려면 네트워크 이름을 클릭합니다. VPC 네트워크 세부정보 페이지에서 서브넷 탭의 서브넷 이름을 클릭하여 서브넷 세부정보 페이지를 표시합니다.

gcloud

  1. 프로젝트의 기존 서브넷 이름 및 리전을 확인하려면 서브넷을 나열합니다.

  2. subnets describe 명령어를 사용합니다.

    gcloud compute networks subnets describe SUBNET \
        --region=REGION
    

    다음을 바꿉니다.

    • SUBNET: 설명할 서브넷입니다.
    • REGION: 설명할 서브넷의 리전입니다.

API

  1. 특정 리전의 서브넷을 나열하고 서브넷 이름을 찾으려면 subnetworks.list 메서드에 대해 GET 요청을 실행합니다.

    GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/subnetworks
    

    다음을 바꿉니다.

    • PROJECT_ID: 나열할 서브넷이 포함된 프로젝트의 ID입니다.
    • REGION: 나열할 서브넷이 포함된 Google Cloud 리전의 이름입니다.
  2. subnetworks.get 메서드에 대해 GET 요청을 실행합니다.

    GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/subnetworks/SUBNET
    

    다음을 바꿉니다.

    • PROJECT_ID: 설명할 서브넷이 포함된 프로젝트의 ID입니다.
    • REGION: 설명할 서브넷이 포함된 Google Cloud 리전의 이름입니다.
    • SUBNET: 설명할 서브넷의 이름입니다.

IPv4 전용 서브넷 추가

서브넷을 만들 때 서브넷 규칙에 따라 이름, 리전, 기본 IPv4 주소 범위를 설정합니다. IPv4 전용 서브넷을 만들려면 다음을 수행합니다.

콘솔

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

    VPC 네트워크로 이동

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

  3. 서브넷 추가를 클릭합니다. 표시되는 패널에서 다음을 설정합니다.

    1. 이름을 입력합니다.
    2. 리전을 선택합니다.
    3. IP 주소 범위를 입력합니다. 이 범위는 서브넷의 기본 IPv4 범위입니다.

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

    4. 서브넷의 보조 범위를 정의하려면 보조 IP 범위 만들기를 클릭합니다.

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

    5. 비공개 Google 액세스: 서브넷을 만들 때 또는 나중에 서브넷을 수정하여 서브넷에 비공개 Google 액세스를 사용 설정할 수 있습니다.

    6. 흐름 로그: 서브넷을 만들 때 또는 나중에 서브넷을 수정하여 서브넷에 VPC 흐름 로그를 사용 설정할 수 있습니다.

    7. 추가를 클릭합니다.

gcloud

subnets create 명령어를 사용합니다.

gcloud compute networks subnets create SUBNET \
    --network=NETWORK \
    --range=PRIMARY_RANGE \
    --region=REGION

다음을 바꿉니다.

  • SUBNET: 새 서브넷의 이름입니다.
  • NETWORK: 새 서브넷이 포함된 VPC 네트워크의 이름입니다.
  • PRIMARY_RANGE: CIDR 표기법으로 표시된 새 서브넷의 기본 IPv4 주소 범위입니다. 자세한 내용은 IPv4 서브넷 범위를 참조하세요.
  • REGION: 새 서브넷이 생성되는 Google Cloud 리전입니다.

다음 선택적 플래그를 사용하여 이전 명령어를 수정할 수 있습니다.

  • --secondary-range=SECONDARY_RANGE_NAME=SECONDARY_RANGE: SECONDARY_RANGE_NAME을 보조 범위의 이름으로 바꿉니다. SECONDARY_RANGE를 CIDR 표기법으로 표시된 보조 범위로 바꿉니다. 네트워크별 한도는 각 서브넷에서 정의할 수 있는 최대 보조 범위 수를 나타냅니다.
  • --enable-flow-logs: 서브넷을 만들 때 서브넷에 VPC 흐름 로그를 사용 설정합니다.
  • --enable-private-ip-google-access: 서브넷을 만들 때 서브넷에 비공개 Google 액세스를 사용 설정합니다.
  • --purpose: 서브넷 용도를 지정할 수 있습니다.
  • --role: 프록시 전용 서브넷의 역할(활성 또는 백업)을 지정할 수 있습니다.

그런 다음 방화벽 규칙을 만듭니다.

Terraform

Terraform 모듈을 사용합니다.

MTU는 네트워크의 최대 전송 단위 또는 가장 큰 패킷 크기입니다. MTU는 1300부터 8896 사이의 모든 값으로 설정할 수 있습니다. 기본값은 1460입니다. MTU를 1460보다 큰 값으로 설정하기 전에 최대 전송 단위를 검토하세요.

module "test-vpc-module" {
  source       = "terraform-google-modules/network/google"
  version      = "~> 9.0"
  project_id   = var.project_id # Replace this with your project ID in quotes
  network_name = "my-custom-mode-network"
  mtu          = 1460

  subnets = [
    {
      subnet_name   = "subnet-01"
      subnet_ip     = "10.10.10.0/24"
      subnet_region = "us-west1"
    },
    {
      subnet_name           = "subnet-02"
      subnet_ip             = "10.10.20.0/24"
      subnet_region         = "us-west1"
      subnet_private_access = "true"
      subnet_flow_logs      = "true"
    },
    {
      subnet_name               = "subnet-03"
      subnet_ip                 = "10.10.30.0/24"
      subnet_region             = "us-west1"
      subnet_flow_logs          = "true"
      subnet_flow_logs_interval = "INTERVAL_10_MIN"
      subnet_flow_logs_sampling = 0.7
      subnet_flow_logs_metadata = "INCLUDE_ALL_METADATA"
      subnet_flow_logs_filter   = "false"
    }
  ]
}

그런 다음 방화벽 규칙을 만듭니다.

API

subnetworks.insert 메서드에 대해 POST 요청을 실행합니다.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/subnetworks
{
  "ipCidrRange": "IP_RANGE",
  "network": "NETWORK_URL",
  "name": "SUBNET"
}

다음을 바꿉니다.

  • PROJECT_ID: 수정할 VPC 네트워크가 포함된 프로젝트의 ID입니다.
  • REGION: 서브넷이 추가되는 Google Cloud 리전의 이름입니다.
  • IP_RANGE: 서브넷의 기본 IPv4 주소 범위입니다. 자세한 내용은 IPv4 서브넷 범위를 참조하세요.
  • NETWORK_URL: 서브넷을 추가할 VPC 네트워크의 URL입니다.
  • SUBNET: 서브넷의 이름입니다.

그런 다음 방화벽 규칙을 만듭니다.

이중 스택 서브넷 추가

이중 스택 서브넷에는 IPv4 및 IPv6 주소 범위가 모두 있습니다.

외부 또는 내부 IPv6 주소가 사용 설정된 서브넷을 만들 수 있습니다. 서브넷에 IPv6 범위를 구성해도 이 서브넷에 연결하는 VM에 IPv6가 구성되지 않습니다. VM에서 IPv6 구성에 대한 자세한 내용은 VM에서 IPv6 주소 구성을 참조하세요.

이중 스택 서브넷을 만들려면 다음을 수행합니다.

콘솔

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

    VPC 네트워크로 이동

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

  3. 서브넷 추가를 클릭합니다. 표시되는 패널에서 다음을 설정합니다.

    1. 이름을 입력합니다.
    2. 리전을 선택합니다.
    3. IP 스택 유형IPv4 및 IPv6(이중 스택)을 선택합니다.
    4. IPv4 범위를 입력합니다. 이 범위는 서브넷의 기본 IPv4 범위입니다.

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

    5. IPv6 액세스 유형으로 내부 또는 외부를 선택합니다.

      액세스 유형을 내부로 설정하려고 하지만 내부 옵션을 사용할 수 없는 경우 네트워크에 내부 IPv6 범위가 할당되었는지 확인합니다.

    6. 추가를 클릭합니다.

gcloud

subnets create 명령어를 사용합니다.

gcloud compute networks subnets create SUBNET \
    --network=NETWORK \
    --range=PRIMARY_IPv4_RANGE \
    --stack-type=IPV4_IPV6 \
    --ipv6-access-type=IPv6_ACCESS_TYPE \
    --region=REGION

다음을 바꿉니다.

  • SUBNET: 새 서브넷의 이름입니다.
  • NETWORK: 새 서브넷을 포함할 VPC 네트워크의 이름입니다.
  • PRIMARY_IPv4_RANGE: CIDR 표기법으로 표시된 새 서브넷의 기본 IPv4 주소 범위입니다. 자세한 내용은 IPv4 서브넷 범위를 참조하세요.
  • IPv6_ACCESS_TYPE: IPv6 액세스 유형입니다. EXTERNAL 또는 INTERNAL일 수 있습니다.
  • REGION: 새 서브넷이 생성될 Google Cloud 리전입니다.

API

subnetworks.insert 메서드에 대해 POST 요청을 실행합니다.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/subnetworks
{
  "ipCidrRange": "IP_RANGE",
  "network": "NETWORK_URL",
  "name": "SUBNET"
  "stackType": IPV4_IPV6,
  "ipv6AccessType": IPv6_ACCESS_TYPE
}

다음을 바꿉니다.

  • PROJECT_ID: 수정할 VPC 네트워크가 포함된 프로젝트의 ID입니다.
  • REGION: 서브넷이 추가되는 Google Cloud 리전의 이름입니다.
  • IP_RANGE: 서브넷의 기본 IPv4 주소 범위입니다. 자세한 내용은 IPv4 서브넷 범위를 참조하세요.
  • NETWORK_URL: 서브넷을 추가할 VPC 네트워크의 URL입니다.
  • SUBNET: 서브넷의 이름입니다.
  • IPv6_ACCESS_TYPE: IPv6 액세스 유형입니다. EXTERNAL 또는 INTERNAL일 수 있습니다.

서브넷의 스택 유형을 이중 스택으로 변경

이중 스택 서브넷에는 IPv4 및 IPv6 서브넷 범위가 모두 있습니다. 커스텀 모드 VPC 네트워크의 기존 IPv4 전용 서브넷에 내부 또는 외부 IPv6 서브넷 범위를 추가할 수 있습니다. 자세한 내용은 IPv6 서브넷 범위를 참조하세요.

서브넷에 IPv6 서브넷 범위를 추가해도 연결된 VM에서 IPv6가 구성되지 않습니다. VM 구성에 대한 자세한 내용은 VM에 IPv6 구성을 참조하세요.

서브넷의 스택 유형을 이중 스택으로 변경하려면 다음을 수행합니다.

콘솔

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

    VPC 네트워크로 이동

  2. VPC 네트워크 세부정보 페이지를 보려면 네트워크 이름을 클릭합니다.

  3. 서브넷 탭에서 수정하려는 서브넷 이름을 클릭합니다.

  4. 서브넷 세부정보 페이지에서 수정 을 클릭합니다.

  5. IP 스택 유형IPv4 및 IPv6(이중 스택)을 선택합니다.

  6. IPv6 액세스 유형으로 내부 또는 외부를 선택합니다.

    액세스 유형을 내부로 설정하려고 하지만 내부 옵션을 사용할 수 없는 경우 네트워크에 내부 IPv6 범위가 할당되었는지 확인합니다.

  7. 저장을 클릭합니다.

gcloud

subnets update 명령어를 사용합니다.

gcloud compute networks subnets update SUBNET \
    --stack-type=IPV4_IPV6 \
    --ipv6-access-type=IPv6_ACCESS_TYPE \
    --region=REGION

다음을 바꿉니다.

  • SUBNET: 서브넷의 이름입니다.
  • REGION: 서브넷의 리전입니다.
  • IPv6_ACCESS_TYPE: 서브넷의 IPv6 액세스 유형입니다. EXTERNAL 또는 INTERNAL일 수 있습니다.

API

subnetworks.patch 메서드에 대해 PATCH 요청을 실행합니다.

PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/subnetworks/SUBNET
{
  "stackType": IPV4_IPV6,
  "ipv6AccessType": IPv6_ACCESS_TYPE
}

다음을 바꿉니다.

  • PROJECT_ID: 수정할 VPC 네트워크가 포함된 프로젝트의 ID입니다.
  • REGION: 서브넷의 리전입니다.
  • SUBNET: 서브넷의 이름입니다.
  • IPv6_ACCESS_TYPE: IPv6 액세스 유형입니다. EXTERNAL 또는 INTERNAL일 수 있습니다.

서브넷 스택 유형을 IPv4 전용으로 변경

IPv6 액세스 유형이 외부인 경우 서브넷의 스택 유형을 IPv4 및 IPv6(이중 스택)에서 IPv4 전용(단일 스택)으로 변경할 수 있습니다.

이렇게 변경할 경우 해당 서브넷에 연결되는 새 이중 스택 VM을 만들 수 없습니다. 하지만 기존 이중 스택 VM은 영향을 받지 않습니다. VM의 스택 유형을 IPv4 전용으로 변경해야 할 경우 VM의 스택 유형 변경을 참조하세요.

이러한 변경은 Google Cloud CLI 및 API에서만 지원됩니다.

IPv6 액세스 유형이 내부인 경우 스택 유형을 IPv4 및 IPv6(이중 스택)에서 IPv4 전용(단일 스택)으로 변경하는 것은 지원되지 않습니다.

서브넷의 스택 유형을 IPv4 전용으로 변경하려면 다음을 수행합니다.

gcloud

subnets update 명령어를 사용합니다.

gcloud compute networks subnets update SUBNET \
    --stack-type=IPV4_ONLY \
    --region=REGION

다음을 바꿉니다.

  • SUBNET: 서브넷의 이름입니다.
  • REGION: 서브넷의 Google Cloud 리전입니다.

API

subnetworks.patch 메서드에 대해 PATCH 요청을 실행합니다.

PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/subnetworks/SUBNET
{
  "stackType": IPV4_ONLY,
}

다음을 바꿉니다.

  • PROJECT_ID: 수정할 VPC 네트워크가 포함된 프로젝트의 ID입니다.
  • REGION: 서브넷의 Google Cloud 리전입니다.
  • SUBNET: 서브넷의 이름입니다.

서브넷 삭제

다음 안내에 따라 수동으로 만든 서브넷을 삭제합니다. 서브넷을 삭제하려면 해당 서브넷을 사용하는 모든 리소스를 삭제해야 합니다. 예를 들어 서브넷을 사용하는 VM, 예약된 내부 IP 주소, 내부 전달 규칙, Cloud NAT 게이트웨이를 삭제해야 합니다.

서브넷을 삭제하려면 다음을 수행합니다.

콘솔

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

    VPC 네트워크로 이동

    프로젝트의 모든 네트워크와 서브넷은 계층 구조 보기로 표시되며 서브넷은 네트워크 내의 항목으로 표시됩니다.

  2. 특정 네트워크를 보려면 네트워크 이름을 클릭합니다. VPC 네트워크 세부정보 페이지에서 서브넷 탭의 서브넷 이름을 클릭하여 서브넷 세부정보 페이지를 표시합니다.

  3. 서브넷 삭제를 클릭합니다.

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

gcloud

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

gcloud compute networks subnets delete SUBNET \
    --region=REGION

다음을 바꿉니다.

  • SUBNET: 삭제할 서브넷의 이름입니다.
  • REGION: 삭제할 서브넷의 리전입니다.

API

subnetworks.delete 메서드에 대해 DELETE 요청을 실행합니다.

DELETE https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/subnetworks/SUBNET

다음을 바꿉니다.

  • PROJECT_ID: 삭제할 서브넷이 포함된 프로젝트의 ID입니다.
  • REGION: 삭제할 서브넷이 포함된 Google Cloud 리전의 이름입니다.
  • SUBNET: 삭제할 서브넷의 이름입니다.

기본 IPv4 범위 확장

기존 서브넷 마스크를 수정하고 프리픽스 길이를 더 작은 숫자로 설정하여 기존 서브넷의 기본 IPv4 범위를 확장할 수 있습니다. 서브넷의 제안된 새 기본 IPv4 범위는 서브넷 규칙을 따라야 합니다.

자동 모드 VPC 네트워크에서(또는 이전에 자동 모드 VPC 네트워크였던 커스텀 모드 VPC 네트워크에서) 자동으로 생성된 서브넷의 IPv4 범위를 확장할 때 사용할 수 있는 가장 넓은 프리픽스(서브넷 마스크)는 /16입니다. /16보다 큰 프리픽스는 자동 생성된 다른 서브넷의 기본 IPv4 범위와 충돌합니다.

부하 분산기 프록시에만 사용되는 서브넷은 확장할 수 없습니다. 자세한 내용은 부하 분산기의 프록시 전용 서브넷을 참조하세요.

서브넷의 기본 IPv4 범위를 확장하는 데 몇 분이 걸릴 수 있습니다. 확장하는 동안 서브넷 내의 트래픽은 중단되지 않습니다.

서브넷의 기본 IPv4 범위를 확장하는 경우 이 IP 주소 범위를 가정하는 다른 구성을 수정해야 할 수 있습니다.

서브넷의 기본 IPv4 범위를 확장하려면 다음을 수행합니다.

콘솔

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

    VPC 네트워크로 이동

    프로젝트의 모든 네트워크와 서브넷은 계층 구조 보기로 표시되며 서브넷은 네트워크 내의 항목으로 표시됩니다.

  2. 특정 네트워크의 서브넷만 보려면 네트워크 이름을 클릭합니다. VPC 네트워크 세부정보 페이지에서 서브넷 탭의 서브넷 이름을 클릭하여 서브넷 세부정보 페이지를 표시합니다.

  3. 수정을 클릭합니다.

  4. IP 주소 범위 필드에 더 넓은 새 CIDR 블록을 입력합니다.

    유효한 범위는 IPv4 서브넷 범위를 참조하세요.

  5. 저장을 클릭합니다.

gcloud

subnets expand-ip-range 명령어를 사용합니다.

gcloud compute networks subnets expand-ip-range SUBNET \
  --region=REGION \
  --prefix-length=PREFIX_LENGTH

다음을 바꿉니다.

  • SUBNET: 서브넷의 이름입니다.
  • REGION: 서브넷이 있는 리전입니다.
  • PREFIX_LENGTH: 서브넷 마스크 크기(비트)입니다. 기본 IPv4 범위가 10.1.2.0/2420을 입력하여 서브넷 마스크를 20비트로 줄여 기본 IPv4 범위를 10.1.2.0/20으로 변경합니다. 유효한 범위는 IPv4 서브넷 범위를 참조하세요.

API

subnetworks.expandIpCidrRange 메서드에 대해 POST 요청을 실행합니다.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/subnetworks/SUBNET/expandIpCidrRange
{
  "ipCidrRange": "IP_RANGE"
}

다음을 바꿉니다.

  • PROJECT_ID: 수정할 서브넷이 포함된 프로젝트의 ID입니다.
  • REGION: 수정할 서브넷이 포함된 Google Cloud 리전의 이름입니다.
  • SUBNET: 수정할 서브넷의 이름입니다.
  • IP_RANGE: 서브넷의 확장된 IPv4 주소 범위입니다. 유효한 범위는 IPv4 서브넷 범위를 참조하세요.

보조 IPv4 범위 수정

서브넷에 보조 IPv4 범위를 추가할 수 있으며, IP 주소를 사용하는 리소스가 없는 경우 보조 IPv4 범위를 삭제할 수 있습니다.

gcloud

새 보조 IPv4 범위를 서브넷에 추가하려면 subnets update 명령어를 사용합니다.

gcloud compute networks subnets update SUBNET \
  --region=REGION \
  --add-secondary-ranges=SECONDARY_RANGE_NAME=SECONDARY_RANGE

다음을 바꿉니다.

  • SUBNET: 서브넷의 이름입니다.
  • REGION: 서브넷이 있는 리전입니다.
  • SECONDARY_RANGE_NAME: 보조 범위의 이름입니다.
  • SECONDARY_RANGE: CIDR 표기법으로 표시된 보조 IPv4 범위입니다. 유효한 범위는 IPv4 서브넷 범위를 참조하세요.

서브넷에서 보조 IPv4 범위를 삭제하려면 subnets update 명령어를 사용합니다.

gcloud compute networks subnets update SUBNET \
  --region=REGION \
  --remove-secondary-ranges=SECONDARY_RANGE_NAME

다음을 바꿉니다.

  • SUBNET: 서브넷의 이름입니다.
  • REGION: 서브넷이 있는 리전입니다.
  • SECONDARY_RANGE_NAME: 삭제할 보조 범위의 이름입니다.

API

기존 서브넷의 보조 IPv4 주소 범위를 수정하려면 subnetworks.patch 메서드에 대해 PATCH 요청을 실행합니다.

PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/subnetworks/SUBNET
{
  "secondaryIpRanges": [
  {
    "rangeName": "SECONDARY_RANGE_NAME",
    "ipCidrRange": "IP_RANGE"
  },
  {
    "rangeName": "SECONDARY_RANGE_NAME",
    "ipCidrRange": "IP_RANGE"
  }],
  "fingerprint": "SUBNETWORK_FINGERPRINT"
}

다음을 바꿉니다.

  • PROJECT_ID: 수정할 서브넷이 포함된 프로젝트의 ID입니다.
  • REGION: 수정할 서브넷이 포함된 Google Cloud 리전의 이름입니다.
  • SUBNET: 수정할 서브넷의 이름입니다.
  • SECONDARY_RANGE_NAME: 보조 IPv4 주소 범위의 이름입니다.
  • IP_RANGE: 서브넷의 확장된 IPv4 주소 범위입니다. 유효한 범위는 IPv4 서브넷 범위를 참조하세요.
  • SUBNET_FINGERPRINT: 서브넷을 설명할 때 제공되는 기존 서브넷의 디지털 지문 ID입니다.

네트워크 수정

자동 모드 VPC 네트워크를 커스텀 모드로 변환

이 절차에 따라 자동 모드 VPC 네트워크를 커스텀 모드 VPC 네트워크로 변환할 수 있습니다. 이 작업이 어떨 때 필요한지 알아보려면 자동 모드 VPC 네트워크 고려 사항을 참조하세요.

자동 모드 VPC 네트워크를 커스텀 모드 VPC 네트워크로 전환하면 자동으로 생성된 서브넷과 사용자가 추가한 모든 서브넷이 보존됩니다. 서브넷 이름과 IP 범위는 변경되지 않습니다.

자동 모드 VPC 네트워크를 커스텀 모드로 전환한 후에는 네트워크가 자동 모드일 때 자동 생성된 모든 서브넷을 암묵적으로 참조하는 모든 API 호출 및 gcloud CLI 명령어를 검토해야 합니다. API 호출 및 명령어는 서브넷을 명시적으로 참조하도록 수정해야 합니다. 서브넷 지정 플래그(--subnet)가 있는 gcloud CLI 명령어의 경우 커스텀 모드 VPC 네트워크에서 서브넷을 참조하려면 해당 플래그가 필요합니다.

자동 모드 VPC 네트워크를 커스텀 모드 VPC 네트워크로 변환하려면 다음을 수행합니다.

콘솔

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

    VPC 네트워크로 이동

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

  3. 수정을 클릭합니다.

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

  5. 저장을 클릭합니다.

gcloud

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

gcloud compute networks update NETWORK \
    --switch-to-custom-subnet-mode

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

API

networks.switchToCustomMode 메서드에 대해 POST 요청을 실행합니다.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/NETWORK/switchToCustomMode

다음을 바꿉니다.

  • PROJECT_ID: 변환할 VPC 네트워크가 포함된 프로젝트의 ID입니다.
  • NETWORK: 변환할 VPC 네트워크의 이름입니다.

네트워크에 내부 IPv6 범위 할당

서브넷에서 내부 IPv6 주소를 구성하려면 먼저 VPC 네트워크에서 내부 IPv6 주소를 사용 설정해야 합니다. 내부 IPv6를 사용 설정하면 /48 고유 로컬 주소(ULA) 범위가 네트워크에 할당됩니다.

VPC 네트워크에 내부 IPv6 범위를 사용 설정한 후에는 이중 스택 서브넷 추가 또는IPv4 서브넷을 이중 스택 서브넷으로 변환할 수 있습니다.

내부 IPv6 범위를 네트워크에 할당하려면 다음을 수행합니다.

콘솔

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

    VPC 네트워크로 이동

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

  3. 수정을 클릭합니다.

  4. VPC 네트워크 ULA 내부 IPv6 범위에서 사용 설정됨을 선택합니다.

  5. 선택사항: 내부 IPv6 범위에 사용할 프리픽스를 제공할 수 있습니다.

    1. ULA 내부 IPv6 범위 할당에 대해 수동을 클릭합니다.
    2. fd20::/20 범위 내에서 /48 범위를 입력합니다.

      범위가 사용 중인 경우 다른 범위를 입력하라는 메시지가 표시됩니다.

  6. 저장을 클릭합니다.

gcloud

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

--enable-ula-internal-ipv6 플래그는 내부 IPv6 서브넷 범위에 대해 Google에서 사용하는 fd20::/20 범위 내의 /48 프리픽스입니다. 할당된 /48 IPv6 범위를 선택하려면 --internal-ipv6-range 플래그를 사용해서 범위를 지정합니다.

gcloud compute networks update NAME \
    --enable-ula-internal-ipv6 \
    [ --internal-ipv6-range=ULA_IPV6_RANGE ]

다음을 바꿉니다.

  • NAME: VPC 네트워크의 이름입니다.
  • ULA_IPV6_RANGE: ULA 프리픽스를 할당해야 하는 IPv6 주소 범위입니다.

API

networks.insert 메서드에 대해 PATCH 요청을 실행합니다.

enableUlaInternalIpv6을 true로 설정하면 내부 IPv6 서브넷 범위에 대해 Google에서 사용하는 fd20::/20 범위 내에서 /48 범위가 할당됩니다. 할당되는 /48 IPv6 범위를 선택하려면 internalIpv6Range 필드도 사용하여 범위를 지정합니다.

PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/networksa/NETWORK
{
  "enableUlaInternalIpv6": true,
  "internalIpv6Range": "ULA_IPV6_RANGE",
}

다음을 바꿉니다.

  • PROJECT_ID: VPC 네트워크가 만들어진 프로젝트의 ID입니다.
  • NETWORK: VPC 네트워크의 이름입니다.
  • ULA_IPV6_RANGE: 내부 IPv6 서브넷 범위에 대해 Google에서 사용하는 fd20::/20 범위 내의 /48 프리픽스입니다. internalIpv6Range 값을 제공하지 않으면 Google은 네트워크의 /48 프리픽스를 선택합니다.

동적 라우팅 모드 변경

각 VPC 네트워크에는 연결된 동적 라우팅 모드가 있으며 이 모드는 네트워크의 Cloud Router 동작을 제어합니다. VPC 네트워크동적 라우팅 모드 섹션을 참조하여 각 모드가 Cloud Router의 경로 공유 및 학습된 경로 적용 방식에 어떻게 영향을 미치는지 알아보세요.

VPC 네트워크의 동적 라우팅 모드를 변경하려면 다음을 수행합니다.

콘솔

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

    VPC 네트워크로 이동

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

  3. 수정을 클릭합니다.

  4. 동적 라우팅 모드 섹션에서 전역 또는 리전을 선택합니다.

  5. 저장을 클릭합니다.

gcloud

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

gcloud compute networks update NETWORK \
    --bgp-routing-mode=DYNAMIC_ROUTING_MODE

다음을 바꿉니다.

  • NETWORK: 업데이트할 VPC 네트워크의 이름입니다.
  • DYNAMIC_ROUTING_MODE: 네트워크에서 Cloud Router의 동작을 제어합니다. global 또는 regional일 수 있습니다. 기본값은 regional입니다. 자세한 내용은 동적 라우팅 모드를 참조하세요.

API

subnetworks.patch 메서드에 대해 PATCH 요청을 실행합니다.

PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/NETWORK
{
  "routingConfig": {
    "routingMode": "ROUTING_MODE"
  }
}

다음을 바꿉니다.

  • PROJECT_ID: 수정할 VPC 네트워크가 포함된 프로젝트의 ID입니다.
  • NETWORK: 수정할 VPC 네트워크의 이름입니다.
  • ROUTING_MODE: 네트워크에서 Cloud Router의 동작을 제어합니다. GLOBAL 또는 REGIONAL일 수 있습니다. 기본값은 REGIONAL입니다. 자세한 내용은 동적 라우팅 모드를 참조하세요.

네트워크의 MTU 변경

VPC 네트워크의 MTU 변경에 대한 자세한 내용은 VPC 네트워크의 MTU 설정 변경을 참조하세요.

네트워크 삭제

네트워크를 사용하지 않는 경우 삭제할 수 있습니다. 네트워크를 삭제하기 전에 네트워크의 모든 서브넷에 있는 모든 리소스와 네트워크를 참조하는 모든 리소스를 삭제해야 합니다. 네트워크를 참조하는 리소스에는 Cloud VPN 게이트웨이, Cloud Router, 서버리스 VPC 액세스 커넥터 및 해당 연결된 서비스, 방화벽 규칙, 커스텀 정적 경로가 있습니다.

VPC 네트워크를 삭제하려면 다음을 수행합니다.

콘솔

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

    VPC 네트워크로 이동

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

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

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

gcloud

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

gcloud compute networks delete NETWORK

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

API

networks.delete 메서드에 대해 DELETE 요청을 실행합니다.

DELETE https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/NETWORK

다음을 바꿉니다.

  • PROJECT_ID: 삭제할 VPC 네트워크가 포함된 프로젝트의 ID입니다.
  • NETWORK: 삭제할 VPC 네트워크의 이름입니다.

VPC 네트워크 모니터링

VM을 드나드는 네트워크 흐름에 로깅을 사용 설정할 수 있습니다. 자세한 내용은 VPC 흐름 로그 사용을 참조하세요.

방화벽 규칙에 로깅을 사용 설정하여 어떤 규칙이 어떤 트래픽을 허용 또는 차단하는지 확인할 수 있습니다. 자세한 내용은 방화벽 규칙 로깅 사용을 참조하세요.

VM 마이그레이션

가상 머신(VM) 인스턴스를 하나의 네트워크에서 지정된 프로젝트 내의 다른 네트워크로 마이그레이션할 수 있습니다. 자세한 내용은 네트워크 간 VM 마이그레이션을 참조하세요.

문제 해결

오류: Constraint constraints/compute.requireVpcFlowLogs violated

이 오류는 다음 조건이 모두 적용되는 경우에 발생합니다.

  • VPC 흐름 로그를 구성해야 하는 조직 정책 제약조건이 설정되어 있습니다.

  • 서브넷을 만들거나 기존 서브넷의 VPC 흐름 로그 구성을 업데이트하고, 구성이 정책의 요구사항을 충족하지 않습니다.

이 제약조건과 서브넷 제약조건 및 업데이트의 영향에 대한 자세한 내용은 VPC 흐름 로그의 조직 정책 제약조건을 참조하세요.

리소스를 찾을 수 없음 오류

VPC 네트워크를 삭제할 때 다음과 비슷한 메시지가 표시될 수 있습니다. The resource "aet-uscentral1-subnet--1-egrfw" was not found.

이 오류 및 해결 방법에 대한 자세한 내용은 VPC 방화벽 규칙 문서의 리소스를 찾을 수 없음 오류를 참조하세요.

다음 단계

  • 경로에 대한 자세한 내용은 경로를 참조하세요.
  • 방화벽 규칙에 대한 자세한 내용은 방화벽 규칙을 참조하세요.
  • VPC 네트워킹에 대한 자세한 내용은 고급 VPC 개념을 참조하세요.

직접 사용해 보기

Google Cloud를 처음 사용하는 경우 계정을 만들어 실제 시나리오에서 VPC의 성능을 평가할 수 있습니다. 신규 고객에게는 워크로드를 실행, 테스트, 배포하는 데 사용할 수 있는 $300의 무료 크레딧이 제공됩니다.

VPC 무료로 사용해 보기