DNSについてさらに書き始めると、読者はより多くのクエリを求め始めました。私たちの常連の読者の一人であるフェドリック氏は、以下のように私たちに質問を送ってくれました
I know the IP address of DNS server running on our office network, but is it possible to get more information about it? Such as the software used to run the DNS server, its version etc...? I'm using Linux- Fedrick
回答:
はい! DNSサーバーにクエリを送信し、そのソフトウェア名とバージョンを尋ねることができます。これを行うには、端末で以下のコマンドを実行します。
形式は次のようになります…
$ dig @<dns_server_ip_address> version.bind chaos txt
たとえば、
dig @10.180.8.115 version.bind chaos txt
サンプル出力:
; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6_4.6 <<>> @10.180.8.115 version.bind chaos txt ; (1 server found) ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 37376 ;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 0 ;; WARNING: recursion requested but not available ;; QUESTION SECTION: ;version.bind. CH TXT ;; ANSWER SECTION: version.bind. 0 CH TXT "9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6_4.6" ;; AUTHORITY SECTION: version.bind. 0 CH NS version.bind. ;; Query time: 2 msec ;; SERVER: 10.180.8.115#53(10.180.8.115) ;; WHEN: Fri Oct 18 16:20:20 2013 ;; MSG SIZE rcvd: 95
出力で、行をチェックアウトします。
;; ANSWER SECTION: version.bind. 0 CH TXT "9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6_4.6"
他のDNSサーバーからの同様の結果は次のようになります
;; ANSWER SECTION: version.bind. 1896586030 IN TXT "Microsoft DNS 6.1.7100 (1DB1)"
または
;; ANSWER SECTION: version.bind. 0 CH TXT "dnsmasq-1.6"
クライアントはどのようにしてDNSバージョン情報を取得できますか?
ほとんどのDNSサーバーは、version.bindラベルのCHAOSクラスのバージョン情報DNSTXTレコードで構成されています。
上記のコマンドを使用してDNSバージョン情報を取得しないのはなぜですか?
前に述べたように、ほとんどのDNSサーバーはバージョン情報DNS TXTレコードで構成されており、セキュリティ上の理由からそのような詳細を非表示にしているサーバーはほとんどありません。実際、すべてのDNSサーバーは、攻撃者を遠ざけるためにバージョン情報を隠す必要があります。このチュートリアルをチェックして、リゾルバーからDNSバージョン情報を非表示にする方法を確認してください。 。
dig以外に使用できるコマンドはありますか?
はい! DNSフィンガープリント用のツールはたくさんあります。たとえば、 fpdns は人気のあるDNSフィンガープリントツールです。
次もお読みください:DNSで再帰を有効にする必要がありますか?脆弱です!