1

私は、基本的に DNS 応答を解析して IP アドレスなどを取得するように求める宿題に取り組んでいます。問題は、教授がDNSサーバーからの応答がどのように見えるかを非常に詳細に教えてくれたことですが、サーバーに何を送信すればよいかわかりません. 私の最初の試みはnetcat <ip address of local name server> 53、www.google.com と入力して Enter キーを押して応答を探すことでしたが、何も返されませんでした。

DNS クエリがどのようなものか (クエリの各部分に許可されるバイト数など) を説明できる人はいますか?

4

4 に答える 4

5
  1. Wireshark をダウンロードして実行する
  2. DNS を使用することを行います (キャッシュされたホスト名を使用していないことを確認してください)。
  3. キャプチャされた Wireshark パケットに目を通します。
于 2011-03-05T01:44:07.310 に答える
4

これはRFC 1034のセクション 3.7 でカバーする必要がありますが、実際に内容を読むことは言うまでもなく、ざっと目を通しただけでうっとりしていました。

于 2011-03-05T01:54:06.567 に答える
1

DNS クエリの基本的な形状は、基本的にすべて固定バイト値である短いヘッダーであり、その後に名前を取得し、ドット ( .) をプレフィックスとして付け、各ドットを範囲 1 のバイトに置き換えた場合に得られるものが続きます。 -63 は、次のドットまでの名前の次のセグメントの長さを示し、その後にいくつかの固定値バイトが続きます。基本的なアドレス ルックアップだけを行い、ゾーン転送のような手の込んだ作業を行わない限り、DNS プロトコルについて知っておく必要があるのはこれだけです。

ヘッダーなどのフィールドの詳細については、RFC 1035 を参照してください。または、パケット スニファ ダンプからコピーしてください。変更したい唯一のものは、クエリ ID (プログラムに対する些細なスプーフィング攻撃を避けるために適切にランダムにする必要があります) と、場合によっては RR タイプ (たとえば、IPv6 (AAAA) または逆引き DNS ( PTR) は、A だけに加えて記録されます。

于 2011-03-05T02:13:29.180 に答える
0

これはあなたの質問に直接答えるものではありませんが、コマンドラインで nslookup を実行して、利用可能なオプションを確認してください。MX レコードなどの特定のアイテムを照会するように指示できます。

しかし、プロトコル自体がどのように見えるかにもっと興味がある場合は? この RFC には、必要以上に多くの情報が含まれています: https://www.rfc-editor.org/rfc/rfc1035

于 2011-03-05T01:54:18.527 に答える