VLESS、VMess、Trojan、Shadowsocks、WireGuard、REALITYなどのプロトコルに対応するGo製ネットワークプラットフォーム兼プロキシコア。
masterking32/MasterDnsVPN
DNSクエリと応答にTCP通信を載せて、検閲や不安定なネットワークを回避するDNSトンネリングVPN。
- スター
- 7,314
- フォーク
- 754
- 未解決の Issue
- 20
- 最終コミット
- 5 日前
これは何?
MasterDnsVPNはDNSクエリと応答を介してTCP通信を運び、他のプロトコルをフィルタリングするネットワークからは通常の名前解決に見えるようにします。DNSTTやSlipStreamの代替として位置づけられており、独自のトランスポートにARQ再送を採用し、これらのツールよりヘッダーのオーバーヘッドを抑えています。
クライアントはローカルのSOCKS5プロキシ(または固定TCP転送モード)を提供し、サーバーは委任されたサブドメインで動作します。クライアントは再帰リゾルバーのプールを管理し、MTUをテストして、複数ある方式のいずれかで各リゾルバーにクエリを振り分けます。信頼性向上のためにパケットを複製することもでき、稼働状況に応じてリゾルバーを無効化したり、再テストしたりします。ペイロードはXOR、ChaCha20、AES-GCMで暗号化でき、キャッシュ機能付きのローカルDNSサービスもオプションで利用できます。
セットアップには、Aレコードを持つドメインと、サブドメインをサーバーに委任するNSレコード、さらにUDP/TCPポート53の開放が必要です。Windows、macOS、Linux(ARM、MIPS、RISC-Vを含む)、Termux向けのビルド済みバイナリが提供されており、複数のアーキテクチャ向けにDockerイメージも公開されています。
主な機能
- 01独自のトランスポートとARQ再送を使い、DNSクエリを介してTCP通信を運ぶ。
- 02複数の選択方式を使って、リゾルバーのプールにリクエストを振り分ける。
- 03稼働中のリゾルバーの組み合わせでMTUをテストし、それに合わせてパケットサイズを調整する。
- 04パケットをリゾルバー間で複製し、損失の多い回線での到達率を高められる。
- 05ペイロードをXOR、ChaCha20、AES-GCMで暗号化できる。
- 06ローカルのSOCKS5プロキシと、キャッシュ機能付きのローカルDNSサービス(オプション)を提供する。
ユースケース
- VPNプロトコルは遮断されていてもDNSは許可されているネットワークから、オープンなインターネットに接続する。
- 研究目的でDNSトンネリングの挙動やリゾルバーの耐障害性をテストする。
- 小規模なVPSやルーター相当のデバイスで、自前のトンネルサーバーを運用する。
- 不安定な接続を介し、ローカルのSOCKS5プロキシ経由でブラウザーやアプリの通信を転送する。
クイックスタート
- 1
委任するサブドメインのAレコードとNSレコードを作成し、サーバーを参照するように設定します
- 2
READMEに記載された公式のLinuxサーバーインストールスクリプトを実行します
- 3
サーバーのファイアウォールでUDPポート53を許可します
sudo ufw allow 53/udp
使う前に知っておきたいこと
- 独自のドメインが必要です。また、サーバーが動作する前にDNS委任を設定する必要があります。
- READMEに記載されているのはLinuxサーバーのセットアップのみです。DNSレコードの反映には数時間、場合によっては最大48時間かかることがあります。
- READMEには、教育および研究目的に限って提供されると記載されています。これを使って現地の法律を回避すると、法的な結果を招くおそれがあります。
トピック
よくある質問
- MasterDnsVPN とは?
- DNSクエリと応答にTCP通信を載せて、検閲や不安定なネットワークを回避するDNSトンネリングVPN。 MasterDnsVPNはDNSクエリと応答を介してTCP通信を運び、他のプロトコルをフィルタリングするネットワークからは通常の名前解決に見えるようにします。DNSTTやSlipStreamの代替として位置づけられており、独自のトランスポートにARQ再送を採用し、これらのツールよりヘッダーのオーバーヘッドを抑えています。
- MasterDnsVPN は無料で使えますか?ライセンスは?
- MasterDnsVPN は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- MasterDnsVPN は今もメンテナンスされていますか?
- 活発にメンテナンス中。MasterDnsVPN の最終コミットは 2026年11月2日 です。
- MasterDnsVPN は何に使えますか?
- VPNプロトコルは遮断されていてもDNSは許可されているネットワークから、オープンなインターネットに接続する。 研究目的でDNSトンネリングの挙動やリゾルバーの耐障害性をテストする。 小規模なVPSやルーター相当のデバイスで、自前のトンネルサーバーを運用する。 不安定な接続を介し、ローカルのSOCKS5プロキシ経由でブラウザーやアプリの通信を転送する。
- MasterDnsVPN のインストール方法は?
- 委任するサブドメインのAレコードとNSレコードを作成し、サーバーを参照するように設定します READMEに記載された公式のLinuxサーバーインストールスクリプトを実行します サーバーのファイアウォールでUDPポート53を許可します: sudo ufw allow 53/udp
- MasterDnsVPN はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/masterking32/MasterDnsVPN
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
損失の多いネットワークでの利用を想定し、通信をHTTP/3に見せかける独自QUICプロトコルを採用したGo製プロキシ。
速度とプライバシーを重視し、インターネット規制を回避するAndroid、iOS、Windows、macOS、Linux向けの無料VPNアプリ。
Go製のコマンドラインDNSクライアント。digを現代的にしたツールで、簡潔な出力とDoH、DoT、DoQ、DNSCryptに対応。
Xray、WARP、Psiphon、Tor、WireGuardなど多数のVPN・プロキシエンジンを、アプリごとのルーティングやサーバーレスメッセンジャーとともに利用できるAndroidアプリ。
daeのeBPF設計と設定構文に準拠し、sing-box風のアウトバウンドグループを備えた、Rust製の実験的なLinux透過プロキシエンジン。