doc/ja/man/man1/ipftest.1
Jun Kuriyama 50d39f7b02 Catch up to 3.0-19980827-SNAP (3rd and last!)
Submitted by:	Kazuo Horikawa <k-horik@yk.rim.or.jp>
1998-10-15 16:06:18 +00:00

135 lines
3.9 KiB
Groff

.TH ipftest 1
.\" jpman %Id: ipftest.1,v 1.3 1998/10/15 13:05:45 kuma Stab %
.SH 名称
ipftest \- 任意の入力に対してパケットフィルタルールをテストする
.SH 書式
.B ipftest
[
.B \-vbdPSTEHX
] [
.B \-I
interface
]
.B \-r
<filename>
[
.B \-i
<filename>
]
.SH 解説
.PP
\fBipftest\fP は、
フィルタルール集合をあるべき場所に置かずにテストできるようにする
ために提供されています。
これは動作して、フィルタルールの効果をテストします。
安全な IP 環境を提供するに際し、混乱を最小にできればよいということです。
.PP
\fBipftest\fP は、\fBipf\fP の標準ルールセットを解釈し、
これを入力に対して適用し、結果として出力を返します。
しかし、フィルタを通過したパケットに対して \fBipftest\fP が返すのは、
次の 3 つの値のうちの 1 つです: pass, block, nomatch。
これは、
パケットがフィルタルールセットを通過するにあたって何が発生しているのかに関し、
オペレータの理解を助けることを意図しています。
.PP
\fB\-S\fP, \fB\-T\fP, \fB\-E\fP のいずれのオプションも使用しない場合、
\fBipftest\fP は固有のテキスト入力フォーマットを使用し、
「擬似」IP パケットを生成します。
使用するフォーマットは次のとおりです:
.nf
"in"|"out" "on" if ["tcp"|"udp"|"icmp"]
srchost[,srcport] dsthost[,destport] [FSRPAU]
.fi
.PP
あるインタフェース (if) にて、
入る ("in") または出る ("out") パケットを生成できます。
オプションとして主要プロトコル 3 つの中から 1 つを選択できます。
TCP または UDP の場合、ポートパラメータの指定も必要です。
TCP が選択された場合、(オプションとして) 最後に TCP フラグを指定可能です。
以下に例を数個示します:
.nf
# le0 に到着する UDP パケット
in on le0 udp 10.1.1.1,2210 10.2.1.5,23
# localhost から le0 に到着する IP パケット - うーむ :)
in on le0 localhost 10.4.12.1
# SYN フラグを設定されて le0 から出て行く TCP パケット
out on le0 tcp 10.4.12.1,2245 10.1.1.1,23 S
.fi
.SH オプション
.TP
.B \-v
冗長モード。
通過したまたはしなかった入力パケットに対して
ルールのどの部分がマッチしたのかに関し、より詳しい情報を提供します。
.TP
.B \-d
フィルタルールデバッグをオンにします。
現在は、IP ヘッダチェックにおいて、ルールがマッチしなかった理由を表示
するだけです
(アドレス/ネットマスクなど)。
.TP
.B \-b
パケットをフィルタに通した結果の出力を、短いまとめ (1 語)、
すなわち "pass", "block", "nomatch" のいずれかにします。
後戻りして確認する際に使用します。
.TP
.BR \-I \0<interface>
(ルールのマッチに使用される) インタフェース名を、指定された名前に設定します。
この方法無しにはパケットとインタフェースとを関連付けられない、
\fB\-P\fR, \fB\-S\fR, \fB\-T\fP, \fB\-E\fP の各オプションにおいて有用です。
通常の「テキストパケット」は、この設定に優先します。
.TP
.B \-P
\fB\-i\fP で指定される入力ファイルは、
libcap (すなわち tcpdump バージョン 3) が生成したバイナリファイルです。
このファイルから読まれたパケットは、(ルールに対する) 入力になります。
インタフェースは \fB\-I\fP で指定可能です。
.TP
.B \-S
入力ファイルは「スヌープ」フォーマット (RFC 1761 参照) です。
パケットはこのファイルから読み取られ、
任意のインタフェースからの入力として使用されます。
おそらく現在のところ、これが最も有用な入力タイプでしょう。
.TP
.B \-T
入力ファイルは tcpdump のテキスト出力です。
現在サポートされているテキストフォーマットは、
次の tcpdump オプションの組み合わせの出力です:
.PP
.nf
tcpdump -n
tcpdump -nq
tcpdump -nqt
tcpdump -nqtt
tcpdump -nqte
.fi
.LP
.TP
.B \-H
入力ファイルは16 進数であり、パケットのバイナリ構造を表現する必要があります。
IP ヘッダの長さが正しくなくても、長さは補正されません。
.TP
.B \-X
入力ファイルは IP パケットのテキスト記述からなります。
.TP
.B \-E
入力ファイルは etherfind のテキスト出力です。
現在サポートされているテキストフォーマットは、
次の etherfind オプションの組み合わせの出力です:
.PP
.nf
etherfind -n
etherfind -n -t
.fi
.LP
.TP
.BR \-i \0<filename>
入力を得るファイル名を指定します。デフォルトは標準入力です。
.TP
.BR \-r \0<filename>
フィルタルールを読み取るファイル名を指定します。
.SH 関連項目
ipf(5), ipf(8), snoop(1m), tcpdump(8), etherfind(8c)
.SH バグ
入力形式によっては、テストに有用なことがらすべてをカバーできるほど
十分に多種多様なパケットを表現できません。