Tailscale + Mullvad Exit Node 세팅 가이드

Tailscale과 Mullvad VPN을 연동하여 프라이버시 보호 인터넷 브라우징 환경을 구축하는 방법을 설명합니다.


개요

Tailscale은 Mullvad와 파트너십을 맺어 Mullvad의 전 세계 VPN 서버를 Tailscale의 exit node로 사용할 수 있게 했습니다. 이를 통해 다음이 가능합니다.

  • 집이나 외출 중 인터넷을 안전하고 프라이빗하게 브라우징
  • 공용 Wi-Fi에서 도청 방지
  • 전 세계 특정 지역을 통한 인터넷 접속
  • 비표준 포트 트래픽을 Mullvad 네트워크 엣지를 통해 전달

Tailscale vs Mullvad — 무엇이 다른가?

구분TailscaleMullvad
역할기기 간 연결 (개인 사설 인터넷)인터넷 익명 브라우징
목적내가 소유한 서비스/기기에 안전하게 접근광고주, ISP, 위협 행위자로부터 보호
암호화end-to-end WireGuard 암호화WireGuard 기반 트래픽 마스킹

두 서비스를 함께 사용하면 Tailscale의 강력한 암호화 + Mullvad의 익명 브라우징을 동시에 누릴 수 있습니다.


요구 사항 및 제한 사항

  • Tailscale v1.48.2 이상 필요 (현재 베타 기능)
  • Mullvad VPN 애드온을 별도로 구매해야 함
  • 아래 기능과는 호환되지 않음:
    • 커스텀 DERP 서버
    • Google-synced 그룹을 이용한 ACL 정책
  • Windows 클라이언트에서는 전체 Mullvad exit node 목록을 UI에서 볼 수 없음 (CLI 사용 필요)
  • Admin console과 tailnet policy file 중 하나로만 Mullvad 접근을 관리해야 함

라이선스 및 요금

  • 기본 애드온: 5개 디바이스 슬롯 포함
  • 가격: 디바이스 5개당 월 $5
  • 이용 가능 플랜:
    • Personal Pro / GitHub Community: 월간 또는 연간 구독 가능
    • Personal / Standard / Premium: 월간 구독만 가능
    • Enterprise: 계정 팀에 별도 문의

Step 1. Mullvad 애드온 활성화

  1. Tailscale Admin ConsoleGeneral 설정 페이지로 이동
  2. Mullvad VPN 섹션까지 스크롤
  3. Configure 버튼 클릭
  4. 결제 플로우를 따라 Mullvad 라이선스 구매

GitOps 사용자 주의: tailnet policy file로 관리 중인 경우 결제 플로우가 잠길 수 있습니다. 이 경우 Billing 페이지 → Manage add-ons에서 라이선스를 구매하세요.


Step 2. 디바이스에 Mullvad 접근 권한 부여

두 가지 방법 중 하나를 선택하세요. 혼용은 불가합니다.

방법 A: Admin Console (UI)

  1. General 설정 → Mullvad VPNConfigure
  2. Add devices 클릭
  3. Mullvad를 사용할 디바이스 선택 후 저장

디바이스 1개당 라이선스 슬롯 1개를 사용합니다. 디바이스를 추가/제거하면 청구 금액이 자동으로 조정됩니다.

방법 B: Tailnet Policy File (ACL)

Admin Console → Access controls 페이지에서 nodeAttrs 섹션을 추가합니다.

특정 사용자에게 부여:

"nodeAttrs": [
  {
    "target": ["joe@example.com"],
    "attr": [
      "mullvad"
    ]
  }
]

그룹 단위로 부여 (라이선스 풀 공유):

"nodeAttrs": [
  {
    "target": ["group:mullvad"],
    "attr": [
      "mullvad"
    ]
  }
]

라이선스 풀 공유 시 주의사항:
디바이스가 tailnet에 접속하는 순간 라이선스가 선착순으로 할당됩니다 (Mullvad 서버에 연결하는 시점이 아님). 구매한 슬롯이 모두 사용 중이면 이후 디바이스는 Mullvad exit node를 사용할 수 없습니다.


Step 3. Mullvad Exit Node 사용하기

디바이스에 Mullvad 접근 권한이 부여된 후, 각 디바이스에서 개별적으로 exit node를 활성화해야 합니다.
처음 사용 시 또는 몇 주간 미사용 후 재사용 시 동기화에 최대 2분 정도 소요될 수 있습니다.

Android / iOS

  1. 메뉴(⋯) → Use exit node 선택
  2. 원하는 Mullvad exit node 선택
  3. (선택) 로컬 네트워크 접근 허용 시 Allow LAN access 체크

macOS

  1. 메뉴바의 Tailscale 아이콘 클릭
  2. Use exit node → Mullvad 서버 선택

Windows

Windows UI에서는 전체 목록이 표시되지 않습니다. CLI를 사용하세요.

Linux (CLI)

# 사용 가능한 Mullvad exit node 목록 확인
tailscale exit-node list

# exit node 설정
tailscale set --exit-node=<mullvad-exit-node-hostname>

# exit node 해제
tailscale set --exit-node=

Apple TV (tvOS)

설정 앱 → Tailscale → Use exit node에서 Mullvad 서버 선택


DNS 설정 (중요)

Tailscale v1.48.3 이상은 추가 DNS 설정이 필요 없습니다.

v1.48.1 ~ v1.48.2를 사용 중이라면 아래 중 하나를 설정해야 합니다.

옵션 1: Allow local network access 활성화

  • exit node 사용 시 Allow LAN access를 활성화하면 로컬 DNS를 계속 사용할 수 있습니다.
  • 단, DNS 리크가 발생할 수 있습니다.

옵션 2: 글로벌 네임서버 설정 (권장)

  • Admin Console → DNS 설정에서 Mullvad의 Public DNS를 글로벌 네임서버로 추가
  • Override DNS servers 활성화
  • mullvad.net/check에서 DNS 리크 없음을 확인할 수 있습니다.

Mullvad 사용 해제

특정 디바이스 접근 권한 제거 (Admin Console)

  1. GeneralMullvad VPNConfigure
  2. 해당 디바이스 옆 RemoveSave

Tailnet Policy File에서 제거

nodeAttrs에서 해당 사용자 또는 그룹의 mullvad 속성을 제거합니다.

애드온 완전 제거

  1. Billing 페이지 → Manage add-ons
  2. Mullvad VPNRemove add-on

기존 Mullvad 앱에서 마이그레이션하는 경우

Mullvad 단독 앱을 사용하다가 Tailscale 연동으로 전환하는 경우:

  1. Mullvad VPN 앱 실행
  2. Mullvad VPN 비활성화
  3. Block connections without VPN 설정 끄기

이후 Tailscale에서 Mullvad exit node를 정상적으로 사용할 수 있습니다.


Tailnet Lock 사용 시: Mullvad Exit Node 서명

Tailnet Lock을 사용하는 경우 각 Mullvad exit node에 서명이 필요합니다. 서명하는 디바이스에도 유효한 Mullvad 라이선스가 있어야 합니다.

단일 exit node 서명:

# jq 설치 필요

# 1. Mullvad exit node의 NodeKey 확인
tailscale lock status --json | jq '[.FilteredPeers[] | select(.DNSName | contains("mullvad.ts.net")) | {DNSName, NodeKey: .NodeKey}] | sort_by(.DNSName)'

# 2. 서명
tailscale lock sign nodekey <nodekey-of-exit-node>

여러 exit node 자동 서명 (스크립트):

Linux, macOS, Windows에서 사용 가능한 자동화 스크립트:
github.com/tailscale-support/mullvad-script

특정 국가 코드(두 글자) 또는 ..(마침표 두 개)를 입력해 전체 노드를 서명할 수 있습니다.


프라이버시 및 익명성 참고 사항

항목내용
Tailscale이 아는 정보사용자 신원, 어떤 Mullvad 서버에 연결했는지
Mullvad가 아는 정보어떤 기기가 연결됐는지만 (사용자 신원은 전달되지 않음)
트래픽 내용WireGuard end-to-end 암호화로 Tailscale도 볼 수 없음

완전한 익명성이 필요한 경우 EFF의 Surveillance Self-Defense 가이드를 참고하세요.


관련 링크