追加読書

追加読書

Centosホスティングサーバーがあり、最近奇妙な動作を見始めました。

root@server [/tmp]# ping www.google.com
PING www.google.com (172.217.8.196) 56(84) bytes of data.
64 bytes from ord37s09-in-f4.1e100.net (172.217.8.196): icmp_seq=1 ttl=53 time=24.8 ms

だからこれはかなりよさそうだ。

ここで状況が変になります。 Googleサーバーではなく独自のサーバーがあります!

root@server [/tmp]# traceroute www.google.com
traceroute to www.google.com (75.102.21.14), 30 hops max, 60 byte packets
 1  server.plannersys.net (75.102.21.14)  0.041 ms  0.017 ms  0.015 ms

しかし、Nslookupはよさそうだ。

root@server [/tmp]# nslookup
> www.google.com
Server:         8.8.8.8
Address:        8.8.8.8#53

Non-authoritative answer:
Name:   www.google.com
Address: 172.217.8.196
> ^C

そしてwgetとlynxは独自のサーバーも提供します。

root@server [/tmp]# wget https://www.google.com
--2017-12-04 11:50:56--  https://www.google.com/
Resolving www.google.com... 75.102.21.14
Connecting to www.google.com|75.102.21.14|:443... connected.
ERROR: no certificate subject alternative name matches
        requested host name “www.google.com”.
To connect to www.google.com insecurely, use ‘--no-check-certificate’.

And with lynx:
SSL error:host(www.google.com)!=cert(troutaccess.com)-Continue? (y)

その理由は何ですか? Tracerouteとwgetとlynxが異なるアドレスを使用するのはなぜですか?

ベストアンサー1

完全修飾ドメイン名を使用していません。 www.google.com正規化された(人間が読める形式)ドメイン名ではありません。ドットで終わりません。

DNSクライアントライブラリで検索パスplannersys.net.とワイルドカードDNSリソースレコードを設定することもできます*.plannersys.net.

その結果、完全修飾ドメイン名を検索しwgetた結果、IPアドレス75.102.21.14が届きました。 DNSクライアントライブラリは、設定された検索パスを使用して、完全修飾されていないドメイン名を完全修飾ドメイン名に変換し、完全修飾名の検索を実行することを忘れないでください。tranceroutewww.google.com.plannersys.net.

nslookup違いは、別の内部DNSクライアントライブラリを使用することです。興味深いことに、ここに例があります。いいえこれは異なるが、DNSクライアントライブラリがすべて同じDNS名前空間ビューを提供しない複数のプロキシDNSサーバーで構成されているか、またはDNSクライアント構成を動的に変更するping同様の組み合わせがあるためです。systemd-resolvedあなたの質問にはDNSクライアントライブラリに関する情報がないため、特定の原因を特定するのに十分な情報がありません。

追加読書

おすすめ記事