트렌드검색 · 깃허브 · 쇼핑에서 지금 뜨는 것 — 검색어는 매시, 깃허브 · 쇼핑은 매일 아침 7시 30분 · English

깃허브 · 2026년 10월 8일 기준 · 깃허브에서 보기 →

masterking32/MasterDnsVPN

DNS를 이용해 검열을 우회하는 가상 사설망

인터넷이 완전히 끊겨도 DNS로 연결을 유지하는 터널링 도구

국가 단위의 인터넷 차단이나 불안정한 네트워크 환경에서도 웹을 사용할 수 있게 해줍니다. DNS 쿼리 안에 데이터를 숨겨서 전송하는 방식의 가상 사설망(VPN) 클라이언트와 서버입니다. 기존 도구들과 달리 패킷 손실과 높은 지연 시간을 견디도록 설계되어 있습니다.

완전 차단 상황에서의 생존 전략

이 프로젝트는 이란의 88일간의 인터넷 차단 기간 동안 실제로 사용되어 그 효용을 입증했습니다. 일반적인 VPN이 국제 대역폭이 끊기면 작동하지 않는 것과 달리, 이 도구는 DNS 트래픽이 허용되는 한 연결을 유지합니다. 데이터를 작은 조각으로 나누고 암호화한 뒤, 정상적인 DNS 요청처럼 위장하여 전송합니다. 여러 DNS 리졸버를 동시에 사용하고 중복 전송을 지원하여, 특정 경로가 막혀도 다른 경로를 통해 데이터를 전달합니다. 이러한 구조 덕분에 방화벽이 DNS 트래픽만 허용하는 극단적인 상황에서도 외부 세계와 소통할 수 있습니다.

경량 프로토콜과 효율성

기존의 DNS 터널링 도구들이 사용하는 프로토콜 헤더보다 훨씬 적은 오버헤드를 지니고 있습니다. DNSTT 대비 약 88%, SlipStream 대비 약 71% 낮은 헤더 크기를 자랑하며, 이는 더 많은 실제 데이터를 DNS 패킷에 담을 수 있음을 의미합니다. 자체 개발한 프로토콜은 재전송 논리(ARQ)를 포함하여 패킷 손실 시에도 데이터를 안정적으로 전달합니다. 또한 8가지 내장된 부하 분산 모드를 지원하여 리졸버 상태를 실시간으로 확인하고 최적의 경로를 선택합니다. MTU(최대 전송 단위)가 매우 작은 환경에서도 작동하도록 설계되어 네트워크 제약 조건이 많은 곳에서 유리합니다.

설치와 구성 방법

서버 측에서는 도메인 하위 도메인을 서버 IP로 위임하는 A 레코드와 NS 레코드를 설정해야 합니다. Linux 서버에는 자동 설치 스크립트를 제공하여 복잡한 설정 과정을 단순화했습니다. 클라이언트는 Windows, macOS, Linux, Android(Termux) 등 다양한 플랫폼의 사전 빌드 바이너리를 제공합니다. Go 언어로 작성되어 있으며, 소스에서 직접 빌드하려면 Go 1.24 이상이 필요합니다. 설정 파일(client_config.toml, server_config.toml)에서 암호화 키와 도메인, 리졸버 목록을 일치시켜야 하며, 클라이언트는 기본적으로 로컬 SOCKS5 프록시(127.0.0.1:18000)를 제공합니다. Docker 이미지를 통해 컨테이너 환경에서도 쉽게 배포할 수 있습니다.

사용 전 반드시 확인할 사항

이 도구는 교육 및 연구 목적으로 제공되며, 특정 목적에 대한 적합성이나 상용성을 보장하지 않습니다. 사용자가 이 도구를 사용하여 현지 법률을 위반할 경우 발생하는 모든 법적 책임은 사용자 본인에게 있습니다. 특히 인터넷 검열 우회 행위가 금지된 지역에서는 심각한 민형사상 불이익을 초래할 수 있으므로, 사용 전 반드시 해당 국가의 법률과 규정을 검토해야 합니다. 또한 XOR 암호화 방식은 오버헤드가 적지만 보안성이 낮으므로, 보안이 중요한 환경에서는 AES 또는 ChaCha20 같은 더 강력한 암호화 방식을 선택하는 것이 좋습니다.

숫자로 본 저장소

언어
Go
주제 태그
dns · dns-client · dns-proxy · dns-server · dns-tunnel · dns-tunneling · dnstt · masterdns
최근 릴리스
v2026.06.13.234407-7de2476 · 2026년 6월 13일
마지막 커밋
2026년 8월 29일
열린 이슈
19
열린 PR
6

AI가 이 저장소의 README를 읽고 2026년 10월 7일에 쓴 글입니다. 사실관계는 깃허브 원문이 기준입니다.

깃허브에서 보기 → · 홈페이지