ZeroTier で DNS サーバーを使用する

ZeroTier で DNS サーバーを使用する

私はZerotierコントローラーをセットアップしました。じゅんうまく機能していますが、私の設定でうまく機能しない部分が 1 つあります。それは、ZeroTier ネットワーク用に構成した DNS をクライアントに使用させることです。DNS は次のように構成されています。

{
  "domain": "",
  "servers": [
    "10.10.14.26"
  ]
}

DNS サーバーの ZeroTier IP アドレスはどこに10.10.14.26ありますか (ローカル ルーターに転送する dnsmasq を実行する Linux サーバーと同様)。ZeroTier クライアントで直接 DNS サーバーの応答をテストすると、正しい結果が得られます (たとえば、DNS を直接使用するように構成したり、 を使用するときに DNS サーバーを指定したりしますdig)。ただし、クライアントで [DNS 構成を許可する] を選択すると、DNS サーバーに直接問い合わせたときに解決されるホスト名の解決が依然として拒否されます。

また、ZeroTier IP ではなく DNS サーバーのローカル IP アドレスを使用してみましたが、結果は同じでした (クライアントがローカル IP にもアクセスできるように、同じ Linux サーバーで IP 転送が設定されています)。

ZeroTier クライアントが構成した DNS サーバーを確実に使用するようにするには、何をする必要がありますか?

私のバックアップ計画は、サポートする必要があるさまざまなプラットフォーム用にさまざまなスクリプトを作成し、ZeroTier ネットワークへの接続時と切断時にそれぞれグローバル DNS を上書きおよび復元するようにすることですが、その場合、「DNS 構成を許可する」オプションは何の役に立つのでしょうか。

DNS機能はLinuxクライアントでは動作しないことはわかっていますが、Linuxクライアントは私だけなので、これは私にとってはそれほど問題ではありません。残りのクライアントはWindowsまたはMacOSを使用するので、この機能は仕事に報告した:

ZeroTier マネージド DNS は現在、Windows、MacOS、Android、iOS でのみサポートされています。Linux のサポートも近々開始されますが、Debian や CentOS/RHEL などの一般的な Linux DNS リゾルバ構成に限定される可能性があります。

答え1

これは私の質問に対する適切な答えではありませんが、私のニーズは解決しました。この郵便受けiptables最終的には、追加のコマンドを使用して VPN サーバーを強制しました。

iptables -t nat -A PREROUTING -s vpn_network -p udp --dport 53 -j DNAT \
    --to-destination your_DNS_server
iptables -t nat -A PREROUTING -s vpn_network -p tcp --dport 53 -j DNAT \
    --to-destination your_DNS_server

注: これをテストした Windows 10 マシンでは、正しい結果がすぐには表示されませんでしたが、実験的な変更のほとんどをリセットした後、正常に動作し続けました。その後、クリーンなマシンでテストしたところ、すぐに動作しました。

関連情報