プライベートDNSが暗号化するのは名前の問い合わせだけで、VPNはすべての通信を暗号化し、訪問先のサイトからIPアドレスを隠します。VPNを使うときは、プライベートDNSを「自動」のままにして、トンネルの中でVPNのDNSサーバーを使うのが一般的です。事業者のホスト名を指定しても問い合わせは暗号化されたままトンネルを通りますが、VPNのDNSフィルターは効かなくなります。
Androidには「プライベートDNS」という設定があり、軽いVPNのようなものだと思ってオンにする人も少なくありません。実際にはVPNとは別物ですが、役に立たないわけでもありません。守る範囲が違い、組み合わせたときの動きにも知っておきたい点があります。
それぞれの働き
アプリがサイトを開くたびに、スマートフォンはまずDNSサーバーにそのサイトのアドレスを問い合わせます。プライベートDNSが守るのはこの問い合わせです。VPNは、その後のすべてを守ります。
| プライベートDNS | VPN | |
|---|---|---|
| 暗号化するもの | DNSの問い合わせだけ(アクセス先のサイトやサービスの名前) | アプリのすべての通信(問い合わせを含む) |
| 名前が見える相手 | 選んだDNS事業者 | VPN事業者のDNSサーバー(使う場合) |
| サイトからIPアドレスを隠す | いいえ | はい。サイトにはVPNサーバーのアドレスが見えます |
| 訪れたサイトをネットワークから隠す | 一部だけ。問い合わせは隠れますが、接続先のアドレスや、HTTPS接続の最初に送られるサイト名は見えることが多いです | はい。ネットワークには暗号化された接続が1本見えるだけです |
| トラッカーやマルウェアのブロック | DNS事業者が提供していれば | VPNが提供していれば |
| Androidに内蔵 | はい。Android 9から(DNS over TLS) | VPNアプリが必要 |
つまり、プライベートDNSはそれだけでも良い改善です。Wi-Fiやプロバイダーが問い合わせを読んだり書き換えたりできなくなります。ただし、それ以外の通信は以前と同じように見えたままです。その「それ以外」については、ガイド「プロバイダーから見えるもの」で説明しています。
プライベートDNSの3つの選択肢
設定 › ネットワークとインターネット › プライベートDNS(Samsungでは設定 › 接続 › その他の接続設定 › プライベートDNS)を開くと、3つの選択肢があります。
- オフ:問い合わせは暗号化されずに、ネットワークが指定するDNSサーバーへ送られます。
- 自動:ネットワークのDNSサーバーとのDNS over TLSを試し、対応していなければ暗号化なしの問い合わせに戻ります。これが初期設定です。
- プライベートDNSプロバイダのホスト名:指定した事業者だけに、すべての問い合わせを暗号化して送ります。その事業者に届かないときは、ネットワークに戻らず、問い合わせが失敗します。
この最後の動きが、よくあるエラー「プライベートDNSサーバーにアクセスできません」の理由です。ホスト名の入力ミス、事業者の停止、またはネットワークがDNS over TLS(ポート853)をブロックしている場合に起こります。「自動」に戻せば、すぐに解消します。
「自動」のデメリットをたずねられることもよくあります。「自動」だけで使う場合、DNS over TLSに対応していないネットワークでは、知らないうちに暗号化なしの問い合わせになることがあります。VPNを使っていれば、問い合わせは暗号化されたトンネルの中を通るので問題ありません。
両方を使うとどうなるか
組み合わせたときの動きが、いちばん知っておきたいところです。
- VPNがオン、プライベートDNSが「自動」または「オフ」:AndroidはVPNが設定するDNSサーバーを、トンネルの中で使います。すべてが暗号化され、VPNのDNSフィルターも働きます。
- VPNがオン、プライベートDNSにホスト名を指定:Androidは問い合わせをその事業者に送り続けます。暗号化されたままトンネルを通るので、ネットワークからは見えません。ただし、VPNのDNSサーバーを通らないのでフィルターは効かず、行動の一部を見る会社が1社ではなく2社になります。
どちらの構成でも、問い合わせがネットワークに漏れることはありません。選ぶのは、だれに名前を解決させるか、どのフィルターを使いたいかです。
どちらを使えばよいか
- 公衆Wi-Fiで接続全体を守りたい:VPNを使い、プライベートDNSは「自動」のままにします。
- 問い合わせを暗号化したいだけで、特定のDNS事業者を信頼している:プライベートDNSだけで十分です。ただし、どのサーバーに接続しているかはネットワークから見えます。
- 特定のDNS事業者とVPNを両方使いたい:ホスト名を指定し、VPNのDNSフィルターが効かないことを受け入れます。VPNにカスタムDNSの設定があれば、そちらを使う方法もあります。
フィルターにできること、できないこと
DNSフィルターは、リストにある名前、たとえば既知のトラッカーやマルウェア、フィッシングのドメイン、場合によっては広告に対して「そのサイトはありません」と答えます。軽く、どのアプリにも効きます。ただし見ているのは名前だけです。ファイルを調べることも、すでにスマートフォンにあるマルウェアを止めることも、まだリストにないフィッシングサイトを見つけることもできません。ウイルス対策ソフトではありません。
PryVPNのDNSの扱い
- 接続中、スマートフォンはトンネルの中でPryVPNのサーバーのDNSサーバーに問い合わせます。DNSSECを検証し、問い合わせの記録は残しません。
- 保護タブで、何をフィルターするかを選べます。トラッカーとマルウェアは初期設定でオン、広告ドメインはオンにしない限りオフです。既知のマルウェアやフィッシングのドメインの一部は、不正利用を防ぐため、サーバー側で常にブロックしています。
- 設定 › カスタムDNSで、ほかのDNSサーバーを使うこともできます(この場合もトンネル経由)。その場合、フィルターは働かなくなります。
- AndroidのプライベートDNSにホスト名が指定されていると、フィルターは効きません。アプリのリークテストは、その設定がオンのときに警告します。詳しくはDNSフィルターとプライベートDNSのヘルプ記事をご覧ください。
実際にどのDNSサーバーを使っているかは、アプリのリークテストで確かめられます。結果の見方はリークテストのヘルプ記事で説明しています。トンネルに使っているプロトコルについては、WireGuardのページをご覧ください。
よくある質問
VPNを使うとき、プライベートDNSはオンとオフのどちらがよいですか?
「自動」が一般的です。VPNにつながっている間は「オフ」でも同じように動きます。ホスト名は、その事業者に名前を解決させたいときだけ指定してください。
公衆Wi-FiではプライベートDNSだけで十分ですか?
問い合わせは隠せるので、それだけでも改善にはなります。ただし、接続先のアドレス、多くの場合サイト名、暗号化されていない通信は、ネットワークから見えたままです。VPNならそのすべてを守れます。
プライベートDNSで通信は遅くなりますか?
DNSサーバーとの新しい接続ごとに、暗号化の処理が少し増えます。スマートフォンとDNSサーバーは答えを一時的に保存するので、その負担は小さく抑えられます。
DNSフィルターとVPNをひとつの無料アプリで使いたい方は、PryVPNのベータ版に登録してください。
参考資料
誤りに気づいたらsupport@pryvpn.comまでお知らせください。修正して日付を更新します。