IP anycast

Advent Calendar 2018 大國魂(ITブログ) の9日目です。

JPNICのサイト(https://www.nic.ad.jp/ja/newsletter/No45/0800.html)にあるようにDNSのルートサーバは

いくつかの組織は、信頼性や応答性能の向上、ハードウェア障害への対策などの理由から、
IPエニーキャスト※4技術などを利用して地理的分散や冗長化を行い、同じルートサーバ名(IPアドレス)で複数のサーバを運用しているからです。


同じルートサーバ名(IPアドレス)で複数のサーバ

同じIPアドレスで複数のサーバで地理的分散もされているっぽいのでその確認をしてみました。

 

http://www.root-servers.org/index.htmlに接続

下のほうのRoot Serversを見る。
a.root-servers.netのIPアドレスが198.41.0.4であることが確認できます。

f:id:TKCman:20181205160326p:plain

もう少し拡大してみると...

f:id:TKCman:20181205160422p:plain

確かに、a.root-servers.netのIPアドレスが198.41.0.4でロケーションが複数(フランクフルト:ドイツ、ロンドン:イギリスなど)あり、地理的分散されている模様。

 

■自分のパソコンからtracertしてみる。

----------------------------------------------------------------------------------------------

C:\Users\hogehoge>tracert 198.41.0.4

a.root-servers.net [198.41.0.4] へのルートをトレースしています
経由するホップ数は最大 30 です:

1 1 ms 6 ms 5 ms 192.168.0.254
~中略~

13 * 108 ms 108 ms i-0-0-0-1.paix-core02.telstraglobal.net [202.84.143.210]
14 107 ms * 107 ms i-92.paix02.telstraglobal.net [202.84.247.41]
15 108 ms 108 ms 108 ms xe-1-1-0.r1.bb-fo.sfo1.vrsn.net [198.32.176.30]
16 134 ms 117 ms 107 ms 209.131.156.127
17 112 ms 112 ms 109 ms a.root-servers.net [198.41.0.4]

トレースを完了しました。

----------------------------------------------------------------------------------------------

トレースがうまくいっていることが確認できました。

 

■宛先198.41.0.4の一つ前209.131.156.127がどこにあるか?

whois検索をして確認してみます。

tech-unlimited.com

f:id:TKCman:20181205171620p:plain

日本にa.root-servers.netあるのに、アメリカ行ってしまってるっぽい…です。

 

 

■Cloudのサーバをアメリカに作成する_1

f:id:TKCman:20181205162128p:plain

Pingはできるけど、tracertができない。。

azureuser@myVM:~$ ping 8.8.8.8

PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.

64 bytes from 8.8.8.8: icmp_seq=1 ttl=117 time=1.25 ms

64 bytes from 8.8.8.8: icmp_seq=2 ttl=117 time=1.24 ms

64 bytes from 8.8.8.8: icmp_seq=3 ttl=117 time=1.39 ms

^C

--- 8.8.8.8 ping statistics ---

3 packets transmitted, 3 received, 0% packet loss, time 2002ms

rtt min/avg/max/mdev = 1.245/1.297/1.394/0.074 ms

azureuser@myVM:~$ tracepath 8.8.8.

gethostbyname2: Resolver Error 0 (no error)

azureuser@myVM:~$ tracepath 8.8.8.8

 1?: [LOCALHOST]                                         pmtu 1500

 1:  no reply

 2:  no reply

^C

azureuser@myVM:~$

トレースコマンドがOS上になかったので、mtrコマンド使ってみました。

f:id:TKCman:20181206115713p:plain

 

f:id:TKCman:20181206115738p:plain

あきらめた、、次にAWSで試してみます。

 

■Cloudのサーバをアメリカに作成する_2

f:id:TKCman:20181205172054p:plain

■こちらのOSも、トレースコマンドがOS上になかったので

mtrコマンド使ってみました。

[ec2-user@ip-172-31-87-238 ~]$
[ec2-user@ip-172-31-87-238 ~]$
[ec2-user@ip-172-31-87-238 ~]$ mtr 198.41.0.4
[ec2-user@ip-172-31-87-238 ~]$

f:id:TKCman:20181205172232p:plain

 

■宛先198.41.0.4の一つ前217.30.85.127がどこにあるか?

同じくwhois検索してみると…

f:id:TKCman:20181205172814p:plain

 

以下のサイト(https://www.janog.gr.jp/meeting/janog34/doc/janog34-acast-matsuzaki-1.pdf)に書いてある内容からすると、クライアントから見ると、近くの198.41.0.4に行っているのかと思ったんですが違いました。

→日本の端末(パソコンなど)は、日本の198.41.0.4

アメリカの端末(パソコンなど)は、アメリカの198.41.0.4

 

 

f:id:TKCman:20181205173103p:plain

https://www.janog.gr.jp/meeting/janog34/doc/janog34-acast-matsuzaki-1.pdf

頑張れIP anycastより

 

一応、IP anycastが地理的分散されているっぽいのは確認できました。

a.root-servers.netはVerisignが管理してるっぽいので近くの198.41.0.4に行くのとはちょっと違うのかな?

f:id:TKCman:20181206120150p:plain

ルートサーバ - Wikipediaより