Tailscaleと独自ドメインでVPN内の名前解決をより便利にする
February 23, 2021
QNAP NASにTailscaleをインストールしてVPN接続できるようにするで解説したように、とても便利なTailscaleには、Magic DNSというパブリックベータの機能があり、これを利用するとVPNで名前解決によってそれぞれのマシンへアクセスさせることもできます。 VPNで名前解決が利用できると、IPアドレスよりも覚えやすい上に、もしIPアドレスが変更されても影響がなくなるので、大変便利な機能です。 このMagic DNSの機能を利用して、更に色々とできないかを模索してみました。 CNAMEによる独自ドメインの利用 # まず最初に思いついたは、CNAMEによる独自ドメインの利用で、イメージとしてはこんな感じです。 パブリックDNSを利用するとドメイン名は一般公開されますが、VPNに接続しないかぎり各端末へのアクセスはできません。そのため、公開して問題ない名前であれば、パブリックDNSを利用しても問題ないと言えます。 TailscaleのMagic DNSで各マシンに割り当てられるドメイン名は、次のようなフォーマットになっています。 <マシン名>.<ドメイン>.beta.tailscale.net 「ドメイン」部分は、無料プランであればログイン認証に利用しているメールアドレスになります。もちろん、これでも覚えられないわけではないのですが、CNAMEを使えば独自ドメインを利用してアクセスできるのではないかと思い試してみました。 具体的にはDNSに次のようなCNAMEレコードを追加してみました。 NAME TYPE VALUE mbp-2019.vpn.tomoya.dev. CNAME mbp-2019.tomoya-ton.gmail.com.beta.tailscale.net. DNSの伝搬を待ってから、確認してみると次のような応答が返ってきました。 $ dog mbp-2019.vpn.tomoya.dev CNAME CNAME mbp-2019.vpn.tomoya.dev. 1h00m00s "mbp-2019.tomoya-ton.gmail.com.beta.tailscale.net." ちなみに、dogコマンドはRustで書かれたdigライクなDNSクライアントです。 ogham/dog: Command-line DNS client DNSが伝搬していることを確認できたら他のマシンから独自ドメインを利用してアクセスできるかを試してみました。 macOSにVNCでログインする # macOSは標準でVNCによるログインをサポートしています。Tailscale+独自ドメインを使って、自宅にあるMacBookに、外部ネットワークのiPhoneからVPCでログインできるかを試してみます。 iPhoneのWiFiをオフにして、VNC ViewerのAddress BookからAddressに独自ドメインを入力してログインしてみます。 Tailscale VPNに接続するとログインされ、接続を切るとログインできないことを確認しました。 Windowsにリモートデスクトップでログインする # Windows 10 Proであればリモートデスクトップが使えます。こちらもTailscale+独自ドメインでログインできるか試してみます。 再びiPhoneでWiFiをオフにして、RD Clientから独自ドメインを入力してログインしてみます。 Tailscale VPNに接続するとログインされ、接続を切るとログインできないことを確認しました。 WindowsにSSHでログインする # 自宅のWindowsマシンはSSHでログインできるようにしているので、こちらも試してみましょう。 MacBookをiPhoneでテザリングしてSSH接続を試してみます。 # Tailscale VPNに接続済み $ ssh tomoya@minipc-2020.vpn.tomoya.dev Windows PowerShell Copyright (C) Microsoft Corporation. ...