Mac では、ping が tailnet のマシン名を解決する一方で nslookup は失敗を返しますが、どちらのコマンドも正しいことを言っています。アプリはシステムリゾルバ経由で解決し、Tailscale はそれをインターフェースごとに設定します。一方、nslookup と host は MagicDNS が決して触れない静的ファイルを読みます。パケットが一つも失われなくても、二つの経路は食い違うことがあります。DNS 設定を変更する前に、失敗しているアプリがどちらの経路を通ったのかを判断してください。

二つの解決経路、二つの異なる答え

macOS のアプリの通信はシステムリゾルバを通り、インターフェースごとに限定されたリゾルバのエントリが、どのサーバーがどのドメインに答えるかを決めます。Tailscale はそこに自社の MagicDNS エントリをインストールするため、Safari と ssh は tailnet 名を見つけられます。代わりに nslookup、host、dig は /etc/resolv.conf を読むか、コマンドラインでサーバーを指定します。そのファイルは通常、今もルーターやオフィスのサーバーを指しています。そのファイルに送られた tailnet 名には、待っている権威ある応答がありません。そのためツールは失敗を報告しますが、システムの経路は成功します。

どちらのツールも誤った動作をしていません。異なるサーバーに問い合わせており、そのサーバーのうち一つだけがあなたの tailnet を知っています。

システム経路で同じ名前を確認する

システムのルックアップ呼び出しを最初のテストとして使い、次に MagicDNS リゾルバへ直接向けたクエリと比較します。短い名前と完全修飾名は異なる質問で答えも異なるため、tailnet ドメインを含めて両方の綴りを同一に保ってください。

dscacheutil -q host -a name nas-01.tailnet-a1b2.ts.net
scutil --dns
dig @100.100.100.100 nas-01.tailnet-a1b2.ts.net

これらの三つの出力は三つの問いに答えます。システムが何を返すか、どのリゾルバがどのドメイン用に設定されているか、MagicDNS 自身が何を知っているかです。二番目と三番目にあって一番目にない名前は、tailnet ではなくローカル設定を指します。

名前が解決したら、サービスを確認する

正しい DNS の答えは、名前がアドレスに対応することだけを証明します。背後のサービスは停止している可能性があり、ポートはアクセスルールで絞り込まれている可能性があり、証明書は入力したものと異なるホストを指す可能性があります。

nc -vz nas-01.tailnet-a1b2.ts.net 445
ping -c 3 nas-01.tailnet-a1b2.ts.net

元のエラーテキストを保存してください。証明書の警告、接続タイムアウト、名前が見つからない、という三つはそれぞれ別の場所へ導きます。ネームサーバーを変えると三番目は直りますが、最初の二つに午後を丸ごと浪費します。

MagicDNS はオフィス DNS の代わりではない

同じクライアントが両方に到達できても、オフィスゾーン内の名前は tailnet のデバイス名ではありません。宛先がサブネットルーターの背後にあるときは、 クライアントはそのゾーンに対して内部リゾルバを指す split DNS が必要であり、これは MagicDNS とは別の設定で、その横で文書化されています。

検索ドメインも重要です。修飾されていない短い名前には、設定された各サフィックスが順に追加されるため、最近別のネットワークに参加したノートパソコンは古いサフィックス経由で解決することがあります。ゾーンを壊れていると宣言する前に、どのサフィックスが適用されたかを確認してください。

両方の経路が失敗するときは、tailnet の事実が決める

存在すると思うデバイスに対してシステムのルックアップと直接クエリの両方が失敗するなら、問題は Mac のリゾルバより上流にあります。

管理コンソールでマシン名と tailnet ドメインを確認し、デバイスがオンラインで承認済みであることを確認し、クライアントの DNS 設定がローカルで無効化されていないことを確認してください。オフラインのデバイスは名前を保持し、返すアドレスがないだけです。

次に証拠で選びます。システム経路で解決して nslookup で失敗する名前はツール経路の違いであり、解決するのにサービスが拒否する名前はアクセスか証明書の問題であり、どこでも解決しない名前は tailnet か DNS 設定の問題です。三つの担当、三つの修正、そして MagicDNS のドキュメント が最初のケースの macOS 固有の点を扱っています。

関連記事