次のページ 前のページ 目次へ

8. 付録: ipchains と ipfwadm との違い

これらの変更の幾つかはカーネルの変更の結果であり、また幾つかは ipchainsipfwadm との違いの結果です。

  1. 多くの引数は再配置されました: 現在、大文字はコマンドを示し、小文字はオプションを示します。
  2. 任意のチェインがサポートされましたので、組み込みチェインも同様にフラグではなくフルネームで記載する必要があります。 (例. `-I' ではなく `input' と記載します).
  3. `-k' オプションはなくなりました。 `! -y' を使って下さい。
  4. `-b' オプションは、単一の `双方向' ルールというよりも、むしろ実際には2つのルールに対して挿入/追加/削除を行います。
  5. `-b' オプションは 2つのチェックを行うために、 `-C' オプションにて無効化されます。(各々の方向の1つ)
  6. `-l' に対する `-x' オプションは `-v' に変更されました。
  7. もう、複数の送信側と受信側のポートはサポートされません。 望ましくは、ポート幅を否定できることで、多少はその目的を補うでしょう。
  8. インターフェースは(アドレスでなく)名前によってのみ指定できます。 まぁ、どのみち、以前の意味付けは 2.1 カーネルシリーズで静かに変更されたことですし。
  9. パケットの断片化は検査されますので、自動的には素通りしません。
  10. 明示的な計数チェインは廃止されました。
  11. IP上の任意のプロトコルがテストできます。
  12. SYN と ACK の組合せに対する以前の振舞い (以前は非 TCP パケットは無視していました) は変更されました; SYN オプションは、非 TCP 独特のルールに対しては無効です。
  13. 現在、32ビットマシン上のカウンタは 64ビットであり、32ビットではありません。
  14. 現在、反転オプションがサポートされています。
  15. 現在、 ICMP コードがサポートされています。
  16. 現在、ワイルドカードインターフェースがサポートされています。
  17. 現在、TOS 操作は分別チェックされます: 古いカーネルコードは `ゼロでなければならない' TOS ビットを(不当に)操作されることで、静かに止まってしまっていました; 現在、 ipchains は そのような試みに対して、他の不当な場合と同様にエラーを返します。

8.1 クィックリファレンス一覧

[ 主に、コマンド引数は大文字で、オプション引数は小文字です。]

注意すべき一点として、 マスカレーディングは `-j MASQ' と記載します; これは `-j ACCEPT' と全く異なり、また ipfwadm のような副次的効果としては取り扱いません。

================================================================
| ipfwadm      | ipchains              | 注意
----------------------------------------------------------------
| -A [both]    | -N acct               | `acct' チェインを生成し、
|              |& -I 1 input -j acct   | 出力と入力パケットをそれ
|              |& -I 1 output -j acct  | に通過させます。
|              |& acct                 |
----------------------------------------------------------------
| -A in        | input                 | ターゲットなしのルール
----------------------------------------------------------------
| -A out       | output                | ターゲットなしのルール
----------------------------------------------------------------
| -F           | forward               | [チェイン]として用います。
----------------------------------------------------------------
| -I           | input                 | [チェイン]として用います。
----------------------------------------------------------------
| -O           | output                | [チェイン]として用います。
----------------------------------------------------------------
| -M -l        | -M -L                 |
----------------------------------------------------------------
| -M -s        | -M -S                 |
----------------------------------------------------------------
| -a policy    | -A [chain] -j POLICY  | (でも -r と -m も見て下
|              |                       | さい).
----------------------------------------------------------------
| -d policy    | -D [chain] -j POLICY  | (でも -r と -m も見て下
|              |                       | さい).
----------------------------------------------------------------
| -i policy    | -I 1 [chain] -j POLICY| (でも -r と -m も見て下
|              |                       | さい).
----------------------------------------------------------------
| -l           | -L                    |
----------------------------------------------------------------
| -z           | -Z                    |
----------------------------------------------------------------
| -f           | -F                    |
----------------------------------------------------------------
| -p           | -P                    |
----------------------------------------------------------------
| -c           | -C                    |
----------------------------------------------------------------
| -P           | -p                    |
----------------------------------------------------------------
| -S           | -s                    | 1ポートまたはレンジに対
|              |                       | してのみ機能し、複数で
|              |                       | はありません。
----------------------------------------------------------------
| -D           | -d                    | 1ポートまたはレンジに対
|              |                       | してのみ機能し、複数で
|              |                       | はありません。
----------------------------------------------------------------
| -V           | <none>                | -i [名前] で用います。
----------------------------------------------------------------
| -W           | -i                    |
----------------------------------------------------------------
| -b           | -b                    | 現在、実際には2ルールを
|              |                       | 作成します。
----------------------------------------------------------------
| -e           | -v                    |
----------------------------------------------------------------
| -k           | ! -y                  | -p tcp と共に指定しない
|              |                       | と機能しません。
----------------------------------------------------------------
| -m           | -j MASQ               |
----------------------------------------------------------------
| -n           | -n                    |
----------------------------------------------------------------
| -o           | -l                    |
----------------------------------------------------------------
| -r [redirpt] | -j REDIRECT [redirpt] |
----------------------------------------------------------------
| -t           | -t                    |
----------------------------------------------------------------
| -v           | -v                    |
----------------------------------------------------------------
| -x           | -x                    |
----------------------------------------------------------------
| -y           | -y                    | -p tcp と共に指定しない
|              |                       | と機能しません。
----------------------------------------------------------------

8.2 ipfwadm コマンドの変換例

旧コマンド: ipfwadm -F -p deny

新コマンド: ipchains -P forward DENY

旧コマンド: ipfwadm -F -a m -S 192.168.0.0/24 -D 0.0.0.0/0

新コマンド: ipchains -A forward -j MASQ -s 192.168.0.0/24 -d 0.0.0.0/0

旧コマンド: ipfwadm -I -a accept -V 10.1.2.1 -S 10.0.0.0/8 -D 0.0.0.0/0

新コマンド: ipchains -A input -j ACCEPT -i eth0 -s 10.0.0.0/8 -d 0.0.0.0/0

(インターフェースをアドレスによって指定するのとは違うことに注意して下さい: インターフェース名を用いて下さい。 このマシン上では、 10.1.2.1 は eth0 に相当します)。


次のページ 前のページ 目次へ