Google Public DNS(グーグル・パブリック・ディーエヌエス)は、Googleが世界中のインターネット利用者に提供している無料のDNSサービスである。このサービスはDNSキャッシュサーバとして機能する。
Google Public DNSは「ウェブをより高速で安全なものにする[1]」取り組みとして2009年12月3日に発表された[2]。2014年には世界最大のパブリックDNSサービスとなり、1日当たり4,000億件の問い合わせを処理している[3]。Google Public DNSはDNSホスティングサービス(英語版)のGoogle Cloud DNSとは無関係である。
サービス
従来のDNSクエリサービスは以下のとおり[4]。
|
IPv4
|
IPv6
|
FQDN
|
優先DNSサーバ
|
8.8.8.8
|
2001:4860:4860::8888
|
google-public-dns-a.google.com
|
代替DNSサーバ
|
8.8.4.4
|
2001:4860:4860::8844
|
google-public-dns-b.google.com
|
|
DNS64
|
FQDN
|
優先DNSサーバ
|
2001:4860:4860::6464
|
dns64.dns.google
|
代替DNSサーバ
|
2001:4860:4860::64
|
DNS over HTTPS は以下のとおり。[5]
|
通常
|
DNS64
|
RFC 8484
|
https://dns.google/dns-query
|
https://dns64.dns.google/dns-query{?dns}
|
JSON API
|
https://dns.google/resolve?
|
https://dns64.dns.google/resolve?name=ipv4only.arpa&type=AAAA
|
DNS over TLS は以下のとおり。[4][注釈 1][6]
Google Public DNSでは、上記のDNSサーバで公開用のDNSキャッシュサーバを運用している[7]。エニーキャストルーティングにより最寄りのDNSコンテンツサーバに関連付けられる[8]。
フィルタリング
フィルタリングは行われていない[9]。
詳細
このサービスではIETFが定めたDNSの標準仕様に準拠した独自に実装されたDNSサーバを使用しており、BINDなどの従来からあるDNSサーバは使用していない。2013年3月19日からDNSSECに完全に対応した。以前から、Google Public DNSではDNSSEC形式のメッセージの受け入れと転送は行っていたが、検証は行っていなかった[10]。
Googleのサービスでは、存在しないドメインへの問い合わせに対し正しく応答する[11]が、一部のDNSプロバイダでは問い合わせ中にDNSハイジャック(英語版)を行い、存在しないドメイン名が問い合わせされた場合に、プロバイダが運営や提携している広告サイトにリダイレクト(転送)している。これはDNSの標準仕様を意図的に無視しているとみなされている[12]。また、転送先の広告サイトが正規サイトに偽装したフィッシング詐欺サイトに誘導される場合もある。※前述のハイジャックや転送を複数回行い使い捨て(使い廻し)の違法サイトに誘導し、法的権限が及ばない海外サーバーを経由させ、DNSプロバイダ、広告運営者が法的責任を負わない様に設計されている場合もある。
GoogleのサービスはアドレスによるDNSセキュリティにも対応している。一般的な攻撃方法は、正当なものから不正なものへのウェブページのリダイレクトを行うためにDNSサービスに干渉するものである。Googleではカミンスキー攻撃やDoS攻撃などのDNSスプーフィングに抵抗するための努力を文書化している[13]。
Googleはエニーキャストルーティングにより最寄りのデータセンターに要求を送信し、サーバはDoS攻撃を捕捉した場合でも処理を行うための容量を確保し、最も一般的なドメイン名と訪問するドメイン名別の分散サーバのプールを含む小さなキャッシュと共に2つのキャッシュレベルを使用することにより、サーバロードバランスを保証するなどの効率と速度の面での利点を主張している[14]。この第2段階のキャッシュは、サーバを増設した結果生じる断片化とキャッシュミス率を低減する。
プライバシー
Googleはパフォーマンスとセキュリティのために、問い合わせのIPアドレスは24から48時間後に削除されると述べているが、ISPと場所に関する情報はサーバに永久に保存されている[15][16]。
Googleの一般的なプライバシーポリシーでは、「Google の各種サービスにおいてお客様のさまざまなデバイスから収集した情報を組み合わせることがあります。」と述べているが[16]、Google Public DNSのプライバシーポリシーでは、"We don't correlate or combine information from our temporary or permanent logs with any personal information that you have provided Google for other services."と述べている[15]。
歴史
2009年12月、プロダクトマネージャーのPrem RamaswamiによってGoogleの公式ブログ上で発表され[1]、Google Developersのブログに新たな投稿が行われた[17]。
サービス開始当初はDNSSECに完全には対応していなかった。RRSIGレコードを問い合わせることはできたが、AD (Authenticated Data) フラグが設定されていなかったので、全てのデータの署名を検証することはできなかった。2013年1月28日のアップグレード後から、クライアントが明示的にDNSSEC OK (DO) フラグを問い合わせた場合にDNSSECの検証情報の提供を開始した[18][19]。3月6日以降はデフォルトで対応するように置き換えられ、明示的に無効化しない限りは全ての問い合わせが検証されるようになった。
2014年以降、Google Public DNSはEDNS クライアント・サブネット(英語版) (ECS) オプションに対応するネームサーバを自動的に検出し、問い合わせを送信する。
2019年1月以降、DNS over TLSに対応した[20]。
トルコでの検閲
トルコでは2014年3月、3月20日の裁判所命令によるTwitterのブロックを回避するために使用された後にブロックされた。これは閣僚の汚職疑惑を受けて、「Twitterを根絶やしにする」と誓ったレジェップ・タイイップ・エルドアン首相の発言によるものである。Google Public DNSを利用した方法は、このブロックがISPのDNSサーバでコンテンツフィルタリングする単純なもので、代替DNSを利用することで回避できると判明した後に普及した。この方法を広めるために、街中の建物にGoogle Public DNSのIPアドレスが落書きされた。政府は後にTwitterのIPアドレスを直接ブロックし、Google Public DNSも完全にブロックされた[21]。
脚注
注釈
- ^ クライアントの一部の実装ではDNS over TLSの設定にFQDNでしか登録できない(例:Android 9 - 10)が、本質的には従来のDNSサービスのアドレスにDoT(port 853)で接続すれば利用可能なサービスも多い(ただしサービスによる)。
出典
関連項目
類似サービス
外部リンク