iptables パラメータはどのように結合されますか?

iptables パラメータはどのように結合されますか?

何度も検索しましたが、iptables パラメータの組み合わせ方に関する情報は見つかりません。

IPアドレスへのトラフィックまたはIPアドレスからのトラフィックを一致させたい場合、 を実行できますか-s a.b.c.d -d a.b.c.d?つまり、-s-dパラメータは次のように組み合わせられます。または(パケットがいずれかに一致する) またはそして(パケットはすべて一致します)?

-m iprange多少関連しますが、と-sはどのように-d相互作用しますか? つまり、 を使用し-m iprange --src-range 10.0.0.1-10.0.0.8て範囲を指定し、 を追加し-s !10.0.0.5て例外を作成できますか?

答え1

学習する最良の方法はテストすることです。 と を組み合わせることはできます-s-d、それが意味を成すかどうかは、どのテーブルでルールを使用するかによって異なります。

1 つのルールのすべてのパラメータは ですAND。 必要に応じてOR、トラフィックを送信するテーブルを作成できます。

いくつかの組み合わせではエラーが発生しますが、やはり試してみるのが最善です。

ポリシーが accept で、ルールが一致する場合にのみ一致させたいとします。ターゲットはデフォルトと同じになるため、ルールを追加します。iptables -A OUTPUT -s x.x.x.x -d x.x.x.x -j ACCEPTルールは影響はありませんが、カウンターとともに表示されますiptables -vnL

より高度なログ記録などもありますが、これはルールをすばやくテストするための簡単な方法です。(もちろん、tcpdump も役立ちます)

もう一度言いますが、iprange一番良いのはテストすることです。最悪の場合、ルールを追加しようとするとエラーが発生します。(質問のこの部分については、他の誰かがより良い回答をしてくれることを願っています)

関連情報