NetBird vs Tailscale 비교: 어떤 메쉬 VPN을 선택할까
두 서비스 모두 WireGuard 기반이지만 컨트롤 플레인 운영 방식과 오픈 소스 여부에서 차이가 납니다. 직접 서버를 구축해야 하는 환경인지, 관리형 서비스가 필요한지에 따라 적합한 도구를 선택하는 기준과 기술적 차이점을 상세히 비교합니다.
NetBird와 Tailscale: 요약
NetBird와 Tailscale 중 무엇을 선택할지는 컨트롤 플레인에 대한 결정입니다. 두 메쉬 VPN 모두 WireGuard를 사용하여 패킷을 전송하기 때문입니다. Tailscale은 사용자를 대신해 코디네이션 서버를 운영하며, 해당 서버는 비공개 소스입니다. NetBird도 동일한 방식의 호스팅 서비스를 제공합니다. 하지만 NetBird는 관리 서버를 오픈 라이선스로 공개하므로, 사용자가 직접 하나의 VPS에서 전체 시스템을 운영할 수 있습니다. 서버를 운영할 인력이 없다면 Tailscale을 선택하십시오. 컨트롤 플레인 자체를 직접 제어하는 하드웨어에서 실행해야 한다면 NetBird를 선택하십시오.
두 가지 이상의 도구를 비교 중이라면 Tailscale 대안 목록 전체부터 확인하십시오. 아래 섹션에서는 두 도구가 실질적으로 차이를 보이는 네 가지 지점을 직접 비교합니다.
공통점: 기반 기술로서의 WireGuard
메시 VPN(가상 사설망)은 모든 장치를 서로 직접 연결합니다. 트래픽은 중앙 게이트웨이를 거치지 않습니다. 두 도구 모두 모든 장치에 WireGuard 키 쌍을 부여합니다. 개인 키는 장치에서 생성되며 외부로 유출되지 않습니다. 두 도구 모두 두 피어 사이에 직접 터널을 구축하려고 시도합니다. 직접 경로가 실패할 때만 릴레이를 사용합니다.
즉, 전송 구간의 암호화는 두 제품 모두 동일한 프로토콜을 사용합니다. 어떤 시스템의 릴레이든 개인 키를 보유하지 않으므로 복호화할 수 없는 WireGuard 패킷을 전달할 뿐입니다. 제어 평면이 전혀 없는 기본 상태에 대해서는 Tailscale이 순수 WireGuard 위에 추가하는 기능을 읽어 보십시오.
데이터 경로에는 한 가지 차이점이 있습니다. Tailscale은 wireguard-go를 통해 사용자 공간(userspace)에서 WireGuard를 실행합니다. NetBird README는 Linux에서 커널 WireGuard를 사용한다고 명시합니다. 이 점 하나만으로 선택하지 마십시오. 직접 사용하는 VPS에서 터널을 통해 iperf3을 실행해 보십시오. 성능 제한은 대개 CPU, 대역폭 허용량 또는 피어 간 네트워크 경로에서 먼저 발생합니다.
컨트롤 플레인은 누가 운영합니까?
컨트롤 플레인은 모든 장치의 공개 키와 터널 주소를 알고 있는 서버입니다. 이 서버는 각 장치에 어떤 피어가 존재하는지, 어떤 피어에 접근할 수 있는지 알려줍니다. 사용자의 트래픽은 이 서버를 거치지 않습니다.
Tailscale. 조정 서버는 오픈 소스가 아닙니다. Tailscale이 호스팅하는 서비스로만 운영됩니다. 클라이언트는 오픈 소스이며, 모든 플랫폼의 핵심 데몬과 Linux 및 Android 클라이언트 전체가 이에 해당합니다. Windows와 macOS용 그래픽 앱은 비공개입니다. Tailscale의 릴레이 서버인 DERP의 코드는 공개되어 있습니다. 자체 서버에서 Tailscale 호환 컨트롤 플레인이 필요하다면 Headscale을 선택할 수 있습니다. Tailscale은 이를 독립적인 커뮤니티 유지 관리 프로젝트로 설명하며, 직접 관여하지 않습니다. 설정 방법은 Headscale을 자체 호스팅 Tailscale 컨트롤 서버로 운영하기에서 다룹니다.
NetBird. app.netbird.io에서 호스팅되는 클라우드가 있으며, 동일한 코드가 GitHub에 공개되어 있어 직접 실행할 수 있습니다. 2026년 10월 기준으로 저장소의 README 파일에 라이선스가 명시되어 있습니다. 클라이언트와 저장소의 대부분은 BSD-3-Clause 라이선스를 따릅니다. management/, signal/ 및 relay/ 디렉터리는 AGPLv3(GNU Affero General Public License, version 3)를 따릅니다. AGPL은 한 가지 조건을 추가합니다. 해당 서버를 수정하여 네트워크를 통해 다른 사람들이 사용하게 할 경우, 수정된 소스 코드를 해당 사용자들에게 제공해야 합니다.
NetBird 서버 측은 세 부분으로 구성됩니다. management 서비스는 피어 키, IP 주소 할당, 접근 제어 및 DNS 설정과 같은 네트워크 상태를 유지합니다. signal 서비스는 두 피어가 연결 후보를 교환하도록 돕습니다. 이 메시지들은 피어 간에 암호화되므로 signal 서비스는 내용을 읽을 수 없습니다. relay 서비스는 직접적인 경로가 존재하지 않을 때 트래픽을 전달합니다.
각 제품에서 접근 규칙은 어떻게 작성합니까?
두 제품 모두 기본적으로 모든 통신을 허용하는 규칙으로 새 네트워크를 시작합니다. 규칙을 변경하기 전까지는 모든 장치가 서로 통신할 수 있습니다. 중요한 데이터를 담은 서버를 추가하기 전에 반드시 해당 규칙을 교체하십시오.
Tailscale: 단일 정책 파일
Tailscale은 모든 접근 규칙을 tailnet 정책 파일에 보관합니다. 이 파일은 HuJSON(human JSON) 형식이며, 주석과 후행 쉼표를 허용하는 JSON입니다. 관리 콘솔에서 직접 편집하거나 API를 통해 푸시할 수 있습니다. 현재 규칙은 grants와 같이 작성됩니다. 이 파일은 특정 그룹이 태그가 지정된 프로덕션 서버에 SSH 및 HTTPS로만 접근하도록 허용합니다. 또한 테스트 항목도 포함되어 있습니다:
{
"groups": {
"group:engineering": ["alice@example.com", "bob@example.com"]
},
"tagOwners": {
"tag:production": ["group:engineering"]
},
"grants": [
{
"src": ["group:engineering"],
"dst": ["tag:production"],
"ip": ["tcp:22", "tcp:443"]
}
],
"tests": [
{
"src": "alice@example.com",
"accept": ["tag:production:22"]
}
]
}tests 섹션이 중요합니다. 이 섹션의 단언문은 정책 파일이 변경될 때마다 검사 항목으로 실행되므로, 잘못된 편집이 적용되기 전에 차단됩니다. 새 tailnet의 기본 정책은 "src": ["*"]와 "dst": ["*:*"]을 포함한 단일 acls 항목입니다. acls 필드를 완전히 생략하는 것 역시 모든 통신을 허용한다는 의미입니다. 권한 부여 설정을 마친 후에는 해당 항목을 삭제하십시오. 2026년 10월 기준으로 무료 Personal 플랜은 3개의 ACL 그룹을 제공합니다.
NetBird: 대시보드의 그룹 및 정책
NetBird는 그룹(groups)과 정책(policies)을 통해 접근 제어를 구성합니다. 그룹은 피어의 집합입니다. 피어는 수동으로 추가하거나, 설정 키(setup key)에 연결된 그룹을 통하거나, ID 공급자(identity provider)의 사용자 그룹에서 가져와 추가할 수 있습니다. 정책은 소스 그룹과 대상 그룹을 지정합니다. 정책은 단방향 또는 양방향으로 설정할 수 있습니다. 또한 프로토콜과 포트를 제한할 수 있으며, 포트 범위는 8000-9000과 같이 작성합니다. 정책에는 상태 검사(posture check)를 포함할 수도 있습니다. 상태 검사는 연결이 허용되기 전에 피어가 충족해야 하는 조건입니다.
이 모든 설정은 대시보드에서 수행합니다. 새 계정은 모든 피어가 서로 통신할 수 있도록 허용하는 Default라는 정책과 함께 제공됩니다. 먼저 사용자 정의 정책을 추가한 다음 Default을 비활성화하십시오. 규칙을 텍스트 형태로 관리하려면 NetBird의 공개 REST API를 사용하십시오. 또한 NetBird Cloud와 자체 호스팅 관리 서버 모두에서 작동하는 공식 Terraform 프로바이더(netbirdio/netbird)도 제공됩니다. NetBird 접근 제어 문서에는 Tailscale의 tests 섹션과 같은 내장 테스트 단언문은 기술되어 있지 않습니다. Terraform을 사용하는 경우, 계획(plan) 출력 결과를 검토하여 확인하십시오.
직접 연결 경로가 없을 때 트래픽은 어떻게 중계되는가?
두 도구 모두 먼저 직접 연결을 시도합니다. 각 피어의 공인 주소를 파악하기 위해 STUN(session traversal utilities for NAT)을 사용합니다. 그런 다음 양쪽의 NAT(network address translation)를 통과하는 경로를 열려고 시도합니다. 엄격한 방화벽과 일부 모바일 네트워크는 이를 차단하므로, 두 도구 모두 대체 경로가 필요합니다.
Tailscale은 DERP(designated encrypted relay for packets) 서버를 대체 경로로 사용합니다. Tailscale은 여러 지역에서 이 서버를 운영하며, 트래픽은 HTTPS를 통해 전달됩니다. 추가 비용은 발생하지 않습니다. Tailscale에는 피어 릴레이(peer relay) 기능도 있습니다. 피어 릴레이는 사용자의 기기 중 하나가 릴레이 역할을 수행하는 것이며, Tailscale은 DERP보다 이를 먼저 시도합니다. Tailscale 문서에서는 DERP보다 낮은 지연 시간과 높은 처리량이 필요할 때 피어 릴레이를 선택하도록 안내합니다. 피어 릴레이는 2026년 2월 18일부터 무료 플랜을 포함한 모든 플랜에서 정식으로 사용할 수 있게 되었습니다. 원하는 UDP 포트를 사용하여 기능을 켜고, 정책 파일에서 권한을 부여하면 됩니다:
sudo tailscale set --relay-server-port=40000연결이 어떤 경로를 사용하는지 확인하려면 피어를 대상으로 tailscale ping을 실행합니다. via DERP(fra)라고 표시되면 릴레이된 연결입니다. IP 주소와 포트가 표시되면 직접 연결된 것입니다. 연결이 계속 릴레이 상태로 유지된다면, Tailscale 릴레이 연결이 느린 이유와 직접 연결을 설정하는 방법에서 원인을 확인하십시오.
NetBird는 이전 릴리스에서 coturn TURN 서버를 통해 트래픽을 중계했습니다. 0.29.0 버전부터 도입된 NetBird Relay가 릴레이 연결을 위해 coturn을 대체했습니다. 이 릴레이는 /relay 경로의 WebSocket 연결이나 UDP 포트 33080의 QUIC을 허용합니다. 현재 지침에 따라 STUN 기능도 릴레이 서비스로 통합되었습니다. NetBird Cloud에서는 NetBird가 릴레이를 운영합니다. 자체 호스팅 서버를 사용하는 경우 사용자가 직접 릴레이를 운영해야 합니다. 릴레이되는 모든 바이트는 VPS 대역폭 사용량에 포함되며, 모든 릴레이 경로는 해당 VPS의 위치를 거쳐 갑니다. 각 피어의 경로는 다음 명령으로 확인합니다:
netbird status -d각 피어는 연결 유형을 P2P(직접) 또는 Relayed(릴레이)으로 표시합니다.
하나의 VPS에서 NetBird를 셀프 호스팅하려면 무엇이 필요한가?
공식 퀵스타트 스크립트는 서버 측 전체를 하나의 스크립트로 구성합니다. 2026년 10월 기준으로 최소 1개의 CPU와 2 GB의 메모리를 갖춘 Linux 머신이 필요합니다. 또한 해당 VPS로 연결되는 공인 도메인 이름과 Docker(compose 플러그인 포함), jq, curl가 필요합니다. VPS 방화벽에서 TCP 80, TCP 443, UDP 3478 포트를 개방하십시오. 대부분의 클라우드 제공업체 제어판에서 별도로 관리되는 네트워크 방화벽에서도 해당 포트를 개방해야 합니다.
export NETBIRD_DOMAIN=netbird.example.com; curl -fsSL https://github.com/netbirdio/netbird/releases/latest/download/getting-started.sh | bash이 스크립트는 다음 네 가지 유형의 서비스를 배포합니다.
- Traefik: Let's Encrypt의 TLS(transport layer security) 인증서를 사용하는 리버스 프록시입니다.
- 내장 Dex 서버: ID 공급자 역할을 하며, 외부 로그인 시스템 없이 대시보드에서 사용자를 생성할 수 있게 합니다.
- 관리, 신호 및 릴레이 서비스: 위에서 설명한 핵심 서비스입니다.
- 선택적 추가 기능: NetBird Proxy 서비스 및 CrowdSec IP 평판 필터링입니다.
이제 각 구성 요소를 직접 운영해야 합니다. ID 공급자는 누가 로그인하여 장치를 추가할 수 있는지 결정합니다. 소규모 팀의 경우 Dex만으로도 충분합니다. 나중에 자체 호스팅된 Authentik SSO 서버와 같은 외부 싱글 사인온(SSO) 공급자를 연결할 수 있습니다. TLS는 순서가 중요합니다. Let's Encrypt는 이 VPS에 연결하여 도메인을 검증하므로, 스크립트를 실행하기 전에 DNS 레코드를 생성하고 포트를 개방하십시오. 도메인이 아직 VPS로 연결되지 않은 상태라면 검증에 실패하여 인증서가 발급되지 않습니다. 백업과 업그레이드 역시 직접 관리해야 합니다. 각 단계별 확인을 포함한 전체 설치 과정은 NetBird VPN 서버 셀프 호스팅 가이드에서 확인할 수 있습니다.
각 서비스에 Linux 서버 등록하기
메시 네트워크에 참여하려면 제어 평면(control plane)에 대한 아웃바운드 네트워크 접근이 필요하므로, 해당 명령어를 본인의 머신에서 실행하십시오. 서버에는 브라우저가 없으므로, 두 도구 모두 대화형 로그인 대신 사전에 생성한 키를 사용합니다.
관리자 콘솔에서 발급받은 인증 키를 사용하는 Tailscale의 경우:
curl -fsSL https://tailscale.com/install.sh | sh
sudo tailscale up --auth-key=YOUR_AUTH_KEY
tailscale statustailscale status 명령을 실행하면 이 머신이 100.x.y.z 주소와 함께 표시되며, tailnet 내의 다른 장치들도 확인할 수 있습니다. 만료 기한을 설정하지 않은 인증 키는 최대 기간인 90일 후에 만료됩니다. 이미 등록된 서버는 계속 등록 상태를 유지합니다. 새로운 서버를 등록하는 스크립트에는 항상 새로운 키가 필요합니다.
대시보드에서 발급받은 설정 키를 사용하는 NetBird의 경우:
curl -fsSL https://pkgs.netbird.io/install.sh | sh
netbird up --setup-key YOUR_SETUP_KEY
netbird status자체 호스팅 서버의 경우, netbird up 라인에 --management-url https://netbird.example.com를 추가하십시오. 이를 추가하지 않으면 클라이언트가 NetBird Cloud에 연결을 시도하며, 자체 서버에서 생성한 설정 키를 인식하지 못합니다. netbird status 명령을 실행하면 관리 및 신호 서비스가 연결된 상태로 보고되어야 합니다.
2026년 10월 기준 무료 플랜 및 가격
이 수치는 2026년 10월 2일 기준 두 개의 가격 페이지에서 가져온 정보입니다. 가격은 변동될 수 있으므로 결제 전 다시 확인하십시오.
Tailscale Personal은 최대 6명의 사용자와 무제한 사용자 기기를 무료로 지원합니다. 여기에는 50개의 태그된 리소스(개인이 아닌 태그에 속한 서버)와 3개의 ACL 그룹이 포함됩니다. 유료 플랜은 사용자당 월 8달러인 Standard와 월 18달러인 Premium이 있습니다. Enterprise 가격은 별도 문의가 필요합니다. 가정이나 소규모 팀이 실제로 지불하는 Tailscale 비용에 대한 상세 분석에서 예외적인 경우를 확인할 수 있습니다.
NetBird Cloud는 최대 5명의 사용자와 100대의 기기까지 무료입니다. Team 플랜은 사용자당 월 6유로, Business 플랜은 월 12유로입니다. Enterprise 가격은 별도 문의가 필요합니다. 유료 플랜에는 100대의 기기와 사용자당 10대의 기기가 추가로 포함되며, 기기를 추가할 때마다 월 0.50유로가 부과됩니다. Self-hosted NetBird는 라이선스 비용이 없습니다. 사용자는 VPS 비용과 운영에 소요되는 시간을 부담합니다.
다음과 같은 경우 Tailscale을 선택하십시오.
- 팀 내 누구도 제어 서버를 운영, 패치, 백업하고 싶어 하지 않는 경우.
- 접근 규칙을 하나의 텍스트 파일로 관리하고, 변경 사항을 적용하기 전에 테스트를 통해 오류를 방지하고 싶은 경우.
- 사용자가 이동이 잦고 호텔이나 모바일 네트워크에서 접속하는 경우. Tailscale의 여러 지역 DERP 서버가 별도의 설정 없이도 가까운 곳에서 대체 경로를 제공합니다.
- 그룹이 6인 무료 플랜에 적합하거나, 사용자당 가격이 수용 가능한 경우.
다음과 같은 경우 NetBird를 선택하십시오.
- 컨트롤 플레인을 직접 소유한 인프라에서 실행해야 하며, 별도의 재구현체가 아닌 공식 프로젝트를 사용해야 하는 경우.
- 사용자당 비용 없이 6명을 초과하는 인원이 참여하는 자가 호스팅 네트워크가 필요한 경우.
- 팀에서 대시보드를 통해 그룹과 정책을 관리하는 것을 선호하거나, 이미 다른 모든 작업에 Terraform을 사용 중인 경우.
- NetBird Cloud에서 시작하되, 동일한 클라이언트를 사용하여 나중에 직접 구축한 서버로 이전할 수 있는 옵션을 유지하고 싶은 경우.
각 서비스의 부족한 점
여기에 나열된 모든 항목은 2026년 10월 2일 기준으로 확인된 각 벤더의 공식 문서 및 가격 페이지를 근거로 합니다.
Tailscale의 부족한 점:
- 공식적인 자체 호스팅 제어 서버가 없습니다. 조정 서버(coordination server)는 비공개 소스이며, Headscale은 별도의 커뮤니티 프로젝트입니다.
- Windows 및 macOS용 오픈 소스 그래픽 클라이언트가 없습니다. 하위 데몬은 오픈 소스이지만, 애플리케이션 자체는 그렇지 않습니다.
NetBird의 부족한 점:
- 접근 정책을 위한 내장 테스트 어설션(test assertions)이 없습니다. 접근 제어 문서에 관련 내용이 명시되어 있지 않으므로, 정책 검토는 사용자 본인이나 Terraform 계획에 의존해야 합니다.
- 자체 호스팅 시 타인이 운영하는 릴레이를 사용할 수 없습니다. 릴레이는 사용자의 VPS에서 실행됩니다. 해당 VPS와 멀리 떨어진 피어는 릴레이 경로가 길어지며, 그에 따른 대역폭 비용을 사용자가 부담해야 합니다.
두 서비스 모두 기본적으로 모든 접근을 허용하는 정책으로 시작하므로, 규칙을 작성하기 전까지 새로운 네트워크는 완전히 개방된 상태입니다. 호스팅 측의 전체 위협 모델에 대해서는 호스팅된 제어 평면이 볼 수 있는 것과 없는 것을 참조하십시오.
FAQ
NetBird는 완전히 오픈 소스인가요?
네, 하지만 두 가지 라이선스를 따릅니다. 2026년 10월 기준으로 NetBird의 README에 따르면 클라이언트와 저장소 대부분은 BSD-3-Clause를 따릅니다. management/, signal/, relay/ 디렉터리는 AGPLv3입니다. 해당 서버 구성 요소를 수정하고 네트워크를 통해 다른 사람들이 사용하게 할 경우, AGPL에 따라 수정된 소스 코드를 해당 사용자들에게 제공해야 합니다.
NetBird처럼 Tailscale의 컨트롤 서버를 직접 호스팅할 수 있나요?
아니요. Tailscale의 조정 서버는 소스 코드가 공개되어 있지 않으며, 호스팅 서비스 형태로만 운영됩니다. 일반적으로 직접 호스팅하는 대체재로는 공식 Tailscale 클라이언트와 호환되는 독립적인 오픈 소스 조정 서버인 Headscale을 사용합니다. Tailscale은 Headscale의 메인 관리자를 고용하고 있으나, 프로젝트를 직접 지휘하지는 않는다고 밝히고 있습니다.
NetBird나 Tailscale의 릴레이가 내 트래픽을 읽을 수 있나요?
아니요. 두 제품 모두 WireGuard 개인 키는 장치에서 생성되며 외부로 유출되지 않습니다. Tailscale DERP 서버, Tailscale 피어 릴레이, NetBird 릴레이는 모두 암호화된 WireGuard 패킷만 전달합니다. 릴레이는 어떤 피어들이 연결되는지, 그리고 그들 사이에 얼마나 많은 데이터가 오가는지는 확인할 수 있습니다.
NetBird를 직접 호스팅하려면 어떤 VPS가 필요한가요?
2026년 10월 기준, 공식 퀵스타트 가이드는 최소 1 CPU와 2 GB 메모리를 요구합니다. 또한 VPS로 연결되는 공인 도메인, Docker와 compose 플러그인, 그리고 TCP 80, TCP 443, UDP 3478 포트 개방이 필요합니다. 릴레이 트래픽을 위한 대역폭도 고려해야 합니다. 직접 호스팅하는 서버에서는 모든 릴레이 연결이 VPS를 거쳐 전달됩니다.
어느 쪽의 무료 플랜이 더 큰가요?
2026년 10월 기준, Tailscale Personal 플랜은 최대 6명의 사용자와 무제한 장치를 허용합니다. 무료 NetBird Cloud 플랜은 최대 5명의 사용자와 100대의 장치를 허용합니다. 직접 호스팅하는 NetBird 서버는 사용자 제한이나 라이선스 비용이 없지만, VPS 비용을 지불해야 하며 직접 운영해야 합니다.