[인프라 솔루션] MS Azure | Auzre Virtual Network ( vNet, NSG) (가상네트워크)

2020. 6. 22. 17:48노트/Cloud : 인프라

Virtual Network

  • Virtual networks 이 만들어져 있어야 AZURE VMs, 등 서비스를 만들 수 있다  

  • Virtual networks을 통해야만 접근할 수있는 서비스 : Azure Storage ...등  

  • Virtual networks와 통합되지 않는 서비스 : Azure Ad, Traffic Manager, … 등 

Virtual Network 개념

  • 2 개 이상의 VM, Azure resources, 온프레미스 네트워크의 안전한 data communication
  • 물리적 컴퓨터 네트워크 원리에 기반하지만, S/W 중심으로 기능
  • S/W를 이용해 VM과 장치들을 연결

Virtual Network 장점

  1. 실제 네트워크를 가상화 하여 사용 > 공간적인 제약을 초월한 통신 가능
  2. H/W를 구입 및 유지 관리하지 않고도 가상화의 유연성을 제공 -> 비용 절감

Virtual Network 특징

  • TCP, UDP, ICMP를 지원
  • 도메인 이름이 자동으로 built-in, 사용자가 직접 구성할 수도 있다.
  • 같은 Vnet의 Subnet간 통신시, 라우터 없이도 통신 가능
  • 보안을 위해 라우터를 두고 통신할 수 있다.

Virtual Network 구성요소

  1. Network Interface (NIC)
    • VM과 Vnet간의 상호 연결
    • VM마다 NIC가 하나 이상 있어야함
    • NIC를 여러 개 사용하면 VM에서 서로 다른 subnet에 연결, 가장 적절한 인터페이스를 통해 통신할 수 있음
    • Portal에서는 VM을 만들 때, NIC가 자동으로 생성
  2. Subnet mask
    • 네트워크 IP와 호스트 IP의 구분이 가능하게 함
  3. CIDR(Classless Inter-Domain Routing)
    • Class 표기법 : IP를 10진법으로 표기
    • CIDR : IP를 2진법으로 표기
    • 한정된 IP주소를 낭비하는 Class 표기법의 문제를 해결
    • 네트워크 IP의 비트 수를 유동적으로 사용
  4. IP 주소 할당
    • 사설 IP 사용 : 사설 IP대역에서 사용자가 임의로 지정
      • 사설 IP 대역 : 10.x.x.x
      • ​ 172.16.x.x ~ 172.31.x.x
      • ​ 192.168.x.x
      • Azure가 예약한 3개의 IP, network IP, braodcast IP를 제외
      • subnet mask는 최대 29bit 까지 설정
    • 공인 IP : 과금
    • 공인 IP로 virtual Networks 만들어도 되고 사설 IP로 virtual Networks 만들어도 됌 
  5. Subnet
    • 대규모 네트워크를 구성하는 하위의 개별 네트워크
    • 네트워크를 여러 섹션으로 나누는 것을 의미 (조직 및 보안의 목적)
    • 하나의 Vnet 내에 반드시 하나 이상의 subnet이 있어야 함
    • VM의 각 NIC는 하나의 Vnet에서 하나의 subnet에 연결
    • 가상 네트워크 내에서, 동일한 subnet 또는 서로 다른 subnet에 연결되어 있더라도 별도의 구성 없이 통신 가능
    • 게이트웨이나 공용 IP 주소를 사용할 필요 없음
  6. NSG(Network Security Group)
    • 서브넷 간의 네트워크 트래픽을 필터링
    • 가상 네트워크의 방화벽 역할
    • 서브넷, NIC 또는 둘 모두에 대한 네트워크 트래픽을 허용하거나 거부하는 기본 규칙 집합을 포함
    • 기본 규칙은 삭제할 수 없음
    • 기본 규칙은 가장 낮은 우선순위가 할당되기 때문에, 직접 규칙을 재정의 할 수 있음
    • Azure portal에서는 NSG가 자동으로 생성되며, 인바운드 정책만을 관리, 포트와 프로토콜, IP를 기준으로 필터링
    • 원격 접속 시에는 RDP 3389를 열어줘야 함.

Virtual Network 기능

  • Load Balancer : 부하분산장치
    • 트래픽을 VM에 분산 또는 VM간의 트래픽 균형을 조정함으로써, 과부하로 인한 서버의 정지나 지연을 방지
  • VPN (Virtual Private Network)
    • 원격에 있는 사용자를 네트워크에 접속 가능하게 함
    • Vnet과 Vnet을 연결하여 하나의 network처럼 사용

템플릿을 이용하여 Virtual Network 만들기

 

사전 개념

  • Azure vNet에서는 라우터없이 Subnet끼리 통신 가능  

  • MS SQL 은 TCP 1433 포트를 사용 

  • RDP는 원격으로 접속 TCP 3389 포트 사용

 


https://github.com/Azure/azure-quickstart-templates/tree/master/101-vnet-two-subnets

  • 두가지 Subnet으로 Virtual Network 만들기

 

  • Resource Group 생성

  •  
  • Subnet 2개 생성 확인

Power Shell로 Virtual Network 만들기

 

  • 관리자 모드로 접속

  • Install-Modeul -Name Az -AllowClobber

  • All Yes

  • Import-Module Az

 

  • Connect-AzAccount

  • Microsoft Azure 로그인

  • Azure와 연결 확인

  • Srg = New-AzResourceGroup -Name '20533E0204-LabRG' -Location 'EastUS'

 

  • Svnet = New-AzVirtualNetwork -ResourceGroupName Srg.ResourceGroupName -Name '20533E0204-vnet' -AddressPrefix '10.11.0.0/16' -Location Srg.Location

 

  • Add-AzVirtualNetworkSubnetConfig -Name 'Subnet1' -VirtualNetwork Svnet -AddressPrefix '10.11.0.0/24'

 

  • Set-AzVirtualNetwork -VirtualNetwork $vnet

 

  • Vnet 생성 확인

 

 

CLI로 Virtual Network 만들기

https://docs.microsoft.com/ko-kr/cli/azure/install-azure-cli-windows?view=azure-cli-latest

 

  • C:\Users\Administrator > az

  • C:\Users\Administrator > az login

  • Azure 로그인

 

 

 

  • C:\Users\Administrator > az group create --name 20533E0205-LabRG --location "EastUS"

 

  • C:\Users\Administrator > az network vnet create --name 20533E0205-vnet --resource-group 20533E0205-LabRG --location "EastUS" --address-prefix 10.12.0.0/16 --subnet-name Subnet1 --subnet-prefix 10.12.0.0/24

 

  • C:\Users\Administrator > az network vnet subnet create --address-prefix 10.12.1.0/24 --name Subnet2 --resource-group 20533E0205-LabRG --vnet-name 20533E0205-vnet

 

  • Subnet 2개 생성 확인