EN JA
NG_IPFW(4)
NG_IPFW(4) FreeBSD Kernel Interfaces Manual NG_IPFW(4)

名称

ng_ipfwnetgraph と IP ファイアウォール間のインタフェース

書式

#include < netinet/ip_var.h>
#include < netgraph/ng_ipfw.h>

解説

ipfw ノードは、 ipfw(4)netgraph(4) サブシステムの間のインタフェースを実装しています。

フック

ipfw ノードは、数字だけを使用した名前でなければならない、フックの任意の数をサポートします。

運用

ng_ipfw モジュールがいったんカーネルにロードされると、 ipfw と名前が付けられた一つのノードが自動的に作成されます。それ以上の ipfw ノードは、作成することができません。いったん破壊されると、ノードを再作成する唯一の方法は、 ng_ipfw モジュールを再びロードすることです。

ipfw(8) ユーティリティの netgraphngtee コマンドのいずれかを使用してパケットは、 netgraph(4) に投入することができます。これらのコマンドは、引数として数値クッキーが供給されることを必要とします。パケットは、名前がクッキー値と等しいフックから送信されます。フックが適合しないなら、パケットは、捨てられます。 netgraph コマンドを通して投入されたパケットは、 struct ipfw_rule_ref でタグ付けをされます。このタグは、パケットが netgraph(4) から ipfw(4) まで戻るべきである、 ipfw(4) 処理に再入することを助ける情報を含んでいます。

netgraph(4) サブシステムからノードによって受信されたパケットは、 struct ipfw_rule_ref タグでタグ付けされなければなりません。パケットは、次の規則で IP ファイアウォール処理に再入します。タグが供給されないなら、パケットは、捨てられます。

コントロールメッセージ

このノードタイプは、一般的なコントロールメッセージだけをサポートします。

シャットダウン

このノードは、 NGM_SHUTDOWN コントロールメッセージを受け取ったときにシャットダウンします。新しい ipfw ノードは、 ng_ipfw モジュールを再びロードすることによってのみ作成することができるので、これを行わないでください。

歴史

ipfw ノードタイプは、 FreeBSD 6.0 で実装されました。

作者

ipfw ノードは、 Gleb Smirnoff <glebius@FreeBSD.org>によって書かれました。
March 2, 2010 FreeBSD