ldns-testns(1)
ldns-testns
Section: User Commands (1)
Updated: 14 Dec 2006
名前
ldns-testns - 簡易的な偽ネームサーバ ツール
SYNOPSYS
ldns-testns [ OPTION ] datafile
説明
ldns-testnsは試験用のDNSクエリーに回答を提供するために使われます。回答は事前に作られており、試験の必要性に合わせることができます。回答は失敗あるいは解析不能になります。
このプログラムはデバッギングが目的です。特に長い設定ファイルでは効率はよくないです。しかし、どんなクエリーに対するどんな回答も与えることができます。これは開発者がクエリーに対する事前に用意したスクリプトで返答するのに役に立ちます。
デフォルトではIPv4のUDPとTCPで待ち受けます。返すヘッダ フラグを持つRRでパケットのRRを指定することができます。
ldns-testnsは製品としての利用を意味しません。
オプション
- -r
- ランダム ポートで待ち受けます。ポート番号は標準出力に表示されます。
- -p port
- 指定したポートで待ち受けます。
- -f num
- 同じポートと同じデータファイルを提供する追加のインスタンスをこの数のぶんだけフォークします。これらは終了しません。'forked pid: <num>'と出力されるので、自分でそれらをkillする必要があります。
- -v
- より多くのデバッグ情報を出力します。饒舌さのレベルを増やすにはこのオプションを複数回与えます。
- -6
- IPv4の代わりにIPv6アドレスにバインドします。-pオプションと一緒に使います。
- datafile
- このデータファイルは起動時に読み込まれます。クエリーとそれらのクエリーの回答で送られるパケットを含みます。データファイルの形式は以下で説明します。
データファイルの形式
データファイルの形式はコメントを与えるために';'を持ちます。エントリーの数は最初から最後まで処理されます。最初に一致したエントリーはクエリーに回答するために使われます。これは行ベースの形式です。DNSリソース レコードはゾーンファイル形式で入力されます。
$ORIGINと$TTLディレクティブを使うことができます。複数行に拡張するためのゾーンファイルの記法'('と')'は許可されていません。
$ORIGIN origin $TTL default_ttl
ENTRY_BEGIN
; first give MATCH lines, that say what queries are matched ; by this entry. ; 'opcode' makes the query match the opcode from the reply ; if you leave it out, any opcode matches this entry. ; 'qtype' makes the query match the qtype from the reply ; 'qname' makes the query match the qname from the reply ; 'serial=1023' makes the query match if ixfr serial is 1023.
MATCH [opcode] [qtype] [qname] [serial=<value>] MATCH [UDP|TCP] MATCH ...
; Then the REPLY header is specified.
REPLY opcode, rcode or flags.
(opcode) QUERY IQUERY STATUS NOTIFY UPDATE
(rcode) NOERROR FORMERR SERVFAIL NXDOMAIN NOTIMPL YXDOMAIN
YXRRSET NXRRSET NOTAUTH NOTZONE
(flags) QR AA TC RD CD RA AD
REPLY ...
; any additional actions to do.
ADJUST copy_id ; 'copy_id' copies the ID from the query to the answer.
; 'sleep=10' sleeps for 10 seconds before giving the answer (TCP is open)
ADJUST [sleep=<num>] ; sleep before giving any reply ADJUST [packet_sleep=<num>] ; sleep before this packet in sequence
SECTION QUESTION <RRs, one per line> ; the RRcount is determined automatically.
SECTION ANSWER <RRs, one per line>
SECTION AUTHORITY <RRs, one per line>
SECTION ADDITIONAL <RRs, one per line>
EXTRA_PACKET ; follow with SECTION, REPLY for more packets. HEX_ANSWER_BEGIN ; follow with hex data
; this replaces any answer packet constructed
; with the SECTION keywords (only SECTION QUERY
; is used to match queries). If the data cannot
; be parsed, ADJUST rules for the answer packet
; are ignored
HEX_ANSWER_END
ENTRY_END
著者
Written by the ldns team as an example for ldns usage, and for testing purposes.
バグの報告の仕方
<ldns-team@nlnetlabs.nl>にバグを報告してください。
著作権
Copyright (C) 2006-2008 NLnet Labs. これはフリーソフトウェアです。無保証です。特定の目的のためへの品質や適合さえありません。