EN JA
ipfstat(8)
ipfstat(8) FreeBSD System Manager's Manual ipfstat(8)

名称

ipfstat -パケットフィルタ統計とフィルタリストのレポート

書式

ipfstat [ -6aAdfghIilnoRsv ]
 
ipfstat -t [ -6C ] [ -D <addrport> ] [ -P <protocol> ] [ -S <addrport> ] [ -T <refresh time> ]

解説

ipfstat コマンドはシンボル _fr_flags, _frstats, _filterin, _filterout を用いて /dev/kmem を調べます。このコマンドが実行できかつ機能しうるためには、/dev/kmem とカーネルそのものを読める必要があります。カーネルの名前は、デフォルトでは /boot/kernel/kernel とつけられています。

ipfstat のデフォルトの動作は、カーネルがフィルタを通してパケットをやりとりする間に蓄積された統計を取り出して表示することです。

オプション

-6
IPv6 用のフィルタのリストと状態を、使用可能であれば、表示します。
-a
アカウンティングを行なっているフィルタリストを表示します。更に、それぞれのルールに対してカウントされたバイト数を表示します。
-A
パケット認証統計を表示します。
-C
-t オプションと組み合わせる場合のみ、本オプションは有効です。 top において、"closed"の状態も表示します。通常、CLOSE_WAIT のプロトコル状態になった TCP 接続は、表示されません。本オプションを有効にすると、すべての状態のエントリが表示されます。
-d
データを表示する時に、デバッグ出力を生成します。
-D <addrport>
-t オプションと組み合わせる場合のみ、本オプションは有効です。 top 形式の状態表示対象のエントリを、終点 IP アドレスとポートが addrport 引数にマッチするもののみに限定します。 addrport の指定は ipaddress[,port] という形式です。 ipaddress と port は、数値か文字列 "any" (それぞれ、任意の IP アドレスまたは任意のポートを指定) です。 -D オプションが指定されない場合、" -D any,any"になります。
-f
フラグメントの状態情報 (統計) と、もしも存在していたら、(カーネル内に) 保存された状態情報を表示します。
-g
設定済みのグループを表示します (アクティブのものと非アクティブのものの両方)。
-h
ルール毎にそれぞれがヒットを記録する回数を表示します。 -i とともに用います。
-i
カーネルの IP 処理の入力側に用いられるフィルタリストを表示します。
-I
「非アクティブ」フィルタリストの詳細を取り出す処理と、「アクティブ」フィルタリストの詳細を取り出す処理を切り替えます。 -i とともに用いる為のものです。
-n
ルールがプリントされる時にそれぞれの「ルール番号」が示されます。
-o
カーネルの IP 処理の出力側に用いられるフィルタリストを表示します。
-P <protocol>
-t オプションと組み合わせる場合のみ、本オプションは有効です。 top 形式の状態表示対象のエントリを、特定のプロトコルにマッチするもののみに限定します。引数は、プロトコル名 ( /etc/protocols で定義されるもの) か、プロトコル番号です。本オプションを指定しないと、すべてのプロトコルの状態エントリが指定されます。
-R
統計を印刷する間に、アドレスをホスト名に、またポートをサービス名に解決する試みを行いません。
-s
パケット/フローの状態情報 (統計のみ) を表示します;
-sl
(カーネル内に) 保存された状態情報が存在すれば、これを表示します (統計は表示しません)。
-S <addrport>
-t オプションと組み合わせる場合のみ、本オプションは有効です。 top 形式の状態表示対象のエントリを、始点 IP アドレスとポートが addrport 引数にマッチするもののみに限定します。 addrport の指定は ipaddress[,port] という形式です。 ipaddress と port は、数値か文字列 "any" (それぞれ、任意の IP アドレスまたは任意のポートを指定) です。 -S オプションが指定されない場合、" -S any,any"になります。
-t
状態表の表示を、 top(1) がプロセス表を表示する方法で行います。状態は、何種類かの方法でソート可能です。本オプションは、 curses(3) が必要であり、本オプションが組み込まれていることが必要です。本オプションは、すべてのオペレーティングシステムで使用可能とは限りません。 top モードの ipfstat で使用可能なキーについての更なる情報は、後述します。
-T <refreshtime>
-t オプションと組み合わせる場合のみ、本オプションは有効です。本オプションは、top 形式の状態表示の更新頻度を指定します。 refreshtime は、更新間隔を秒単位で指定し、正整数を指定可能です。デフォルト (そして最小更新間隔) は 1 です。
-v
冗長モードで起動します。より多くのデバッグ情報を表示します。 -i または -o のいずれかを使用するとき、回数のような規則に関連しているカウンタは、適合され、そのようなパケットからのバイト数を表示します。 "keep state" (状態を維持) 規則のために、規則に対してアクティブな状態のセッションの数も表示されます。

概要

ipfstat の役割は、現在のカーネルの統計を表示することです。この統計は、カーネルに出入りするパケットにいくつかのフィルタが (存在する場合には) 適切に適用される結果として集められたものです。これは、コマンドラインパラメータが指定されていない時のデフォルトの動作です。

このコマンドは -i-o とともに与えられた時は、その時点でインストールされカーネルに使用されている適切なフィルタルールリストを、取り出して表示するでしょう。

ipfstat が表示する統計のひとつは ticks です。この数値はフィルタが有効になってからどれくらい経ったかを示しています。数値は 0.5 秒おきにインクリメントされます。

TOP 形式の状態表示

-t オプションを使用すると、 ipfstat は top 形式の状態表示モードになります。このモードでは、状態表の表示を、 top がプロセス表を表示する方法で行います。 -C, -D, -P, -S, -T のコマンドラインオプションを使うことで、状態エントリの制限と表示更新の頻度を指定可能です。

top モードでは、次のキーを使用して、表示情報を変更可能です:

b は、逆方向からのパケット/バイトを表示します。
f は、正方向からのパケット/バイトを表示します (デフォルト)。
l は、画面を再描画します。
q は、プログラムを終了します。
s は、ソートに使用する基準を変更します。
r は、ソートに使用する基準を反転します。

状態エントリのプロトコル番号・IP パケット数・バイト数・生存時間で、状態をソート可能です。デフォルトでは、バイト数でソートします。状態は、降順でソートされますが、 r キーを使用することで昇順でソート可能です。

TOP 形式の状態表示の制約

現在のところ、始点・終点・プロトコルの各フィルタおよび更新間隔は、対話的に変更できません。コマンドラインから実行する必要があります。

画面は最低 80 桁必要ですが、このことはチェックされません。 IPv6 モードで top 形式の状態表示を行なうと、とても長い IPv6 アドレスを表示するために、より広い画面が必要になります。

ソートおよびフィルタの基準にマッチする、最初の X-5 エントリだけが表示されます (ここで X は画面の行数です。より多くのエントリを見る唯一の方法は、画面をリサイズすることです)。

関連ファイル

/dev/kmem
 
/dev/ipl
 
/dev/ipstate
 
/kernel

関連項目

ipf(8)

バグ

知られていません。