집과 사무실, 클라우드 서버를 하나의 안전한 네트워크로 묶는 방법
각기 다른 곳에 있는 기기들이 마치 같은 방에 있는 것처럼 서로 접속할 수 있게 됩니다. WireGuard 프로토콜을 기반으로 하지만 복잡한 설정 없이 설치만 하면 자동으로 연결됩니다. 이 저장소는 그 핵심 엔진인 데몬과 명령줄 도구의 소스 코드를 담고 있습니다.
오픈소스로 공개된 핵심 구성 요소
이 저장소에는 Tailscale의 대부분 오픈소스 코드가 포함되어 있습니다. 특히 시스템 백그라운드에서 실행되는 tailscaled 데몬과 터미널에서 명령을 입력하는 tailscale CLI 도구가 핵심입니다. 이 두 구성 요소는 Linux, Windows, macOS에서 완전히 지원되며 FreeBSD와 OpenBSD에서도 부분적으로 동작합니다. 모바일 앱인 iOS와 Android도 이 저장소의 코드를 사용하지만, 모바일 전용 그래픽 인터페이스 코드는 이 저장소에 없습니다.
설치와 빌드 과정
일반 사용자는 각 배포판과 플랫폼에 맞는 패키지를 제공하므로 별도 빌드 없이 설치할 수 있습니다. 개발자나 배포판 패키징 담당자가 직접 빌드하려면 최신 Go 버전인 Go 1.27이 필요합니다. go install 명령으로 간단히 설치할 수 있으며, 배포용 바이너리를 만들 때는 커밋 ID와 버전 정보를 바이너리에 기록하기 위해 build_dist.sh 스크립트를 사용하는 것이 좋습니다. 이렇게 하면 버그 보고 시 유용한 버전 정보가 포함됩니다.
기타 클라이언트와 관련 저장소
macOS, iOS, Windows 클라이언트는 이 저장소의 코드를 기반으로 하지만, 각 플랫폼에 맞는 작은 GUI 래퍼를 추가로 포함합니다. 비오픈소스 플랫폼의 GUI 래퍼 자체는 오픈소스가 아닙니다. Android 앱, Synology 패키지, QNAP 패키지, Chocolatey 패키징 등 다른 클라이언트나 패키징 관련 코드는 각각 별도의 저장소에 관리되고 있습니다.
기여와 법적 고지
버그 제보와 풀 리퀘스트를 환영하며, 커밋 메시지에 버그를 참조하고 Developer Certificate of Origin 서명 라인을 포함해야 합니다. WireGuard은 Jason A. Donenfeld의 등록 상표입니다. 이 저장소는 Tailscale의 오픈소스 정책과 개발 현황을 이해하는 데 필요한 핵심 코드와 지침을 제공합니다.