VLAN 및 VPC는 퍼블릭 클라우드에서 인프라를 보호하는 데 사용하는 네트워크 격리 방법입니다. 네트워크의 공격 노출 영역을 크게 줄임으로써 보안을 강화하는 동시에 공용 인터넷 액세스 유무에 관계없이 응용 프로그램 계층을 세분화할 수 있는 기능을 제공합니다. 오늘은 Linode를 사용하여 여러 지역에 걸쳐 개인 네트워크를 확장하고 더 크게 생각해 봅시다.
"지역"에 대해 이야기 할 때 우리는 동일한 클라우드 제공 업체 내의 별개의 지리적 영역을 언급합니다. "영역"은 일반적으로 해당 지리적 지역 내의 추가 호스팅 위치입니다. 예를 들어 뉴욕 근처에 기반을 둔 북동부 지역과 애틀랜타의 남동부 지역이 표시될 수 있으며, 각 지역에는 여러 영역이 포함되어 있습니다.
더 많은 사용자와 물리적으로 더 가까워져 대기 시간을 단축할 뿐만 아니라 다중 지역 응용 프로그램을 실행하면 안정성과 내결함성이 크게 향상됩니다. 하드웨어 오류 또는 로컬 네트워크 중단을 포함하여 한 위치의 워크로드에 영향을 줄 수 있는 모든 작업은 사용자를 다시 라우팅할 다른 위치를 보유함으로써 잠재적으로 완화될 수 있습니다.
다중 지역 VLAN 배포
여러 지역에 배포된 VLAN 세그먼트를 라우팅하려면 가상 사설망(VPN)을 사용하여 VLAN 세그먼트를 하나로 묶을 수 있습니다.
먼저, 공통 라우터 역할을 하는 리노드를 사용하여 단일 리전에 배포된 모든 관련 VLAN을 하나로 묶습니다. 각 VLAN 세그먼트는 자체적으로 격리된 레이어 2 도메인이며 레이어 3 서브넷 내에서 작동합니다. 다양한 VLAN 세그먼트 간의 모든 트래픽은 라우터를 통해 흐르며, 라우터 내에 방화벽 규칙을 배치하여 여러 세그먼트 간에 통과할 수 있는 트래픽을 관리할 수 있습니다.
![](https://www.linode.com/wp-content/uploads/2022/09/chart1@2x-1064x623.png)
그런 다음 공용 인터넷과 WireGuard 와 같은 VPN 소프트웨어 또는 IPSec과 같은 프로토콜을 사용하여 다른 네트워크 세그먼트 간의 트래픽을 브리지하도록 이 라우터 인스턴스를 구성할 수 있습니다.
![](https://www.linode.com/wp-content/uploads/2022/09/chart2@2x-1064x585.png)
위의 예제에서는 두 지역 배포를 보여 줍니다. 각 지역은 라우터 인스턴스를 통해 격리된 두 VLAN 간의 연결을 관리할 책임이 있습니다. 그런 다음 각 라우터는 여러 인터페이스로 구성하는 Linode 라우터 인스턴스를 사용하여 여러 영역을 로컬로 브리지할 수 있습니다. 라우터는 공용 인터넷을 통해 각 지역으로 WireGuard 터널을 사용하여 지역에 걸쳐 있습니다.
NAT 종료점 구성
이제 지역에 관계없이 모든 VLAN 사이로 트래픽이 이동할 수 있습니다. 또한 라우터 인스턴스를 로컬 인터넷 연결 없이 배포하는 경우 라우터 인스턴스를 로컬 VLAN에 인터넷 연결을 제공하는 NAT(네트워크 주소 변환) 출구 지점으로 사용할 수 있습니다. 이 구성에서는 로컬 라우터 인스턴스가 기본 게이트웨이로 지정됩니다(즉, 일반적으로 10.0.0.0/24 네트워크에서 10.0.0.1로 구성됨). 또한 라우터 인스턴스를 보안 소켓 셸(SSH) 관리 요새로 사용할 수도 있습니다.
이러한 종류의 NAT 구성을 구현하는 일반적인 방법은 방화벽 규칙을 사용하여 이 표시 없이 검색된 트래픽에 대해 WireGuard 트래픽 및 IP를 가장하는 것으로 표시하는 것입니다.
예를 들어, 라우터는 iptables 규칙을 사용하도록 구성됩니다.
iptables -t nat -A POSTROUTING -o eth0 -m mark! --마크 42 -j 마스 퀘레이드
구성 내에서 방화벽 마크(예: 42)를 사용하도록 WireGuard를 구성할 수 있습니다. 이 구성은 모든 VLAN 트래픽이 NAT 처리되는 동안 WireGuard 트래픽이 NAT 처리되지 않도록 합니다.
그런 다음 라우팅 노드 간의 WireGuard 통신을 허용하도록 클라우드 방화벽 규칙이 구성됩니다(일반적으로 udp/51820).
그런 다음 필요에 따라 로컬 및 글로벌 세그먼트의 트래픽 흐름을 제어하거나 기록하도록 방화벽 규칙을 사용하여 라우터 인스턴스를 구성할 수 있습니다.
고려 사항
이 예시의 배포에서는 여러 지역에 걸쳐 전 세계적으로 데이터를 공유할 수 있으며 라우터 인스턴스가 다양한 VLAN 세그먼트 간의 트래픽 흐름을 제어할 수 있습니다. 여러 VLAN 세그먼트의 트래픽을 단일 집계 지점으로 퍼널링할 때는 성능 및 대역폭 고려 사항을 이해하는 것이 중요합니다. 성능은 라우터에 할당된 컴퓨팅 리소스에 의해 부과되는 업로드 대역폭 제한에 따라 결정됩니다.
VPN 프로토콜을 신중하게 고려하여 배포 요구 사항을 충족하는지 확인하는 것도 중요합니다. 선택한 기술은 지점 간 대역폭과 공용 인터넷을 통해 전송되는 트래픽의 보안에 큰 영향을 미칩니다. 예를 들어, WireGuard는 암호화 를 사용하여 트래픽을 가로채지 않고 악용 및 노출을 제한하기 위해 strongSwan과 같은 IPsec 구현과 비교할 때 신뢰할 수 있는 컴퓨팅 기반이 더 작도록 합니다.
Multicloud
여러 지역에 걸쳐 사용하는 것과 동일한 종류의 기술을 다양한 클라우드 공급자에 걸쳐 구현할 수 있습니다. 예를 들어 라우터 인스턴스를 다른 클라우드 서비스 공급자의 네트워크 경계 내에 배치하고 로컬 클라우드 공급자별 VPC 구성에 연결할 수 있습니다. 라우터 인스턴스 간에 WireGuard 터널을 사용하여 클라우드 공급자 네트워크로 브리지할 수 있습니다. 이 구현은 개인 네트워크에서만 격리 상태로 유지되도록 설계된 서비스에 적합합니다.
다음 단계
궁극적으로, 우리의 개인 네트워크를 설계 할 때 함께 작업 할 수있는 다양한 도구가 많이 있으며 이점은 추가 된 복잡성보다 훨씬 클 수 있습니다. 응용 프로그램이 사용자 기반과 함께 증가하는 경우 더 많은 수의 개인에 대한 대기 시간을 줄이도록 환경을 설계하면 사용자 환경에 큰 영향을 줄 수 있습니다. 추가적인 내결함성은 신뢰성을 높이고 소프트웨어를 사용 가능하고 액세스 가능하게 유지합니다.
내용