dig -4
IPv6アドレスが返されるのはなぜですか?
% dig -v
DiG 9.16.5
%
% dig -4 @8.8.8.8 TXT o-o.myaddr.l.google.com | grep TXT
; <<>> DiG 9.16.5 <<>> -4 @8.8.8.8 TXT o-o.myaddr.l.google.com
;o-o.myaddr.l.google.com. IN TXT
o-o.myaddr.l.google.com. 54 IN TXT "2a0a:b640:1:5a::a07d"
心配しないでください。私はVPNを使用しています。
これはGoogleネームサーバーのバグですか? (それではどう報告しますか?)
興味深いことに、以下を追加すると出力が異なります-c IN
。
% diff <(dig -4 -c IN @8.8.8.8 TXT o-o.myaddr.l.google.com) <(dig -4 @8.8.8.8 TXT o-o.myaddr.l.google.com)
2c2
< ; <<>> DiG 9.16.5 <<>> -4 -c IN @8.8.8.8 TXT o-o.myaddr.l.google.com
---
> ; <<>> DiG 9.16.5 <<>> -4 @8.8.8.8 TXT o-o.myaddr.l.google.com
6,7c6,7
< ;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 35377
< ;; flags: qr rd ra ad; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1
---
> ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 27019
> ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 4, ADDITIONAL: 3
11c11
< ; COOKIE: ffdced2ffd1d8fb9ca1b1c3c5f53070accd8e6ece4fb266f (good)
---
> ; COOKIE: 8042de852de231e1242187435f53070bdddc4b80f19c7711 (good)
13c13
< ;TXT. IN A
---
> ;o-o.myaddr.l.google.com. IN TXT
15,25c15,16
< ;; AUTHORITY SECTION:
< . 7956 IN SOA a.root-servers.net. nstld.verisign-grs.com. 2020090401 1800 900 604800 86400
<
< ;; Query time: 66 msec
< ;; SERVER: 8.8.8.8#53(8.8.8.8)
< ;; WHEN: Sat Sep 05 10:33:31 +07 2020
< ;; MSG SIZE rcvd: 135
<
< ;; Got answer:
< ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 16524
< ;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1
---
> ;; ANSWER SECTION:
> o-o.myaddr.l.google.com. 28 IN TXT "2a0a:b640:1:5a::a07d"
27,31c18,26
< ;; OPT PSEUDOSECTION:
< ; EDNS: version: 0, flags:; udp: 4096
< ; COOKIE: ffdced2ffd1d8fb9e51dd6995f53070b3d32c82e71242836 (good)
< ;; QUESTION SECTION:
< ;o-o.myaddr.l.google.com. IN A
---
> ;; AUTHORITY SECTION:
> google.com. 121655 IN NS ns1.google.com.
> google.com. 121655 IN NS ns4.google.com.
> google.com. 121655 IN NS ns3.google.com.
> google.com. 121655 IN NS ns2.google.com.
>
> ;; ADDITIONAL SECTION:
> ns1.google.com. 340694 IN A 216.239.32.10
> ns1.google.com. 340694 IN AAAA 2001:4860:4802:32::a
33c28
< ;; Query time: 76 msec
---
> ;; Query time: 73 msec
36c31
< ;; MSG SIZE rcvd: 80
---
> ;; MSG SIZE rcvd: 229
ベストアンサー1
これはあなたがうまくいかなかったことを意味します。 ☺
申告-c IN
効果はきちんとしなかったからだ。IN
とにかくこれは基本クラスなので、両方のクエリは明確です。ただし、失敗したのはドメイン名TXT.
ではなくルックアップドメイン名であることに注意してくださいo-o.myaddr.l.google.com.
。混乱してdig
リソースレコードタイプパラメータがドメイン名であると考えました。
パラメータとして扱うことは、順序が明確に指定されたマニュアルを読まない人のための支柱であることに注意してください。 ☺(Knot DNSはマニュアル上の順序が少し異なりますが、自分の主張を間違った方法で提示する人に対処しようとします。)type domain-name
dig
domain-name type class
kdig
domain-name class type
また、マニュアルでは(トップレベル)ドメイン名を使用し、-t
あいまいさを避けることを明示的にお勧めします。-q
これは-4
実際にこれとは何の関係もありません。これにより、IPv4 が DNS サーバーと通信できるようになります。しかし、DNSサーバーが間違っています。
これは@8.8.8.8
重要な要素です。
クエリはGoogleに対して直接実行する必要があります。コンテンツDNSサーバー(作成時)IPv4の世界では以下のようになります。
%dnsqrnsl.google.com. | awk '/回答:/ {print $5}' | 216.239.34.10 216.239.32.10 216.239.36.10 216.239.38.10 %
TXT
ドメイン名が照会されると、これらのコンテンツ DNS サーバーは元の IP アドレスと EDNS0 情報をリソース レコードセットに返します。
あなたはGoogleのためにこれをやっています。公開決議プロキシ代わりに DNS サーバーが使用されます。 EDNS0情報と元のIPアドレスを取得しています。使用される特定のプロキシサーバーのバックエンド(8.8.8.8はエニーキャストです)マシンの独自のIPアドレスの代わりに。 GoogleのパブリックプロキシDNSサーバーはGoogleのコンテンツDNSサーバーに接続するため、IPアドレスとEDNS0情報です。それリソースレコードセットのコンテンツはDNSサーバーから返され、Googleプロキシに返され、プロキシからユーザーに返されます。
実際、TTLはGoogleの60秒ではなく54秒です。コンテンツここではDNSサーバーの使用が大きな手がかりになりますが、実際にはそうではありません。あなたのIPv6 アドレス。
dig
ほとんどの docos で使用され提供されている略語が通常、host
Google のコンテンツ DNS サーバーに取引を明示的に指示することなく動作するのは、その取引が次を通過するためです。地元のプロキシDNSサーバーの確認自分のコンピュータで、バックエンドクエリはもちろん、次から派生します。あなたのマシンIPアドレス。ローカル検証プロキシDNSサーバーを保持することはUnixとLinuxの世界の標準であり、現在もそうです。これは(サーバーではなく)Microsoft Windowsではありません。
しかし:使用する他人の自分のプロキシDNSサーバーから転送したり、他の人のサーバーを構成したり/etc/resolv.conf
(ここのように)クエリを8.8.8.8/1.1.1.1/9.9.9.9などに明示的に指定して、プロキシDNSサーバーを確認すれば情報を得ることができます。あります。他の人のプロキシDNSサーバーのバックエンドについて。
%DNSCACHEIP=1.1.1.1 dnsqr txt oo.myaddr.l.google.com 16oo.myaddr.l.google.com: 105バイト、1+1+0+0レコード、応答、エラーなし クエリ:16oo.myaddr.l.google.com 回答:oo.myaddr.l.google.com 36 TXT \ 0342400:cb00:63:1024::a29e:2192 % %DNSCACHEIP=1.0.0.1 dnsqr txt oo.myaddr.l.google.com 16oo.myaddr.l.google.com: 105バイト、1+1+0+0レコード、応答、エラーなし クエリ:16oo.myaddr.l.google.com 回答: oo.myaddr.l.google.com 12 TXT \0342400:cb00:63:1024::a29e:2192 % %DNSCACHEIP=9.9.9.9 dnsqr txt oo.myaddr.l.google.com 16oo.myaddr.l.google.com: 71バイト、1+1+0+0レコード、応答、エラーなし クエリ:16oo.myaddr.l.google.com 回答:oo.myaddr.l.google.com 60 TXT \ 0212620:171:fa:f0::7 %
CloudFlareが実行する確認プロキシDNSサーバーのバックエンドにCloudFlareが割り当てたIPv6アドレスがあることは驚くべきことではありません。 ☺
それらのいくつかは実際にIPアドレスを所有しているか、Anycastが移動するにつれて複数のバックエンドIPアドレスを持っています。 (私はそのうちのいくつかの間でしばらく停止しました。)
%DNSCACHEIP=8.8.8.8 dnsqr txt oo.myaddr.l.google.com 16oo.myaddr.l.google.com: 114バイト、1+2+0+0レコード、応答、エラーなし クエリ:16oo.myaddr.l.google.com 回答:oo.myaddr.l.google.com 59 TXT \ 01574.125.181.14 回答:oo.myaddr.l.google.com 59 TXT "edns0-client-subnet\040エヘム! %DNSCACHEIP=8.8.8.8 dnsqr txt oo.myaddr.l.google.com 16oo.myaddr.l.google.com: 124バイト、1+2+0+0レコード、応答、エラーなし クエリ:16oo.myaddr.l.google.com 回答:oo.myaddr.l.google.com 59 TXT \ 0272a00:1450:400c:c01::106 回答:oo.myaddr.l.google.com 59 TXT "edns0-client-subnet\040エヘム! %DNSCACHEIP=8.8.8.8 dnsqr txt oo.myaddr.l.google.com 16oo.myaddr.l.google.com: 124バイト、1+2+0+0レコード、応答、エラーなし クエリ:16oo.myaddr.l.google.com 回答:oo.myaddr.l.google.com 59 TXT \ 0272a00:1450:400c:c01::107 回答:oo.myaddr.l.google.com 59 TXT "edns0-client-subnet\040エヘム! % %DNSCACHEIP=9.9.9.10 dnsqr txt oo.myaddr.l.google.com 16oo.myaddr.l.google.com: 71バイト、1+1+0+0レコード、応答、エラーなし クエリ:16oo.myaddr.l.google.com 回答:oo.myaddr.l.google.com 60 TXT \ 0212620:171:fa:f0::3 %DNSCACHEIP=9.9.9.10 dnsqr txt oo.myaddr.l.google.com 16oo.myaddr.l.google.com: 66バイト、1+1+0+0レコード、応答、エラーなし クエリ:16oo.myaddr.l.google.com 回答:oo.myaddr.l.google.com 31 TXT \ 01474.63.26.248 %DNSCACHEIP=9.9.9.10 dnsqr txt oo.myaddr.l.google.com 16oo.myaddr.l.google.com: 66バイト、1+1+0+0レコード、応答、エラーなし クエリ:16oo.myaddr.l.google.com 回答:oo.myaddr.l.google.com 60 TXT \ 01474.63.26.250 %
dnsqr
TXT
以下は、リソースレコードをダンプする少し素朴な方法です。これらの8進数エスケープは長さバイトです。おそらくこの問題を修正する必要があると思います。 ☺
追加読書
- ジョナサン・ドボイン・ポラード(2000)。「コンテンツ」と「プロキシ」DNSサーバー。 よく与えられる答えです。
- ジョナサンデボインポラード(2003)。プロキシDNSサービスを受けることができる場所。一般的な答え。
- ジョナサンデボインポラード(2004)。DNSクエリ解決とは何ですか? 。一般的な答え。
- ジョナサンデボインポラード(2016)。ソフトウェア統合(Daniel J. Bernstein)。ソフトウェア。