Hatena::ブログ(Diary)

Split Brain Syndrome このページをアンテナに追加 RSSフィード

 

2009-04-29

[] 日本から OpenDNS を使っても無意味。Akamaiは逆効果。

最近、

・「インターネット接続の高速化と安全化をもたらすOpenDNS 2ページ | OSDN Magazine

・「Mozilla Re-Mix: 安全・高速なWebサーフィンを実現する「OpenDNS」

・「安全で高速なDNSを提供する「OpenDNS」 - GIGAZINE

といった記事がはてぶに登場したのですが、OpenDNSについて誤解する人がいると残念なので、本当のところどうなのかをMEMOしなきゃと思った次第。

間違いなく言えることとして日本でOpenDNSを使っても遅くなります

第一の理由は日本から OpenDNSは遠いということ。

日本から選べるのはシアトルとパロアルトのどちらかです。仮にOpenDNSが世界一早くレスポンスを返せるサーバだったとしても、海底ケーブルを流れて日本に応答が帰ってくるまで 100-150msec の遅延(厳密にはRTT)が発生するわけです。

新しいWEBサイトを訪れるたびに毎度はるばる100msecかけてアメリカに聞きに行くぐらいなら10msecでアクセスできる日本のDNSを使うほうが圧倒的に高速です。日本人がアクセスするようなサイトは大方日本のDNSキャッシュされているわけですから・・・。

第二の理由はAkamaiサイトとの接続性が最悪であること。

Yahoo!IntelMicrosoftSONY任天堂も世界中に張り巡らされたAkamaiサービスを使っています*1

Akamaiは世界中に2万台ものEdgeサーバを持っているのだとか。ユーザーは地理的に直近のEdgeサーバからダウンロードできるので、世界中どこでも高速ダウンロードができるわけです。

ところがOpenDNSを使うと、ユーザーからではなくOpenDNSのサーバーから最も近い(シアトルやパロアルトあたりの)Edgeサーバがチョイスされる模様です。

そうなると Windows Update を含む大容量のAkamaiコンテンツが、はるばる米国西海岸から送られてくる(つまり激遅!)・・・という事態に直面します。

一応実証実験

論より証拠と思ったのでテストしてみました。


例えば 国内ODNDNS(143.90.130.165) に download.windowsupdate.com を名前解決させてみたのが下の結果です。

12msecの超スピード解決な上に、2個AkamaiのEdgeサーバーが出てきた。どれも国内のIPアドレス

発行コマンド 「dig @143.90.130.165 download.windowsupdate.com」
------------------------------------------------------------------------

;; ANSWER SECTION:
download.windowsupdate.com. 278	IN	CNAME	download.windowsupdate.nsatc.net.
download.windowsupdate.nsatc.net. 365 IN CNAME	main.dl.wu.akadns.net.
main.dl.wu.akadns.net.	89	IN	CNAME	intl.dl.wu.akadns.net.
intl.dl.wu.akadns.net.	89	IN	CNAME	dl.wu.ms.geo.akadns.net.
dl.wu.ms.geo.akadns.net. 3389	IN	CNAME	a26.ms.akamai.net.
a26.ms.akamai.net.	19	IN	A	60.254.140.162
a26.ms.akamai.net.	19	IN	A	60.254.140.178

;; ADDITIONAL SECTION:
n0ms.akamai.net.	27	IN	A	211.131.226.34
n1ms.akamai.net.	727	IN	A	61.113.95.14
n2ms.akamai.net.	3339	IN	A	60.254.185.38
n3ms.akamai.net.	1119	IN	A	60.254.185.39
n4ms.akamai.net.	630	IN	A	61.113.95.28
n5ms.akamai.net.	3251	IN	A	211.131.226.28
n6ms.akamai.net.	27	IN	A	211.131.226.34

;; Query time: 12 msec
;; SERVER: 143.90.130.165#53(143.90.130.165)
;; WHEN: Wed Apr 29 21:10:40 2009
;; MSG SIZE rcvd: 511

国内ODNDNSが教えてくれた download.windowsupdate.com に ping を飛ばしてみたら平均3msec!恐ろしく近い!

発行コマンド  ping 60.254.140.162
------------------------------------------------------------------------
PING 60.254.140.162 (60.254.140.162) 56(84) bytes of data.
64 bytes from 60.254.140.162: icmp_seq=0 ttl=56 time=3.02 ms
64 bytes from 60.254.140.162: icmp_seq=1 ttl=56 time=3.04 ms
64 bytes from 60.254.140.162: icmp_seq=2 ttl=56 time=2.82 ms
64 bytes from 60.254.140.162: icmp_seq=3 ttl=56 time=3.08 ms
64 bytes from 60.254.140.162: icmp_seq=4 ttl=56 time=2.85 ms

5 packets transmitted, 5 received, 0% packet loss, time 4042ms
rtt min/avg/max/mdev = 2.826/2.966/3.083/0.116 ms, pipe 2

比べるために OpenDNSのDNS(208.67.222.222) に download.windowsupdate.com を名前解決させてみたのが下の結果です。

遠いところはるばるご苦労様な感じでパケット130msecもかかった上に西海岸風なIPアドレスが・・・。

発行コマンド 「dig @208.67.222.222 download.windowsupdate.com」
------------------------------------------------------------------------
;; ANSWER SECTION:
download.windowsupdate.com. 1583 IN	CNAME	download.windowsupdate.nsatc.net.
download.windowsupdate.nsatc.net. 1 IN	CNAME	mscom-wui.vo.llnwd.net.
mscom-wui.vo.llnwd.net.	7	IN	A	68.142.123.186
mscom-wui.vo.llnwd.net.	7	IN	A	68.142.123.179

;; Query time: 133 msec
;; SERVER: 208.67.222.222#53(208.67.222.222)
;; WHEN: Wed Apr 29 21:16:45 2009
;; MSG SIZE rcvd: 155

OpenDNSが教えてくれた download.windowsupdate.com に ping を飛ばしてみました。平均143msec!これは遅い。

国内Edgeサーバ47倍時間がかかってます。

発行コマンド  ping 68.142.123.186
------------------------------------------------------------------------
PING 68.142.123.186 (68.142.123.186) 56(84) bytes of data.
64 bytes from 68.142.123.186: icmp_seq=0 ttl=49 time=144 ms
64 bytes from 68.142.123.186: icmp_seq=1 ttl=49 time=142 ms
64 bytes from 68.142.123.186: icmp_seq=2 ttl=49 time=142 ms
64 bytes from 68.142.123.186: icmp_seq=3 ttl=49 time=144 ms
64 bytes from 68.142.123.186: icmp_seq=4 ttl=49 time=145 ms

5 packets transmitted, 5 received, 0% packet loss, time 4044ms
rtt min/avg/max/mdev = 142.781/143.931/145.250/1.057 ms, pipe 2

結論として

ブラウジング速度を求めるなら迷わず日本のメジャーなDNS選びましょう。

何も考えずにOpenDNSは早いと勘違いすると数倍どころではなく数十倍遅くなる可能性ありです。

OpenDNSは・・・。うーん、フィルタリングとか多機能なところはいいんですけどね。(^_^.)

*1Akamaiの詳しい情報はここがよさそうです→Geekなぺーじ:みんなが知らずに使ってるAkamai

speirsspeirs 2009/08/27 01:04 私は海外のサイトを見ることが多いのでOpenDNSを導入していましたが、この記事のdigコマンドを自宅で試してみたところ、OpenDNSは常時100 ms以上かかるのに対して国内ODNのDNSを使うとだいたい40 ms のQuery Time時間でした。
おっしゃる通りの結果で、スピードアップのためだけにOpenDNSを使うのは今のところ意味無いと思います。

dnserdnser 2014/01/01 17:13 現在のopendnsは世界に20のデータセンターがあり、
日本国内とまではいかないでも香港、シンガポール等、
シアトル・パラアルトよりも近い位置から結果が返ってくるようになっています。

opendnsで検索するとかなり上位にこのサイトが位置しているため、
情報の更新をなさったほうがよいかと思います。

MyTimeMyTime 2014/11/04 09:59 逆に言うと、ISPが使っているAkamaiのAkamai NetStorageやAkamai's Edge Serviceのドメイン名が分かれば、そのドメインとISPのドメインだけISPのDNS Proxyにフォワードして、他のドメインをPublic DNSにフォワーディングしてやればいいのでは、効率が良いのではないか?

MyTimeMyTime 2014/11/04 09:59 逆に言うと、ISPが使っているAkamaiのAkamai NetStorageやAkamai's Edge Serviceのドメイン名が分かれば、そのドメインとISPのドメインだけISPのDNS Proxyにフォワードして、他のドメインをPublic DNSにフォワーディングしてやればいいのでは、効率が良いのではないか?

actyacty 2015/05/05 19:04 日本にもデーターセンターができたようです。

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証