私にはこのような計画があります
ルーター 192.168.2.254/24
eth0-192.168.2.1
br0
イーサネット 1-192.168.4.1/24
ユーザー - 192.168.2.2/24
eth0とeth1をこのように接続すると、パケットはbrctl addbr br0 brctl addif br0 eth0 brctl addif br0 eth1 dhclient br0を通過できます。
ユーザーはルーターに直接pingを送信できますが、そのpingをブロックしたいと思います。
私も試した
iptables -A 出力 -p icmp --icmp 型エコー要求 -j DROP
iptables -A FORWARD -p icmp --icmp-type echo-request -j DROP
ユーザーはまだルーターにpingを送信できます。私が何を間違っているのでしょうか?
答え1
ブリッジは、2 つのインターフェイスを接続するために使用されます。同じサブネット。
異なるサブネットがあり、互いに通信するにはルーティングを有効にする必要がありますが、echo 1 > /proc/sys/net/ipv4/ip_forward
ルーティングはデフォルトで有効になっていないため、互いに通信できません。
編集:異なるサブネット上の2つのインターフェイスをブリッジすることは機能しますが、従来の設定ではありません。この設定を維持するには、トラフィックをブロックするebtables
代わりに使用する必要がありますiptables
。
答え2
ルーターのIPアドレスとしてiptablesを定義する必要があります。どのユーザーもルーターのIPアドレスをpingできません。あなたの例は一般的なiptablesルールです。 pingを防ぐために、icmpプロトコルを削除することは正確です。