IT/Cloud
AWS 네트워킹 서비스 - VPC
보띵
2022. 11. 19. 15:17
728x90
반응형
AWS 네트워킹 서비스 종류
VPC(Virtual Private Cloud)
- 사용자가 정의한 가상의 네트워크 환경(논리적 격리)
- 사용자 별 네트워크 제어 가능
- IP 범위 지정
- 용도에 맞는 Subnet 분리
- Routing Tables
- 보안 : Security Group, Network ACL
- Gateway : Internet Gateway, NAT Gateway, Virtual Gateway
- On-Premise 데이터 센터와 연결 옵션(VPN, DirectConnect)
VPC 만들기
1) Region 선택
- Region : AWS의 데이터 센터가 위치하는 큰 지역
2) CIDR 설정
- IP Range 결정 시 고려사항
- VPC 확장 시나리오 고려 : 서비스 확장, 동일 Region/ 다른 Region 과의 확장, On-Premise Network 과의 연동
- VPC의 Network 범위는 /16 ~ /28 까지 가능
- VPC CIDR 은 생성 후 변경 불가(Secondary CDIR은 4개까지 추가 가능)
- RFC 1918(Private IP 표준) 권장 : 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16
3) 가용영역에 Subnet 생성
- Subnet 생성 시 고려 사항
- 최소 /24 subnet 지정
- 예약된 IP 주소 (10.0.0.0/24 인 경우)
- 10.0.0.0 : 네트워크 주소
- 10.0.0.1 : VPC 라우터용으로 예약된 주소
- 10.0.0.2 : AWS에서 예약한 DNS 주소, AmazonProvidedDNS
- 10.0.0.3 : AWS에서 향후 사용을 위하여 예약
- 10.0.0.255 : 브로드캐스트 주소, VPC에서는 브로드캐스트를 지원하지 않으며, AWS에서 예약
- Subnet의 CIDR은 생성 후 변경할 수 없음
- Application의 고가용성을 위해 복수개의 가용 영역에 Subnet 생성(Multi-AZ 아키텍처)
Subnet 구성 예시
4) Routing
- Main Route Table
- 동일 VPC 내 서로 다른 Subnet의 Resource 간 통신 목적
- Main Route Table 은 VPC 생성 시 자동으로 생성
- VPC 내 모든 Subnet에 암시적으로 적용
- Subnet : Route Table = 1:1
- 삭제 불가
- Custom Route Table
- VPC 외부 리소스와 통신을 위한 Route rule 추가
- 명시적으로 Subnet에 적용
5) 네트워크 트래픽 통제
① Route Table
- Subnet 단위 라우팅 통제
② Network ACL
- Subnet 단위
- Stateless 방화벽
- Allow/Deny
- Rule # ordering
③ Security Group
- 인스턴스 단위
- Stateful 방화벽
- Allow only
Security Group 예시Security Group 구성도 AWS 콘솔에서 Security Group 설정
VPC 확장
Internet 확장
1) VPC Internet Gatewat
- Managed Service
- 확장성, 가용성, 중복성 보장 설계
- VPC 당 Attach 가능한 Internet Gateway : 1개
- VPC 인스턴스와 인터넷 간의 통신
- 1:1 NAT
- 인터넷 구간과 연결하려는 EC2 인스턴스는 Public IP 나 EIP(Elastic IP)를 가져야 함
- Public Subnet의 Routing Table 수정
- IPv4, IPv6 지원
2) VPC NAT Gateway
- AWS 가 완전하게 관리하는 NAT Gateway
- Internet Access가 불가능한 Private Subnet에 있는 인스턴스들의 패치, 업데이트, 다운로드 등을 위해 구성
- 고가용성 및 최대 45Gbps의 대역폭 제공
- Internet facing Interface를 위해 NAT Gateway당 하나의 Elastic IP 필요
- TCP, UDP, ICMP Protocol 지원
- Network ACL을 통하여 트래픽 통제
- VPC Flow Logs를 통해 트래픽 모니터링
- CloudTrail 지원
3) EIP(Elastic IP)
- Account에 할당되어 변경되지 않는 Elastic IP를 할당
- EC2 Instance 장애 시, 다른 EC2 Instance로 EIP를 Re-Associate
- Region 당 기본 5개의 EIP 할당 가능(Soft-Limit)
- Allocation/Release
- Account에 EIP 할당 또는 반납
- Associate/Disassociate
- EC2/NAT GW Instance에 EIP 연결 또는 분리
On-Premise 확장
1) VPN Gateway
- IPSec Site-to-Site VPN 을 통해 고객사 Network과 암호화 터널 구성
- 터널 이중화, TLS 통신
2) AWS Direct Connect
- 전용회선을 통해 고객사와 직접 연결
Other AWS Regions
1) VPC Peering
- 동일 Region 내 VPC 간 완전히 격리된 전용의 연결
- VPC간 하나의 VPC Peering만 제공, VPC간 IP 주소가 중복될 수 없음
- 고가용성 및 트래픽에 대한 수평적 확장 제공
- Routing Table 을 통하여 통제가 가능하고, Transit Routing 은 제공되지 않음
- 전송 중 암호화(Inter Region VPC)
AWS 서비스와 연계
1) VPC Endpoints - Gateway Type
- 인터넷을 경유하지 않고 VPC 내 EC2 인스턴스와 S2, DynamoDB 를 연결
- VPC Endpoint 생성 시 Routing Policy 추가
- 다양한 접근 제어 정책 적용
- Route Table
- VPC Endpoint Policy
- S3 Bucket Policy
- Security Group with Prefic list
2) AWS Private Link VPC Endpoints - Internet Type
- AWS 서비스, 다른 AWS 계정에서 호스팅 된 VPC Endpoint Service 나 AWS Marketplace 파트너 서비스의 VPC를 비공개로 연결
- VPC 내 생성된 VPC endpoint network interface를 이용하므로 서비스 연결 시 IGW, NAT GW, Public IP, DX 불필요
- 사용 사례 : 중앙화된 Internal Services(DB, 로깅, 모니터링), Microservices, Saas
VPC 관리
1) VPC Flow Logs
- VPC, Subnet, EC2 인스턴스 ENI 단위로 적용 가능한 Network Packet 수집
- 생성되는 모든 패킷에 대한 정보를 CloudWatch Logs Group에 기록 (10분에서 15분 지연)
- 수집되지 않는 정보
- Amazon DNS Server 로의 트래픽
- Amazon Windows 라이센스 인증을 위해 Windows 인스턴스에서 생성한 트래픽
- EC2 인스턴스의 Metadata를 위해 169.254.169.254 와의 트래픽
- DHCP 트래픽
- VPC의 Default Router의 예약된 IP 주소로 보내는 트래픽
- AWS 계정과 워크로드를 보호하기 위한 지능형 위협 탐지 및 지속적 모니터링을 위한 Guard Duty에서 사용
- 수집된 로그들은 Amazon Kinesis Firehose + Athena + QuickSight 또는 Elastisearch + kibana 구성으로 분석 가능
728x90
반응형