본문 바로가기
Azure/Network

Azure VPN Gateway - 다중 홉 BGP 비활성화 S2S VPN Gateway 구성 방법

by Shuaaaa 2023. 10. 31.

이전글 ▶ Part 2 = Azure VPN Gateway 상에서 BGP를 활성화 하였을 때와 활성화를 안했을 때의 테스트 내역 공유

이번글 ▶ Part 3 = 다중 홉, BGP 비활성화하여 S2S VPN으로만 어떻게 구성하는지!

 

Part 2에 확인한 MS 공식 문서에서는,

아래와 같은 컨텍스트에서 하나의 홉을 거쳐서 맨 왼쪽과 맨 오른쪽이 통신해야 할 때, 중간 Site에서 "Transit 라우팅"을 가능케 하기 위하여 BGP를 모두 활성화 하는 것을 권고하고 있습니다.

즉, Site A - B - C 가 일자 형태로 있어서 Site B에서 허브의 역할이 필요할 경우 아래와 같이 구성합니다.

https://learn.microsoft.com/ko-kr/azure/vpn-gateway/bgp-howto

MS Scenario

하지만... 아래와 같이 BGP를 활성하지 못하는 상황도 존재합니다.

  • 보안 요구사항으로 BGP를 활성화 하지 못하는 곳
  • 이미 BGP 활성화 하지 않고 UDR로 모든 라우팅 테이블을 이미 세팅해 둔 곳
  • BGP 지원을 하지 않는 VPN 장비 사용

이 때, Site A - B - C 형식으로 BGP 활성화 하지 않고 VPN을 구성해야 한다면 어떻게 해야할까요?

즉 BGP를 활성화 하지 않고도, Site A와 Site C간의 트래픽이 어떻게 전달될 수 있을까요?

아래와 구성도와 같이 구성을 해보겠습니다.

PPT로 작성이 어려워... 그냥 그려봤습니다...ㅎ

일단 VPN "Gateway"라는 개념을 생각해볼때 "문"의 개념으로 봐야합니다.

VPN Gateway = 트래픽의 문을 열어준다 의 개념으로 보면, Virtual Network Gateway (VPN 장비)Local Network Gateway (문 너머의 정보)는 동일한 위치/지역에 있습니다. 하나의 문을 생성한다면 문은 한곳에 존재하니까요.

그래서 위에 lgw를 빨간색 문같이 표시해두었습니다.

 

다음으로는, vgw + lgw를 통해서 1~4같은 "connection"이 만들어져야 합니다.

  • (1) vgw A + lgw A
  • (2) vgw B + lgw BtoA
  • (3) vgw B + lgw BtoC
  • (4) vgw C + lgw C

VPN 장비와 같은 "vgw"와 장비가 연결하고자 하는 문 너머의 정보 "lgw"의 조합으로 "connection이 만들어집니다.

이때 중요한 것은 하나의 홉(Site B)을 추가로 중간에 보유하고 있는 Site A와 Site C의 연결입니다.

  • (1)에서의 lgw A는 Site B 뿐만이 아닌 Site C의 Private IP 대역대를 가져야 합니다.
  • (4)에서도 동일하게 lgw C는 Site B 뿐만이 아닌 Site A의 Private IP 대역대를 가져야 합니다.

다시 정리하자면... 아래의 Private IP 대역대를 lgw에 등록해줘야 합니다.

  • (1) vgw A + lgw A (10.2.0.0/16, 10.3.0.0/16)
  • (2) vgw B + lgw BtoA (10.1.0.0/16)
  • (3) vgw B + lgw BtoC (10.3.0.0/16)
  • (4) vgw C + lgw C (10.1.0.0/16, 10.2.0.0/16)

여기서! 저의 개인적인 의문은...

(1) vgw A + lgw A (10.2.0.0/16) 이렇게 하고...

Site A의 Subnet에다가 UDR을 통하여 10.3.0.0/16의 next hop = virtual network gateway (vgw B)로 설정해도 동일하지 않을까? 라고 생각했는데,,,

MS 공식적인 답변은 안된다! 였습니다.

  1. UDR 설정 시 동일 Virtual Network의 다른 Subnet으로 트래픽 지정할 수 있습니다.
    제가 시도한 방식은 아예 다른 Virtual Network (Site C)를 지정하였기 때문에 UDR로 되지 않습니다.
    참고로 Azure Vitual Network에서는 하나의 Virtual Network Gateway만 만들 수 있습니다. 제 시나리오에서는 3개의 Virtual Network Gateway가 존재하니까, 3개의 Virtual Network가 따로 있는 것 입니다!
  2. VPN Gateway간의 통신은 UDR 방식과 원초적으로 다릅니다. VPN간 협상 및 인증 과정이 필요하기 때문에, 단순히 트래픽의 Next Hop를 VGW로 설정한다고 해결되지 않습니다.
    그래서 UDR이 아니라, 애초에 lgw에 명시를 꼭 해줘야 하는 부분입니다.

앞으로도 계속 이러한 VPN 시나리오에 대해서 작성 예정입니다~

감사합니다!

 

 

 

댓글