Tailscaleロゴ

MagicDNS

最終検証日:
翻訳: 竹洞 陽一郎

MagicDNSは、すべてのプランで利用できます。

MagicDNSは、ネットワーク内のデバイスに対してDNS名を自動的に登録する機能です。
たとえばmy-serverという名前のWebサーバーを追加すると、TailscaleのIPアドレスではなく、その名前で直接アクセスできます。
Tailscale v1.20以降を実行している場合、この機能にDNSネームサーバーは不要です。それ以前のバージョンでは、管理コンソールのDNSページで少なくとも1つのDNSネームサーバーを設定しておく必要があります。

MagicDNSを有効にする

2022年10月20日以降に作成されたtailnetでは、MagicDNSは既定で有効です。
有効になっていない場合は、管理コンソールのDNSページから手動で有効にできます。

MagicDNSでデバイスにアクセスする

MagicDNSを有効にすると、ネットワーク内のどのデバイスからも、マシン名で他のデバイスにアクセスできます。

ssh username@monitoring
ping monitoring

ブラウザのアドレスバーにマシン名を入力してアクセスすることもできます。

macOSでは、hostやnslookupなどのコマンドラインツールはシステムのDNSを経由しないため、MagicDNSでは動作しません。

共有されたデバイスにアクセスできるのは、Tailscale v1.4以降を実行している場合に限られ、かつ完全なドメイン名を使う必要があります(例: ping webserver.example2.ts.net)。

マシン名の割り当てと編集

MagicDNSは、DNSのエントリーにデバイスのマシン名を使用します。
デバイス名を変更すると、DNSのエントリーも自動的に更新されます。
特定の名前を使いたい場合は、マシン名(英語)の手順に従って編集してください。

完全修飾ドメイン名とマシン名

MagicDNSが生成する完全修飾ドメイン名(FQDN)は、次の2つの部分で構成されます。

  1. マシン名(ユーザーが変更できます)
  2. tailnetのDNS名(管理コンソールのDNSページで確認できます)
マシン名とtailnet名からFQDNが決まる例
マシン名 tailnet名 FQDN
monitoring yak-bebop.ts.net monitoring.yak-bebop.ts.net
johns-iphone-6s tailab12.ts.net johns-iphone-6s.tailab12.ts.net
free-form example.ts.net free-form.example.ts.net

MagicDNSが有効な場合、検索ドメインが自動的に追加されるため、FQDNではなくマシン名だけでアクセスできます。
たとえばyak-bebopのtailnetでは、ping monitoringはping monitoring.yak-bebop.ts.netと同じ意味になります。
ただし、共有されたデバイスへのアクセスには、セキュリティ上の理由から完全なドメイン名が必要です。

デバイスの完全なドメイン名は、管理コンソールのMachinesセクションにある、そのデバイスのページで確認できます。

.beta.tailscale.netで終わる旧来のtailnet名は、2024年9月13日にサポートが終了しました。
.ts.net形式への移行が必要です。

MagicDNSを無効にする

ネットワーク全体で無効にするには、管理コンソールのDNSページで、有効化に使ったものと同じトグルを操作します。

デバイス単位で無効にするには、そのデバイスがネットワークのDNS設定を受け入れないようにします。

Linuxの場合:

tailscale set --accept-dns=false

macOSの場合:

  1. メニューバーのTailscaleアイコンを選択します。
  2. Preferencesを選択します。
  3. 「Use Tailscale DNS settings」のチェックを外します。

Windowsの場合:

  1. SHIFTキーを押しながら、タスクトレイのTailscaleアイコンを右クリックします。
  2. メニューから「Use Tailscale DNS」の選択を解除します。

beta.tailscale.netのネームサーバーを削除する

この操作には、Owner、Admin、またはIT adminのロールが必要です。

  1. 管理コンソールのDNSページを開きます。
  2. .beta.tailscale.netで終わるネームサーバー(例: yak-bebop.beta.tailscale.net)を探します。
  3. 三点メニューからDeleteを選択します。
  4. 削除を確定します。

削除したネームサーバーは復元できません。

DNS全般の設定については、TailscaleにおけるDNSを参照してください。

原文:MagicDNS(Tailscale公式ドキュメント)