arrow_back

VPC 네트워킹 기초

가입 로그인
Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

VPC 네트워킹 기초

Lab 1시간 universal_currency_alt 크레딧 1개 show_chart 입문
Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

GSP210

Google Cloud 사용자 주도형 실습

개요

Google Cloud 가상 프라이빗 클라우드(VPC)는 Compute Engine 가상 머신(VM) 인스턴스, Kubernetes Engine 컨테이너, App Engine 가변형 환경에 네트워킹 기능을 제공합니다. 즉, VPC 네트워크가 없으면 VM 인스턴스, 컨테이너 또는 App Engine 애플리케이션을 만들 수 없습니다. 따라서 각 Google Cloud 프로젝트에는 프로젝트를 시작할 수 있는 기본 네트워크가 있습니다.

VPC 네트워크는 Google Cloud 내에서 가상화된다는 점을 제외하면 물리적 네트워크와 동일하다고 생각해도 됩니다. VPC 네트워크는 전역 광역 통신망(WAN)을 통해 모두 연결되는 데이터 센터의 리전별 가상 서브네트워크(서브넷) 목록으로 구성된 전역 리소스입니다. VPC 네트워크는 Google Cloud에서 논리적으로 서로 격리되어 있습니다.

이 실습에서는 방화벽 규칙과 두 개의 VM 인스턴스가 있는 자동 모드 VPC 네트워크를 만듭니다. 그런 다음 VM 인스턴스의 연결을 살펴봅니다.

목표

이 실습에서는 다음 작업을 수행하는 방법을 알아봅니다.

  • 기본 VPC 네트워크 살펴보기
  • 방화벽 규칙이 있는 자동 모드 네트워크 만들기
  • Compute Engine을 사용하여 VM 인스턴스 만들기
  • VM 인스턴스의 연결 살펴보기

설정 및 요건

실습 시작 버튼을 클릭하기 전에

다음 안내를 확인하세요. 실습에는 시간 제한이 있으며 일시중지할 수 없습니다. 실습 시작을 클릭하면 타이머가 시작됩니다. 이 타이머에는 Google Cloud 리소스를 사용할 수 있는 시간이 얼마나 남았는지 표시됩니다.

실무형 실습을 통해 시뮬레이션이나 데모 환경이 아닌 실제 클라우드 환경에서 직접 실습 활동을 진행할 수 있습니다. 실습 시간 동안 Google Cloud에 로그인하고 액세스하는 데 사용할 수 있는 새로운 임시 사용자 인증 정보가 제공됩니다.

이 실습을 완료하려면 다음을 준비해야 합니다.

  • 표준 인터넷 브라우저 액세스 권한(Chrome 브라우저 권장)
참고: 이 실습을 실행하려면 시크릿 모드 또는 시크릿 브라우저 창을 사용하세요. 개인 계정과 학생 계정 간의 충돌로 개인 계정에 추가 요금이 발생하는 일을 방지해 줍니다.
  • 실습을 완료하기에 충분한 시간---실습을 시작하고 나면 일시중지할 수 없습니다.
참고: 계정에 추가 요금이 발생하지 않도록 하려면 개인용 Google Cloud 계정이나 프로젝트가 이미 있어도 이 실습에서는 사용하지 마세요.

실습을 시작하고 Google Cloud 콘솔에 로그인하는 방법

  1. 실습 시작 버튼을 클릭합니다. 실습 비용을 결제해야 하는 경우 결제 수단을 선택할 수 있는 팝업이 열립니다. 왼쪽에는 다음과 같은 항목이 포함된 실습 세부정보 패널이 있습니다.

    • Google 콘솔 열기 버튼
    • 남은 시간
    • 이 실습에 사용해야 하는 임시 사용자 인증 정보
    • 필요한 경우 실습 진행을 위한 기타 정보
  2. Google 콘솔 열기를 클릭합니다. 실습에서 리소스가 가동된 후 로그인 페이지가 표시된 다른 탭이 열립니다.

    팁: 두 개의 탭을 각각 별도의 창으로 나란히 정렬하세요.

    참고: 계정 선택 대화상자가 표시되면 다른 계정 사용을 클릭합니다.
  3. 필요한 경우 실습 세부정보 패널에서 사용자 이름을 복사하여 로그인 대화상자에 붙여넣습니다. 다음을 클릭합니다.

  4. 실습 세부정보 패널에서 비밀번호를 복사하여 시작 대화상자에 붙여넣습니다. 다음을 클릭합니다.

    중요: 왼쪽 패널에 표시된 사용자 인증 정보를 사용해야 합니다. Google Cloud Skills Boost 사용자 인증 정보를 사용하지 마세요. 참고: 이 실습에 자신의 Google Cloud 계정을 사용하면 추가 요금이 발생할 수 있습니다.
  5. 이후에 표시되는 페이지를 클릭하여 넘깁니다.

    • 이용약관에 동의합니다.
    • 임시 계정이므로 복구 옵션이나 2단계 인증을 추가하지 않습니다.
    • 무료 평가판을 신청하지 않습니다.

잠시 후 Cloud 콘솔이 이 탭에서 열립니다.

참고: 왼쪽 상단에 있는 탐색 메뉴를 클릭하면 Google Cloud 제품 및 서비스 목록이 있는 메뉴를 볼 수 있습니다. 탐색 메뉴 아이콘

작업 1. 기본 네트워크 살펴보기

각 Google Cloud 프로젝트에는 서브넷, 경로, 방화벽 규칙이 있는 기본 네트워크가 있습니다.

서브넷 보기

기본 네트워크는 각 Google Cloud 리전에 하나의 서브넷이 있습니다.

  1. Cloud 콘솔에서 탐색 메뉴(탐색 메뉴 아이콘) > VPC 네트워크 > VPC 네트워크로 이동합니다.

  2. 기본 네트워크를 클릭합니다. 기본 네트워크 세부정보와 서브넷을 확인합니다.

참고: 각 서브넷은 내부 IP 주소 범위게이트웨이를 위해 Google Cloud 리전 및 비공개 RFC 1918 CIDR 블록과 연결되어 있습니다.

경로 보기

경로는 인스턴스에서 네트워크 내부 또는 Google Cloud 외부에 있는 대상으로 트래픽을 보내는 방법을 VM 인스턴스 및 VPC 네트워크에 알려줍니다.

각 VPC 네트워크에는 해당 서브넷 간에 트래픽을 라우팅하고 요건을 충족하는 인스턴스에서 인터넷으로 트래픽을 전송하는 몇 가지 기본 경로가 있습니다.

  1. 왼쪽 창에서 경로를 클릭합니다.

  2. 효과적인 경로 탭에서 default 네트워크와 us-central1 리전을 선택합니다.

각 서브넷과 기본 인터넷 게이트웨이(0.0.0.0/0)에 경로가 하나씩 있습니다.

참고: 이러한 경로는 자동으로 관리되지만 일부 패킷을 특정 대상으로 전달하기 위해 사용자가 커스텀 정적 경로를 만들 수 있습니다. 예를 들어 모든 아웃바운드 트래픽을 NAT 게이트웨이로 구성된 인스턴스로 보내는 경로를 만들 수 있습니다.

방화벽 규칙 보기

각 VPC 네트워크는 사용자가 구성할 수 있는 분산 가상 방화벽을 구현합니다. 방화벽 규칙을 사용하면 어떤 패킷이 어떤 대상으로 이동하는지 제어할 수 있습니다.

모든 VPC 네트워크에는 모든 수신 연결을 차단하고 모든 발신 연결을 허용하는 두 가지 묵시적인 방화벽 규칙이 있습니다.

  1. 왼쪽 창에서 방화벽을 클릭합니다.

기본 네트워크에는 다음 4개의 인그레스 방화벽 규칙이 있습니다.

  • default-allow-icmp
  • default-allow-internal
  • default-allow-rdp
  • default-allow-ssh
참고: 이 방화벽 규칙은 모든(0.0.0.0/0) ICMP, RDP, SSH 인그레스 트래픽과 네트워크(10.128.0.0/9) 내부의 모든 TCP, UDP, ICMP 트래픽을 허용합니다. 대상, 소스 필터, 프로토콜/포트, 작업 열에 이 규칙이 설명되어 있습니다.

기본 네트워크 삭제

  1. 모든 방화벽 규칙을 선택하고 삭제를 클릭합니다.

  2. 왼쪽 창에서 VPC 네트워크를 클릭합니다.

  3. 기본 네트워크를 클릭합니다.

  4. 페이지 상단에서 VPC 네트워크 삭제를 클릭합니다.

  5. 삭제를 클릭하여 기본 네트워크 삭제를 확인합니다.

    참고: 네트워크가 삭제될 때까지 기다렸다가 다음 단계를 진행합니다.
  6. 왼쪽 창에서 경로를 클릭합니다.

    경로가 없는 것을 알 수 있습니다. 페이지 상단의 새로고침 버튼을 클릭해야 할 수 있습니다.

참고: VPC 네트워크가 없으면 경로도 없습니다.

VM 인스턴스 만들기 시도

VPC 네트워크 없이는 VM 인스턴스를 만들 수 없음을 확인합니다.

  1. Cloud 콘솔에서 탐색 메뉴(탐색 메뉴 아이콘) > Compute Engine > VM 인스턴스로 이동합니다.

  2. +인스턴스 만들기를 클릭하여 VM 인스턴스를 만듭니다.

  3. 모든 값을 기본값으로 두고 만들기를 클릭합니다.

    참고: 오류가 발생하는 것을 알 수 있습니다.
  4. 고급 옵션 섹션을 펼친 후 네트워크 인터페이스까지 아래로 스크롤합니다.

    참고: 네트워크 상자에 이 프로젝트에 사용 가능한 네트워크가 더 이상 없습니다 오류 메시지를 확인합니다.
  5. 취소를 클릭합니다.

참고: 예상대로 VPC 네트워크가 없으면 VM 인스턴스를 만들 수 없습니다.

작업 2. VPC 네트워크 및 VM 인스턴스 만들기

VM 인스턴스를 만들 수 있도록 VPC 네트워크를 만듭니다.

방화벽 규칙이 있는 자동 모드 VPC 네트워크 만들기

자동 모드 네트워크를 만들어 기본 네트워크를 복제합니다.

  1. 콘솔에서 탐색 메뉴(탐색 메뉴 아이콘) > VPC 네트워크 > VPC 네트워크로 이동한 후 +VPC 네트워크 만들기를 클릭합니다.

  2. 이름mynetwork로 설정합니다.

  3. 서브넷 생성 모드에서 자동을 클릭합니다.

    자동 모드 네트워크는 각 리전에 자동으로 서브넷을 만듭니다.

  4. 방화벽 규칙에서 사용 가능한 규칙을 모두 선택합니다.

    이 규칙은 기본 네트워크에 지정된 표준 방화벽 규칙과 동일합니다.

참고: deny-all-ingressallow-all-egress 규칙도 표시되지만 이러한 규칙은 묵시적이기 때문에 사용자가 선택하거나 선택 해제할 수 없습니다. 이 두 규칙은 우선순위가 낮으므로(정수 값이 클수록 우선순위가 낮음) ICMP, 커스텀, RDP, SSH 허용 규칙이 먼저 고려됩니다.
  1. 만들기를 클릭한 후 mynetwork가 생성될 때까지 기다립니다.

    각 리전에 서브넷이 생성되었는지 확인합니다.

  2. mynetwork 이름을 클릭하고 의 서브넷에 대한 IP 주소 범위를 기록합니다. 다음 단계에서 이를 참조합니다.

참고: 기본 네트워크를 삭제한 경우 방금 한 것처럼 자동 모드 네트워크를 만들면 빠르게 다시 생성할 수 있습니다.

완료된 작업 테스트하기

내 진행 상황 확인하기를 클릭하여 실행한 작업을 확인합니다. 작업이 완료되면 평가 점수가 부여됩니다.

VPC 네트워크 만들기

에 VM 인스턴스 만들기

리전에서 VM 인스턴스를 만듭니다. 리전과 영역을 선택하면 서브넷이 결정되고 서브넷의 IP 주소 범위에서 내부 IP 주소가 할당됩니다.

  1. 콘솔에서 탐색 메뉴(탐색 메뉴 아이콘) > Compute Engine > VM 인스턴스로 이동합니다.

  2. +인스턴스 만들기를 클릭합니다.

  3. 다음 값을 설정하고 나머지 값은 모두 기본값으로 둡니다.

    속성 값(지정된 대로 값 입력 또는 옵션 선택)
    이름 mynet-us-vm
    리전
    영역
    시리즈 E2
    머신 유형 e2-micro
  4. 만들기를 클릭한 후 인스턴스가 생성될 때까지 기다립니다.

  5. 내부 IP 의 서브넷에 대한 IP 주소 범위에서 할당되었는지 확인합니다.

완료된 작업 테스트하기

내 진행 상황 확인하기를 클릭하여 실행한 작업을 확인합니다. 작업이 완료되면 평가 점수가 부여됩니다.

에 VM 인스턴스 만들기

에 VM 인스턴스 만들기

리전에서 VM 인스턴스를 만듭니다.

  1. +인스턴스 만들기를 클릭합니다.

  2. 다음 값을 설정하고 나머지 값은 모두 기본값으로 둡니다.

    속성 값(지정된 대로 값 입력 또는 옵션 선택)
    이름 mynet-second-vm
    리전
    영역
    시리즈 E2
    머신 유형 e2-micro
  3. 만들기를 클릭한 후 인스턴스가 생성될 때까지 기다립니다.

참고: 이 영역에 요청을 처리하는 데 필요한 리소스가 부족하다는 오류 메시지가 표시되면 다른 영역에서 1~3단계를 다시 실행해 보세요.
  1. 내부 IP 의 서브넷에 대한 IP 주소 범위에서 할당되었는지 확인합니다.

    x.x.x.1이 게이트웨이용으로 예약되어 있으므로 내부 IP여야 하며, 해당 서브넷에 다른 인스턴스를 구성하지 않았습니다.

참고: 두 VM 인스턴스의 외부 IP 주소는 임시 주소입니다. 인스턴스가 중지되면 해당 인스턴스에 할당된 모든 임시 외부 IP 주소가 해제되어 일반 Compute Engine 풀로 반환되며 다른 프로젝트에서 사용할 수 있게 됩니다.

중지된 인스턴스가 다시 시작되면 해당 인스턴스에 새 임시 외부 IP 주소가 할당됩니다. 아니면 고정 외부 IP 주소를 예약할 수도 있습니다. 그러면 해당 주소는 명시적으로 해제될 때까지 프로젝트에 무기한으로 할당됩니다.

완료된 작업 테스트하기

내 진행 상황 확인하기를 클릭하여 실행한 작업을 확인합니다. 작업이 완료되면 평가 점수가 부여됩니다.

에 VM 인스턴스 만들기

작업 3. VM 인스턴스의 연결 살펴보기

VM 인스턴스의 연결을 살펴봅니다. tcp:22를 사용하여 VM 인스턴스에 SSH를 통해 연결하고, ICMP를 사용하여 VM 인스턴스의 내부 및 외부 IP 주소 모두를 핑합니다. 그런 다음 방화벽 규칙을 하나씩 삭제하며 방화벽 규칙이 연결에 미치는 영향을 살펴봅니다.

VM 인스턴스의 연결 확인

mynetwork에서 만든 방화벽 규칙은 mynetwork 내부(내부 IP)와 해당 네트워크의 외부(외부 IP)에서 발생한 인그레스 SSH 및 ICMP 트래픽을 허용합니다.

  1. 콘솔에서 탐색 메뉴(탐색 메뉴 아이콘) > Compute Engine > VM 인스턴스로 이동합니다.

    mynet-second-vm의 외부 및 내부 IP 주소를 확인합니다.

  2. mynet-us-vm에서 SSH를 클릭하여 터미널을 실행하고 연결합니다. SSH를 두 번 클릭해야 할 수 있습니다.

    tcp:22에 대해 모든(0.0.0.0/0) 수신 트래픽을 허용하는 allow-ssh 방화벽 규칙이 있으므로 SSH로 연결할 수 있습니다.

    참고: Compute Engine에서 SSH 키를 생성해 다음 위치 중 하나에 저장하기 때문에 SSH 연결이 원활하게 작동합니다.

    • 기본적으로 Compute Engine은 생성된 키를 프로젝트 또는 인스턴스 메타데이터에 추가합니다.
    • 계정이 OS 로그인을 사용하도록 구성된 경우 Compute Engine은 생성된 키를 사용자 계정에 저장합니다.

    또는 SSH 키를 만들고 공개 SSH 키 메타데이터를 수정하여 Linux 인스턴스에 대한 액세스를 제어할 수 있습니다.
  3. mynet-second-vm의 내부 IP에 대한 연결을 테스트하려면 mynet-second-vm의 내부 IP를 사용하여 다음 명령어를 실행합니다.

    ping -c 3 <Enter mynet-second-vm's internal IP here>

    allow-custom 방화벽 규칙이 있으므로 mynet-second-vm의 내부 IP를 핑할 수 있습니다.

  4. mynet-second-vm의 외부 IP에 대한 연결을 테스트하려면 mynet-second-vm의 외부 IP를 사용하여 다음 명령어를 실행합니다.

    ping -c 3 <Enter mynet-second-vm's external IP here>

작업 4. 배운 내용 테스트하기

다음은 이 실습에서 배운 내용을 복습하기 위한 객관식 문제입니다. 최선을 다해 풀어보세요.

참고: 예상대로 mynet-us-vm에 SSH로 연결하고 mynet-second-vm의 내부 및 외부 IP 주소를 핑할 수 있습니다. 아니면 mynet-second-vm에 SSH로 연결하고 mynet-us-vm의 내부 및 외부 IP 주소를 핑하는 방법도 있습니다.

작업 5. allow-icmp 방화벽 규칙 삭제

allow-icmp 방화벽 규칙을 삭제하고 mynet-second-vm의 내부 및 외부 IP 주소에 핑을 시도합니다.

  1. 콘솔에서 탐색 메뉴(탐색 메뉴 아이콘) > VPC 네트워크 > 방화벽으로 이동합니다.

  2. mynetwork-allow-icmp 규칙을 선택합니다.

  3. 삭제를 클릭합니다.

  4. 삭제를 클릭하여 삭제를 확인합니다.

    방화벽 규칙이 삭제될 때까지 기다립니다.

  5. mynet-us-vm의 SSH 터미널로 돌아갑니다.

  6. mynet-second-vm의 내부 IP에 대한 연결을 테스트하려면 mynet-second-vm의 내부 IP를 사용하여 다음 명령어를 실행합니다.

ping -c 3 <Enter mynet-second-vm's internal IP here>

allow-custom 방화벽 규칙이 있으므로 mynet-second-vm의 내부 IP를 핑할 수 있습니다.

  1. mynet-second-vm의 외부 IP에 대한 연결을 테스트하려면 mynet-second-vm의 외부 IP를 사용하여 다음 명령어를 실행합니다.

    ping -c 3 <Enter mynet-second-vm's external IP here>
참고: 100% 패킷 손실mynet-second-vm의 외부 IP를 핑할 수 없음을 나타냅니다. 이는 allow-icmp 방화벽 규칙을 삭제했기 때문에 표시되는 오류입니다.

작업 6. allow-custom 방화벽 규칙 삭제

allow-custom 방화벽 규칙을 삭제하고 mynet-second-vm의 내부 IP 주소에 핑을 시도합니다.

  1. 콘솔에서 탐색 메뉴(탐색 메뉴 아이콘) > VPC 네트워크 > 방화벽으로 이동합니다.

  2. mynetwork-allow-custom 규칙을 선택한 후 삭제를 클릭합니다.

  3. 삭제를 클릭하여 삭제를 확인합니다.

    방화벽 규칙이 삭제될 때까지 기다립니다.

  4. mynet-us-vm의 SSH 터미널로 돌아갑니다.

  5. mynet-second-vm의 내부 IP에 대한 연결을 테스트하려면 mynet-second-vm의 내부 IP를 사용하여 다음 명령어를 실행합니다.

    ping -c 3 <Enter mynet-second-vm's internal IP here>
참고: 100% 패킷 손실mynet-second-vm의 내부 IP를 핑할 수 없음을 나타냅니다. 이는 allow-custom 방화벽 규칙을 삭제했기 때문에 표시되는 오류입니다.
  1. SSH 터미널을 닫습니다.

    exit

작업 7. allow-ssh 방화벽 규칙 삭제

allow-ssh 방화벽 규칙을 삭제하고 mynet-us-vm에 SSH로 연결을 시도합니다.

  1. 콘솔에서 탐색 메뉴(탐색 메뉴 아이콘) > VPC 네트워크 > 방화벽으로 이동합니다.

  2. mynetwork-allow-ssh 규칙을 선택한 후 삭제를 클릭합니다.

  3. 삭제를 클릭하여 삭제를 확인합니다.

    방화벽 규칙이 삭제될 때까지 기다립니다.

  4. 콘솔에서 탐색 메뉴(탐색 메뉴 아이콘) > Compute Engine > VM 인스턴스로 이동합니다.

  5. mynet-us-vm에서 SSH를 클릭하여 터미널을 실행하고 연결합니다.

참고: 연결 실패 메시지는 allow-ssh 방화벽 규칙을 삭제했으므로 mynet-us-vm에 SSH로 연결할 수 없음을 나타냅니다.

수고하셨습니다

이 실습에서는 기본 네트워크는 물론 네트워크의 서브넷, 경로, 방화벽 규칙까지 살펴봤습니다. 기본 네트워크를 삭제해 보고, VPC 네트워크 없이는 어떠한 VM 인스턴스도 만들 수 없다는 사실도 확인했습니다. 이 실습을 통해 서브넷, 경로, 방화벽 규칙 및 2개의 VM 인스턴스가 있는 새로운 자동 모드 VPC 네트워크를 만들어 본 것입니다. 그런 다음 VM 인스턴스의 연결을 테스트하고 방화벽 규칙이 연결에 미치는 영향도 살펴보았습니다.

다음 단계/더 학습하기

가상 프라이빗 클라우드(VPC) 네트워크 개요를 읽고 Google VPC에 대해 자세히 알아보세요.

설명서 최종 업데이트: 2024년 2월 10일

실습 최종 테스트: 2023년 9월 1일

Copyright 2024 Google LLC All rights reserved. Google 및 Google 로고는 Google LLC의 상표입니다. 기타 모든 회사명 및 제품명은 해당 업체의 상표일 수 있습니다.