.\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .\" .\" Japanese Version Copyright (c) 2001-2004 Yuichi SATO .\" all right reserved. .\" Translated 2001-12-01, Yuichi SATO .\" Updated & Modified 2004-02-08, Yuichi SATO .\" Updated 2013-04-08, Akihiro MOTOKI .\" .TH IP6TABLES 8 "" "iptables 1.4.18" "iptables 1.4.18" .\" .\" Man page written by Andras Kis-Szabo .\" It is based on iptables man page. .\" .\" iptables page by Herve Eychenne .\" It is based on ipchains man page. .\" .\" ipchains page by Paul ``Rusty'' Russell March 1997 .\" Based on the original ipfwadm man page by Jos Vos .\" .\" This program is free software; you can redistribute it and/or modify .\" it under the terms of the GNU General Public License as published by .\" the Free Software Foundation; either version 2 of the License, or .\" (at your option) any later version. .\" .\" This program is distributed in the hope that it will be useful, .\" but WITHOUT ANY WARRANTY; without even the implied warranty of .\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the .\" GNU General Public License for more details. .\" .\" You should have received a copy of the GNU General Public License .\" along with this program; if not, write to the Free Software .\" Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. .\" .\" .SH 名前 ip6tables \(em IPv6 パケットフィルタの管理 .SH 書式 \fBip6tables\fP [\fB\-t\fP \fItable\fP] {\fB\-A\fP|\fB\-C\fP|\fB\-D\fP} \fIchain rule\-specification\fP [\fIoptions...\fP] .PP \fBip6tables\fP [\fB\-t\fP \fItable\fP] \fB\-I\fP \fIchain\fP [\fIrulenum\fP] \fIrule\-specification\fP [\fIoptions...\fP] .PP \fBip6tables\fP [\fB\-t\fP \fItable\fP] \fB\-R\fP \fIchain rulenum rule\-specification\fP [\fIoptions...\fP] .PP \fBip6tables\fP [\fB\-t\fP \fItable\fP] \fB\-D\fP \fIchain rulenum\fP [\fIoptions...\fP] .PP \fBip6tables\fP [\fB\-t\fP \fItable\fP] \fB\-S\fP [\fIchain\fP [\fIrulenum\fP]] .PP \fBip6tables\fP [\fB\-t\fP \fItable\fP] {\fB\-F\fP|\fB\-L\fP|\fB\-Z\fP} [\fIchain\fP [\fIrulenum\fP]] [\fIoptions...\fP] .PP \fBip6tables\fP [\fB\-t\fP \fItable\fP] \fB\-N\fP \fIchain\fP .PP \fBip6tables\fP [\fB\-t\fP \fItable\fP] \fB\-X\fP [\fIchain\fP] .PP \fBip6tables\fP [\fB\-t\fP \fItable\fP] \fB\-P\fP \fIchain target\fP [\fIoptions...\fP] .PP \fBip6tables\fP [\fB\-t\fP \fItable\fP] \fB\-E\fP \fIold\-chain\-name new\-chain\-name\fP .SH 説明 \fBip6tables\fP は Linux カーネルの IPv6 パケットフィルタルールのテーブルの設定・管理・検査に使用される。 複数の異なるテーブルを定義できる。 各テーブルには組み込みチェインがいくつかあり、 さらにユーザー定義のチェインを加えることもできる。 .PP 各チェインは、パケット群にマッチするルールのリストである。 各ルールはマッチしたパケットに対する処理を規定する。 パケットに対する処理は「ターゲット」と呼ばれ、 同じテーブル内のユーザー定義チェインにジャンプすることもできる。 .SH ターゲット ファイアウォールのルールは、パケットを判断する基準とターゲットを指定する。 パケットがマッチしない場合、チェイン内の次のルールが評価される。 パケットがマッチした場合、 ターゲットの値によって次のルールが指定される。 ターゲットの値には、ユーザー定義チェインの名前、または特別な値 \fBACCEPT\fP, \fBDROP\fP, \fBQUEUE\fP, \fBRETURN\fP のいずれか 1 つを指定する。 .PP \fBACCEPT\fP はパケット通過、 \fBDROP\fP はパケット廃棄を意味する。 \fBQUEUE\fP はパケットをユーザー空間に渡すという意味である。 (ユーザー空間プロセスがパケットをどのように受信するかは、個々のキューハンドラにより異なる。バージョン 2.4.x および 2.6.13 までの 2.6.x のカーネルでは \fBip_queue\fP キューハンドラが読み込まれる。バージョン 2.6.14 以降のカーネルでは、これに加えて \fBnfnetlink_queue\fP キューハンドラも利用できる。ターゲットが QUEUE のパケットは、キュー番号 '0' に送信される。この man ページの後ろの方で説明されている \fBNFQUEUE\fP ターゲットについても参照のこと。) \fBRETURN\fP は、このチェインを辿るのを中止して、前の (呼び出し元) チェインの次のルールから再開するという意味である。組み込みチェインの最後に到達した場合、 または組み込みチェインでターゲット \fBRETURN\fP を持つルールにマッチした場合、/パケットをどのように処理するかは、 そのチェインのポリシーで指定されたターゲットにより決まる。 .SH テーブル 現在のところ 5 つの独立なテーブルが存在する (ある時点でどのテーブルが存在するかは、 カーネルの設定やどういったモジュールが存在するかに依存する)。 .TP \fB\-t\fP, \fB\-\-table\fP \fItable\fP このオプションは、このコマンドが操作するパケットマッチングテーブルを指定する。 カーネルで自動モジュールローディングが有効になっている場合、 そのテーブルで必要となるモジュールがまだロードされていなければ、 ロードされる。 以下のテーブルがある。 .RS .TP .4i \fBfilter\fP: (\-t オプションが指定されていない場合は) これがデフォルトのテーブルとなる。 このテーブルには、 \fBINPUT\fP (ローカルマシンのソケット宛のパケットに対するチェイン)、 \fBFORWARD\fP (マシンを経由して転送されるパケットに対するチェイン)、 \fBOUTPUT\fP (ローカルマシンで生成されたパケットに対するチェイン) という組み込みチェインがある。 .TP \fBnat\fP: このテーブルは新しい接続を開くパケットの場合に参照される。 \fBPREROUTING\fP (パケットが入ってきた場合、すぐにそのパケットを変換するためのチェイン)、 \fBOUTPUT\fP (ローカルで生成されたパケットをルーティングの前に変換するためのチェイン)、 \fBPOSTROUTING\fP (パケットが出て行くときに変換するためのチェイン) という 3 つの組み込みチェインがある。 カーネル 3.7 以降で利用可能である。 .TP \fBmangle\fP: このテーブルは特別なパケット変換に使われる。 カーネル 2.4.17 までは、 組み込みチェインは \fBPREROUTING\fP (パケットが入ってきた場合、 すぐにそのパケットを変換するためのチェイン)・ \fBOUTPUT\fP (ローカルで生成されたパケットを ルーティングの前に変換するためのチェイン) の 2 つであった。 カーネル 2.4.18 からは、これらに加えて \fBINPUT\fP (マシン自体に入ってくるパケットに対するチェイン)、 \fBFORWARD\fP (マシンを経由するパケットに対するチェイン)、 \fBPOSTROUTING\fP (パケットが出て行くときに変換するためのチェイン) という 3 つの組み込みチェインもサポートされている。 .TP \fBraw\fP: このテーブルは、NOTRACK ターゲットとの組み合わせで使用され、接続追跡 (connection tracking) の対象外とする通信を設定するのに使われる。このテーブルは netfilter フックに優先度高で登録されているので、 ip_conntrack や他の IP テーブルよりも前に呼ばれる。このテーブルでは、 \fBPREROUTING\fP (任意のネットワークインタフェースから到着するパケットに対するチェイン)、 \fBOUTPUT\fP (ローカルプロセスが生成したパケットに対するチェイン) の 2 つの組み込みチェインが提供されている。 .TP \fBsecurity\fP: このテーブルは、強制アクセス制御 (Mandatory Access Control; MAC) のネットワークルール用に使用される。例えば、 \fBSECMARK\fP や \fBCONNSECMARK\fP ターゲットにより有効にされるルールなどである。強制アクセス制御は、SELinux などの Linux セキュリティモジュールにより実装されている。セキュリティテーブルはフィルタテーブルの後に呼ばれる。これにより、 強制アクセス制御のルールよりも前に、フィルタテーブルの任意アクセス制御 (Discretionary Access Control; DAC) のルールを適用することができる。 このテーブルでは、 \fBINPUT\fP (マシン自体に入ってくるパケットに対するチェイン)、 \fBOUTPUT\fP (ローカルマシンで生成されたパケットに対してルーティング前に変更を行うためのチェイン)、 \fBFORWARD\fP (マシンを経由して転送されるパケットに対してルーティング前に変更を行うためのチェイン) の 3 つの組み込みチェインが提供されている。 .RE .SH オプション \fBip6tables\fP で使えるオプションは、いくつかのグループに分けられる。 .SS コマンド これらのオプションは、実行したい動作を指定する。 以下の説明で注記されていない限り、 コマンドラインで指定できるのはこの中の一つだけである。 長いバージョンのコマンド名とオプション名は、 \fBip6tables\fP が他のコマンド名やオプション名と区別できる範囲で (後ろの方の文字を省略して) 指定することもできる。 .TP \fB\-A\fP, \fB\-\-append\fP \fIchain rule\-specification\fP 選択されたチェインの最後に 1 つ以上のルールを追加する。送信元や送信先の名前の解決を行って、 複数のアドレスに展開された場合は、可能なアドレスの組合せそれぞれに対してルールが追加される。 .TP \fB\-C\fP, \fB\-\-check\fP \fIchain rule\-specification\fP 指定したルールにマッチするルールが指定されたチェインにあるかを確認する。 このコマンドでマッチするエントリを探すのに使用されるロジックは \fB\-D\fP と同じだが、 既存の iptables 設定は変更されず、終了コードは成功、失敗を示すのに使用される。 .TP \fB\-D\fP, \fB\-\-delete\fP \fIchain rule\-specification\fP .ns .TP \fB\-D\fP, \fB\-\-delete\fP \fIchain rulenum\fP 選択されたチェインから 1 つ以上のルールを削除する。 このコマンドには 2 つの使い方がある: チェインの中の番号 (最初のルールを 1 とする) を指定する場合と、 マッチするルールを指定する場合である。 .TP \fB\-I\fP, \fB\-\-insert\fP \fIchain\fP [\fIrulenum\fP] \fIrule\-specification\fP 選択されたチェインにルール番号を指定して 1 つ以上のルールを挿入する。 ルール番号が 1 の場合、ルールはチェインの先頭に挿入される。 ルール番号が指定されなかった場合、 ルール番号のデフォルトは 1 となる。 .TP \fB\-R\fP, \fB\-\-replace\fP \fIchain rulenum rule\-specification\fP 選択されたチェインのルールを置き換える。送信元や送信先の名前が複数のアドレスに展開された場合は、このコマンドは失敗する。ルール番号は 1 からはじまる。 .TP \fB\-L\fP, \fB\-\-list\fP [\fIchain\fP] 選択されたチェインにある全てのルールを一覧表示する。 チェインが指定されない場合、全てのチェインのリストが一覧表示される。 他のコマンドと同様に、 指定されたテーブル (デフォルトは filter) に対して作用する。 .IP "" DNS の逆引きを避けるために、 \fB\-n\fP オプションと共に使用されることがよくある。 \fB\-Z\fP (ゼロクリア) オプションを同時に指定することもできる。 この場合、 各チェインの表示とゼロクリアは同時に行われ、カウンタ値に抜けが発生することはない。 細かな出力内容は同時に指定された他の引き数により変化する。 以下のように \fB\-v\fP オプションを指定しない限り、ルールの表示は一部省略されたものとなる。 .nf ip6tables \-L \-v .fi .TP \fB\-S\fP, \fB\-\-list\-rules\fP [\fIchain\fP] 選択されたチェインにある全てのルールを表示する。 チェインが指定されない場合、 ip6tables\-save と同じく、 全てのチェインの情報が表示される。 他のコマンドと同様に、 指定されたテーブル (デフォルトは filter) に対して作用する。 .TP \fB\-F\fP, \fB\-\-flush\fP [\fIchain\fP] 選択されたチェイン (何も指定されなければテーブル内の全てのチェイン) の内容を全消去する。これは全てのルールを 1 個ずつ削除するのと同じである。 .TP \fB\-Z\fP, \fB\-\-zero\fP [\fIchain\fP [\fIrulenum\fP]] すべてのチェインのパケットカウンタとバイトカウンタをゼロにする。チェインやチェイン内のルールが指定された場合には、指定されたチェインやルールのカウンタだけをゼロにする。クリアされる直前のカウンタを見るために、 \fB\-L\fP, \fB\-\-list\fP (一覧表示) オプションと同時に指定することもできる (上記を参照)。 .TP \fB\-N\fP, \fB\-\-new\-chain\fP \fIchain\fP 指定した名前のユーザー定義チェインを作成する。 同じ名前のターゲットが存在していてはならない。 .TP \fB\-X\fP, \fB\-\-delete\-chain\fP [\fIchain\fP] 指定したユーザー定義チェインを削除する。 そのチェインが参照されていてはならない。 チェインを削除する前に、そのチェインを参照しているルールを削除するか、別のチェインを参照するようにしなければならない。 チェインは空でなければならない、つまりチェインにルールが登録されていてはいけない。 引き数が指定されなかった場合、テーブルにあるチェインのうち組み込みチェイン以外のものを全て削除する。 .TP \fB\-P\fP, \fB\-\-policy\fP \fIchain target\fP チェインのポリシーを指定したターゲットに設定する。指定可能なターゲットは「\fBターゲット\fP」の章を参照すること。 (ユーザー定義ではない) 組み込みチェインにしかポリシーは設定できない。 また、ポリシーのターゲットに、 組み込みチェインやユーザー定義チェインを設定することはできない。 .TP \fB\-E\fP, \fB\-\-rename\-chain\fP \fIold\-chain new\-chain\fP ユーザー定義チェインを指定した名前に変更する。 これは見た目だけの変更なので、テーブルの構造には何も影響しない。 .TP \fB\-A\fP, \fB\-\-append\fP \fIchain rule\-specification\fP 選択されたチェインの最後に 1 つ以上のルールを追加する。送信元や送信先の名前の解決を行って、 複数のアドレスに展開された場合は、可能なアドレスの組合せそれぞれに対してルールが追加される。 .TP \fB\-h\fP ヘルプ。 (今のところはとても簡単な) コマンド書式の説明を表示する。 .SS パラメータ 以下のパラメータは (add, delete, insert, replace, append コマンドで用いられて) ルールの仕様を決める。 .TP \fB\-4\fP, \fB\-\-ipv4\fP \fB\-4\fP オプションを使ったルールを ip6tables\-restore で挿入された場合、(この場合に限り) そのルールは黙って無視される。それ以外の使い方をした場合はエラーが発生する。このオプションを使うと、 IPv4 と IPv6 の両方のルールを一つのルールファイルに記述し、iptables\-restore と ip6tables\-restore の両方でそのファイルを使うことができる。 .TP \fB\-6\fP, \fB\-\-ipv6\fP このオプションは ip6tables と ip6tables\-restore では効果を持たない。 .TP [\fB!\fP] \fB\-p\fP, \fB\-\-protocol\fP \fIprotocol\fP ルールで使われるプロトコル、またはチェックされるパケットのプロトコル。 指定できるプロトコルは、 \fBtcp\fP, \fBudp\fP, \fBudplite\fP, \fBicmpv6\fP, \fBesp\fP, \fBmh\fP と特別なキーワード \fBall\fP のいずれか 1 つか、数値である。 数値には、これらのプロトコルのどれか、またはそれ以外のプロトコルを表す数値を指定することができる。 /etc/protocols にあるプロトコル名も指定できる。 \fBesp\fP 以外の IPv6 拡張ヘッダは指定できない。 \fBesp\fP と \fBipv6\-nonext\fP はバージョン 2.6.11 以降のカーネルで使用できる。 プロトコルの前に "!" を置くと、そのプロトコルを除外するという意味になる。 数値 0 は \fBall\fP と等しい。 これは、プロトコルフィールドが値 0 であるかを直接検査できないことを意味する。 HBH ヘッダとマッチさせるためには、 HBH ヘッダが例え最後にある場合であっても、 \fB\-p 0\fP を使うことはできず、必ず \fB\-m hbh\fP を使う必要がある。 "\fBall\fP" は全てのプロトコルとマッチし、このオプションが省略された際のデフォルトである。 .TP [\fB!\fP] \fB\-s\fP, \fB\-\-source\fP \fIaddress\fP[\fB/\fP\fImask\fP] 送信元の指定。 \fIaddress\fP はホスト名、ネットワーク IP アドレス (\fB/\fP\fImask\fP を指定する)、素の IP アドレスのいずれかである。ホスト名の解決は、カーネルにルールが登録される前に一度だけ行われる。 DNS のようなリモートへの問い合わせで解決する名前を指定するのは非常に良くないことである (この場合にはネットワーク名の解決はサポートされていない)。 \fImask\fP には、ネットワークマスクの左側にある 1 の数を表す数値を指定する。 アドレス指定の前に "!" を置くと、そのアドレスを除外するという意味になる。 フラグ \fB\-\-src\fP は、このオプションの別名である。複数のアドレスを指定することができるが、その場合は (\-A での追加であれば) \fB複数のルールに展開され\fP、 (\-D での削除であれば) 複数のルールが削除されることになる。 .TP [\fB!\fP] \fB\-d\fP, \fB\-\-destination\fP \fIaddress\fP[\fB/\fP\fImask\fP] 宛先の指定。 書式の詳しい説明については、 \fB\-s\fP (送信元) フラグの説明を参照すること。 フラグ \fB\-\-dst\fP は、このオプションの別名である。 .TP \fB\-m\fP, \fB\-\-match\fP \fImatch\fP 使用するマッチ、つまり、特定の通信を検査する拡張モジュールを指定する。 マッチの集合により、ターゲットが起動される条件が構築される。 マッチは先頭から末尾に向けてコマンドラインで指定された順に評価され、 短絡式 (short\-circuit fashion) の動作を行う、つまり、いずれの拡張モジュールが偽 (false) を返した場合、そこで評価は終了する。 .TP \fB\-j\fP, \fB\-\-jump\fP \fItarget\fP ルールのターゲット、つまり、パケットがマッチした場合にどうするかを指定する。ターゲットはユーザー定義チェイン (そのルール自身が入っているチェイン以外) でも、パケットの行方を即時に決定する特別な組み込みターゲットでも、拡張されたターゲット (以下の 「\fBターゲットの拡張\fP」 を参照) でもよい。 このオプションがルールの中で省略された場合 (かつ \fB\-g\fP が使用されなかった場合)、ルールにマッチしてもパケットの行方に何も影響しないが、 ルールのカウンタは 1 つ加算される。 .TP \fB\-g\fP, \fB\-\-goto\fP \fIchain\fP ユーザー定義チェインで処理を継続することを指定する。 \-\-jump オプションと異なり、 return が行われた際にこのチェインでの処理は継続されず、 \-\-jump でこのチェインを呼び出したチェインで処理が継続される。 .TP [\fB!\fP] \fB\-i\fP, \fB\-\-in\-interface\fP \fIname\fP パケットを受信したインターフェース名 (\fBINPUT\fP, \fBFORWARD\fP, \fBPREROUTING\fP チェインに入るパケットのみ)。インターフェース名の前に "!" を置くと、 そのインターフェースを除外するという意味になる。 インターフェース名が "+" で終っている場合、 その名前で始まる任意のインターフェース名にマッチする。このオプションが省略された場合、任意のインターフェース名にマッチする。 .TP [\fB!\fP] \fB\-o\fP, \fB\-\-out\-interface\fP \fIname\fP .\" Currently not supported (header-based) .\" .TP .\" [\fB!\fP] \fB\-f\fP, \fB\-\-fragment\fP .\" This means that the rule only refers to second and further fragments .\" of fragmented packets. Since there is no way to tell the source or .\" destination ports of such a packet (or ICMP type), such a packet will .\" not match any rules which specify them. When the "!" argument .\" precedes the "\-f" flag, the rule will only match head fragments, or .\" unfragmented packets. パケットを送信することになるインターフェース名 (\fBFORWARD\fP, \fBOUTPUT\fP, \fBPOSTROUTING\fP チェインに入るパケットのみ)。 インターフェース名の前に "!" を置くと、 そのインターフェースを除外するという意味になる。 インターフェース名が "+" で終っている場合、 その名前で始まる任意のインターフェース名にマッチする。 このオプションが省略された場合、 任意のインターフェース名にマッチする。 .TP \fB\-c\fP, \fB\-\-set\-counters\fP \fIpackets bytes\fP このオプションを使うと、 (\fBinsert\fP, \fBappend\fP, \fBreplace\fP 操作において) 管理者はパケットカウンタとバイトカウンタを 初期化することができる。 .SS その他のオプション その他に以下のオプションを指定することができる: .TP \fB\-v\fP, \fB\-\-verbose\fP 詳細な出力を行う。 list コマンドの際に、インターフェース名・ (もしあれば) ルールのオプション・TOS マスクを表示させる。 パケットとバイトカウンタも表示される。 添字 'K', 'M', 'G' は、 それぞれ 1000, 1,000,000, 1,000,000,000 倍を表す (これを変更する \fB\-x\fP フラグも見よ)。 このオプションを append, insert, delete, replace コマンドに適用すると、 ルールについての詳細な情報を表示する。 \fB\-v\fP は複数回指定することができ、多く指定するとより多くのデバッグ情報が出力されることだろう。 .TP \fB\-n\fP, \fB\-\-numeric\fP 数値による出力を行う。 IP アドレスやポート番号を数値によるフォーマットで表示する。 デフォルトでは、 iptables は (可能であれば) これらの情報をホスト名、 ネットワーク名、 サービス名で表示しようとする。 .TP \fB\-x\fP, \fB\-\-exact\fP 厳密な数値で表示する。 パケットカウンタとバイトカウンタを、 K (1000 の何倍か)・M (1000K の何倍か)・G (1000M の何倍か) ではなく、 厳密な値で表示する。 このオプションは、 \fB\-L\fP コマンドとしか関係しない。 .TP \fB\-\-line\-numbers\fP ルールを一覧表示する際、そのルールがチェインのどの位置にあるかを表す 行番号を各行の始めに付加する。 .TP \fB\-\-modprobe=\fP\fIcommand\fP チェインにルールを追加または挿入する際に、 (ターゲットやマッチングの拡張などで) 必要なモジュールをロードするために使う \fIcommand\fP を指定する。 .SH マッチングの拡張 .PP iptables は、パケットマッチングとターゲットの拡張を使うことができる。 \fBiptables\-extensions\fP(8) man ページに利用できる拡張のリストが載っている。 .SH 返り値 いろいろなエラーメッセージが標準エラーに表示される。 正しく機能した場合、終了コードは 0 である。 不正なコマンドラインパラメータによりエラーが発生した場合は、 終了コード 2 が返される。 その他のエラーの場合は、終了コード 1 が返される。 .SH バグ バグ? 何それ? ;\-) えーと…、sparc64 ではカウンター値が信頼できない。 .SH "IPCHAINS との互換性" \fBip6tables\fP は、Rusty Russell の ipchains と非常によく似ている。 大きな違いは、チェイン \fBINPUT\fP と \fBOUTPUT\fP が、それぞれローカルホストに入ってくるパケットと、 ローカルホストから出されるパケットのみしか調べないという点である。 よって、どのパケットは 3 つあるチェインのうち 1 つしか通らない (ただし、 ループバックトラフィックだけは例外で、INPUT と OUTPUT の両方のチェインを通る)。 ipchains では、 フォワードされるパケットは 3 つのチェイン全てを通っていた。 .PP その他の大きな違いは、 \fB\-i\fP で入力インターフェース、 \fB\-o\fP で出力インターフェースを表わし、 \fBFORWARD\fP チェインに入るパケットでは入出力両方のインターフェースを指定可能な点である。 ip6tables では、その他にもいくつかの変更がある。 .SH 関連項目 \fBip6tables\-save\fP(8), \fBip6tables\-restore\fP(8), \fBiptables\fP(8), \fBiptables\-apply\fP(8), \fBiptables\-extensions\fP(8), \fBiptables\-save\fP(8), \fBiptables\-restore\fP(8), \fBlibipq\fP(3). .PP packet\-filtering\-HOWTO では、 パケットフィルタリングについての詳細な iptables の使用法が説明されている。 netfilter\-extensions\-HOWTO では、 標準的な配布には含まれない拡張の詳細が説明されている。 netfilter\-hacking\-HOWTO には、内部構造についての詳細な説明がある。 .br \fBhttp://www.netfilter.org/\fP を参照。 .SH 作者 Rusty Russell は、初期の段階で Michael Neuling に相談して iptables を書いた。 .PP Marc Boucher は Rusty に iptables の汎用的なパケット選択のフレームワークを使うように働きかけて、 ipnatctl を使わないようにした。 そして、mangle テーブル、所有者マッチング、 mark 機能を書き、いたるところで使われている素晴らしいコードを書いた。 .PP James Morris は TOS ターゲットと tos マッチングを書いた。 .PP Jozsef Kadlecsik は REJECT ターゲットを書いた。 .PP Harald Welte は ULOG ターゲット、NFQUEUE ターゲット、新しい libiptc、 TTL マッチとターゲット、 libipulog を書いた。 .PP Netfilter コアチームは、Martin Josefsson, Yasuyuki Kozakai, Jozsef Kadlecsik, Patrick McHardy, James Morris, Pablo Neira Ayuso, Harald Welte, Rusty Russell である。 .PP .\" .. and did I mention that we are incredibly cool people? .\" .. sexy, too .. .\" .. witty, charming, powerful .. .\" .. and most of all, modest .. ip6tables の man ページは、Andras Kis\-Szabo によって作成された。 これは Herve Eychenne によって書かれた iptables の man ページを元にしている。 .SH バージョン .PP この man ページは iptables 1.4.18 について説明している。