スポンサーリンク

ipmon

名称
書式
解説
オプション
診断
関連ファイル
関連項目
バグ

名称

ipmon − ログしたパケットのために /dev/ipl をモニタする

書式

ipmon [ −abDFhnpstvxX ] [ −N <device> ] [ −o [NSI] ] [ −O [NSI] ] [ −P <pidfile> ] [ −S <device> ] [ −f <device> ] [ <filename> ]

解説

ipmon は、/dev/ipl を読み出すためにオープンし、パケットフィルタから保存 さ れるデータを待ちます。デバイスから読み出されたバイナリデータを可読形 式で再表示します。ただし、IP番号はホスト名に変換されません。また、 ポー ト 番号もサービス名に変換されません。この出力は、デフォルトで標準出力に 向けられます。もしくは、コマンド行でファイル名が指定された場合は、出 力 は そのファイルに向けられます。 -s オプションを使用した場合、出力はそち らでなく syslogd(8) に向けられます。syslog 経由で送られたメッセー ジ で は、 年 月日は削除されていますが、ログに記録された時刻 (マイクロ秒含む) は残っています。

ipmon が生成するメッセージは、空白で区切られたフィールドから成りま す。 全メッセージに共通のフィールドは次の通りです:

1. パケット受信データ。メッセージが syslog に送られた場合には抑制されま す。

2. パケット受信時刻。これは HH:MM:SS.F という形式であり、時間、分、秒、 秒の小数部 (数桁になる可能性があります) です。

3. パケットが処理されたインタフェース名であり、例えば we1 です。

4. ルー ル の グループとルール番号であり、例えば @0:17 です。これらは ipfstat -n で閲覧可能です。

5. 動作。 p は通過を、b はブロックを、S は短いパケットを、 n はどのルー ル にも当てはまらなかったことを、L はログルールを表します。フラグ表示の 優先順序は S, p, b, n, L です。大文字の P または B は、特定のルールでは なくグローバルのログ設定により、パケットがログされたことを意味します。

6. アドレス。これは実際には 3 フィールドからなります。すなわち、送信元 アドレスとポート (コンマで区切ります) と、 -> というシンボルと、宛先 ア ドレスとポートです。例えば 209.53.17.22,80 -> 198.73.220.17,1722 です。

7. PR に続いてプロトコルの名前または番号です。例えば PR tcp です。

8. len に続いてヘッダ長とパケット全体の長さです。例えば len 20 40 で す。

パケットが TCP パケットの場合、追加のフィールドがあります。これは、ハイ フンに続き、設定されているフラグに対応する文字から成ります。文字一覧 と フラグについては、ipf.conf のマニュアルページを参照してください。

パケットが ICMP パケットの場合、最後に 2 フィールドがあります。最初は常 に ‘icmp’ であり、次は ICMP メッセージとサブメッセージタイプであり、 ス ラッ シュ で 区切られます。例えば icmp 3/3 はポート到達不能メッセージで す。

ipmon を正しく動作させるためには、カーネルオプション IPFILTER_LOG を カー ネルで設定する必要があります。詳細については options(4) を参照して ください。

オプション

−a

すべてのデバイスログファイルをオープンし、ログエントリを そ こから読み込みます。すべてのエントリを同じ出力「デバイス」(標準 エラー出力または syslog) に表示します。

−b

パケットの本体をログするルールに対し、ヘッダの後にパケッ ト の内容を 16 進数で出力します。

−D

ipmon をデーモンにします。 ipmon を孤児にするためにサブシェ ルやバックグラウンドを使用する必要はないので、際限なく実行可 能 です。

−f <device>

通 常 IP フィルタログ記録を表すログ情報を読み込むための、別のデ バイス/ファイルを指定します。

−F

現在のパケットログバッファをフラッシュします。フラッシュ さ れたバイト数は (結果が 0 であっても) 表示されます。

−n

可能であれば、IP アドレスとポート番号をホスト名とサービス名 に変換します。

−N <device>

NAT ログ記録読み込み用にオープンするログファイルを <device> に 設定します。

−o

実際にデータを読み込むログファイルを指定します。N - NAT ロ グファイル、 S - 状態ログファイル、I - 通常 IP フィルタログファ イルです。 -a オプションは、-o NSI を指定するのと等価です。

−O

どのログファイルを読み込まないかを指定します。これを -a と いっしょに使用することが、もっとも意味のある使い方でしょう。 パ ラメータとして利用可能な文字は、-o と同様です。

−p

ロ グ メッ セー ジ 中 の ポー ト番号を常に番号で表示し、 /etc/services の検索を試みません。

−P <pidfile>

ipmon プロセスの PID をファイルに書き込みます。デフォルトでは、 /etc/opt/ipf/ipmon.pid (Solaris) か、 /var/run/ipmon.pid (44BSD 以降) か、その他すべてでは /etc/ipmon.pid です。

−s

読み込んだパケット情報をファイルに保存するのでなく、syslogd 経 由で送信します。コンパイル時およびインストール時のデフォルト ファシリティは security です。以下で示すレベルが利用できます。

LOG_INFO − アクションが pass や block でなく、キーワー ド "log" を用いて記録されたパケット。

LOG_NOTICE − 通過し、記録されたパケット

LOG_WARNING − ブロックされ、記録されたパケット

LOG_ERR − すでに記録され、「短い」かもしれないと見なされたパケッ ト

−S <device>

状態ログ記録読み込み用にオープンするログファイルを <device> に 設定します。

−t

tail(1) と似た方法で入力ファイル/デバイスから読み込みます。

−v

TCP ウィンドウ、確認応答、シーケンスフィールドを表 示 し ま す。

−x

パケットデータを 16 進数で表示します。

−X

ログヘッダ記録データを 16 進数で表示します。

診断

ipmon は、読み込むデータは、どう保存すべきかについての一貫性がとれてい ると想定しています。記録されたデータから異常を検知するテストに失敗し た 場合、処理を中断します。

関連ファイル

/dev/ipl
/dev/ipnat
/dev/ipstate
/etc/services

関連項目

ipl(4), ipf(8), ipfstat(8), ipnat(8)

バグ

もし見つけたら、darrenr@pobox.com に E メールを送って下さい。

スポンサーリンク