iptables -p proto -m protoは重複していますか?

iptables -p proto -m protoは重複していますか?

どこでも「-p tcp -m tcp」が表示されますが、重複しているようです。

「-p」がすでにプロトコルと一致している場合、「-m」が必要なのはなぜですか?

答え1

iptablesはすでにいくつかのモジュールを自動的にロードしているので、最初はこれが重複しているようです。 TCPパケットの特定の属性を確認するために一致パラメータを生成する-pプロトコルを指定できます。-m

このマニュアルでは、プロトコル(-p)を使用すると、一致するすべてのコンテンツをロードするのに十分であると述べています。源泉そして引用すると:

...これらの一致は、UDPおよびICMP一致が暗黙的にロードされるのと同じ意味で暗黙的にロードされます。他の一致は、このセクションの後半(TCP一致セクションの後)を見てみましょう。

multiport複数のポートをフィルタリングする必要があり、一致が一致と同じ方法でロードされないことがわかっている場合は、この一致を使用することをお勧めしますtcp。例:

# iptables -I INPUT -p tcp -m multiport --dports 80,443 -j ACCEPT

簡単に言うと:重複しません。-t filterすべてのルールに対してデフォルトのtable()を宣言する必要はないので、これは単純な表現にすぎません。

関連情報