1

ネットワーク内のノードで MAC アドレスを削除しようとしています。ここで、iptables と ebtables の 2 つのツールを試しましたが、どちらも失敗しました。

  • iptables -A INPUT -m mac --mac-source 00:0F:EA:91:04:08 -j DROPその結果、「iptables: No chain/target/match by that name.」という結果になります。
  • ebtables -A INPUT -s 00:11:22:33:44:55 -j DROP「FATAL: Module ebtables not found. The kernel does not support the ebtables 'filter' table.」という結果になります。

カーネル バージョン 2.6.32 を使用しています。uname -r結果は "2.6.32-042stab049.6.emulab.1" になります。

どうすれば(少なくとも1つ)それを機能させることができますか? この失敗について検索しましたが、多くの情報が見つかりません。カーネルが ebtables 'filter' テーブルをサポートするようにするにはどうすればよいですか? 「その名前でチェーン/ターゲット/一致がない」というのはなぜですか?

4

2 に答える 2

0

実際に INPUT チェーンをリストできることを確認します。

# iptables -L

うまくいけば、それは次のようなものでなければなりません:

Chain INPUT (policy ACCEPT)
target     prot opt source               destination

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

ebtables に関しては、実際にはカーネルの一部ではないようです。

于 2013-03-22T02:41:27.840 に答える
0

カーネル構成で ebtables オプションを有効にする必要があります

CONFIG_BRIDGE_NF_EBTABLES=y
CONFIG_BRIDGE_EBT_BROUTE=y
CONFIG_BRIDGE_EBT_T_FILTER=y
CONFIG_BRIDGE_EBT_T_NAT=y
CONFIG_BRIDGE_EBT_802_3=y
CONFIG_BRIDGE_EBT_AMONG=y
CONFIG_BRIDGE_EBT_ARP=y
CONFIG_BRIDGE_EBT_IP=y
CONFIG_BRIDGE_EBT_IP6=y
CONFIG_BRIDGE_EBT_LIMIT=y
CONFIG_BRIDGE_EBT_MARK=y
CONFIG_BRIDGE_EBT_PKTTYPE=y
CONFIG_BRIDGE_EBT_STP=y
CONFIG_BRIDGE_EBT_VLAN=y
CONFIG_BRIDGE_EBT_ARPREPLY=y
CONFIG_BRIDGE_EBT_DNAT=y
CONFIG_BRIDGE_EBT_MARK_T=y
CONFIG_BRIDGE_EBT_REDIRECT=y
CONFIG_BRIDGE_EBT_SNAT=y
CONFIG_BRIDGE_EBT_LOG=y
CONFIG_BRIDGE_EBT_ULOG=y
CONFIG_BRIDGE_EBT_NFLOG=y

その後、カーネルをビルドして再試行してください。iptables に関連する何かが欠落している可能性もあります。

于 2015-12-03T10:56:43.610 に答える