테일스케일(tailscale)에서 와이어가드(wireguard)로 옮기는 이유

테일스케일(Tailscale)이 초기 설정은 기가 막히게 편하지만, 속도나 지연 시간(Ping)에서 아쉬움을 느끼셔서 와이어가드(WireGuard)로 넘어가시려는 계획은 아주 훌륭한 접근입니다.

사실 테일스케일도 와이어가드를 기반으로 만들어졌지만, 여러 편의 기능을 위해 유저 스페이스에서 구동되고 때로는 중계 서버(DERP)를 거치기 때문에 속도 저하가 발생합니다. 반면 순정 와이어가드는 리눅스 커널단에서 다이렉트로 작동하기 때문에 속도도 훨씬 빠르고 N150의 리소스도 거의 먹지 않습니다.

성공적인 구축을 위해 먼저 짚고 넘어가야 할 현실적인 차이점과 추천 구성을 정리해 드릴게요.

가장 큰 차이는 ‘네트워크 직접 설정’ 여부입니다. 테일스케일은 마법처럼 방화벽을 뚫고 알아서 연결해 주었지만, 순정 와이어가드를 쓰시려면 다음 두 가지를 직접 세팅하셔야 합니다.

  1. DDNS (Dynamic DNS) 설정: 외부에서 집에 있는 공유기의 변동 IP를 찾아올 수 있도록 고정된 주소(예: myhome.iptime.org)가 필요합니다.
  2. 포트포워딩 (Port Forwarding): 외부에서 와이어가드 접속 요청이 들어왔을 때, 공유기가 프록스목스 내부의 와이어가드 머신으로 신호를 넘겨주도록 UDP 포트(기본값: 51820)를 열어주어야 합니다.

순수 CLI(명령어 창)로 와이어가드를 구축하면 나중에 핸드폰이나 노트북 등 새로운 기기를 추가할 때마다 암호화 키를 직접 생성해야 해서 관리가 매우 피곤합니다.

그래서 프록스목스 환경에서는 다음과 같은 구성을 강력히 추천합니다.

  • 설치 위치: 기존 워드프레스 우분투 VM에 섞지 말고, 프록스목스에 아주 가벼운 LXC 컨테이너(Ubuntu)를 새로 하나 생성합니다. (자원 독립 및 관리 용이)
  • 사용 도구: **wg-easy**라는 도커(Docker) 기반 이미지를 사용합니다. 와이어가드 코어에 예쁜 **웹 GUI(관리자 화면)**를 덧붙여 놓은 툴이라, 버튼 클릭 한 번으로 스마트폰 연결용 QR코드를 생성할 수 있어 관리가 테일스케일만큼 쉬워집니다.

전체적인 작업 흐름은 [공유기 포트포워딩] -> [프록스목스 LXC 생성] -> [도커 및 wg-easy 설치] 순서로 진행됩니다.

LXC 환경에 도커로 GUI(wg-easy)를 구축하셔도 순정 명령어(CLI) 방식과 성능 차이는 사실상 ‘0’에 가깝습니다. 망설임 없이 관리하기 편한 GUI 구조(wg-easy)로 가시는 것을 강력히 추천해 드립니다!

커널 단에서의 독립적 작동: wg-easy에서 제공하는 예쁜 웹 화면(GUI)은 단순히 와이어가드의 설정 파일이나 암호화 키를 대신 만들어주는 껍데기 역할만 합니다.

다이렉트 통신: 일단 스마트폰이나 노트북이 와이어가드에 연결되고 나면, 실제 데이터 트래픽은 도커나 GUI를 거치지 않고 리눅스 커널(심장부)에서 다이렉트로 쌩쌩하게 처리됩니다.

댓글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다