各位前輩
我目前有個問題,在我設定好bridge(名稱為br0)後,使用-i 要指定輸入的裝置,若為-i br0則可正常運作,但若是-i eth0 或 -i eth1,則rule就完全沒作用
以下是我的設定
OS: Debian 5.03 Lenny
Linux kernel : 2.6.21
iptalbes : 1.4.3
bridge-utils: 1.4
小弟目前透過撰寫iptables的Target Module來修改封包,所以更換了Linux Kernel與iptables,並使用bridge-utils來做Bridge
大致的配置如下
| PC A |------eth0-| Bridge 1 |-eth1---eth1-| Bridge 2 |-eth0------| PC B |
PC A有架設tftp的server由PC B當client去接收
Bridge1 和 Bridge2是一樣的設定,只有ip不同
以下是我設定bridge的步驟
# ifconfig eth0 up
# ifconfig eth1 up
# brctl addbr br0
# brctl stp br0 off
# brctl addif br0 eth0
# brctl addif br0 eth1
# ifconfig br0 xxx.xxx.xxx.xxx up
設定好之後 PC A可以ping到PC B,PC B也可以收到PC A的檔案
但是當我在Bridge1和Bridge 2使用iptables的rules如下
# iptables -A FORWARD -i eth0 -j DROP
照理說,所有PC A和PC B互通的封包,都要DROP,
但是rule好像沒作用
若是我改用
# iptables -A FORWARD -i br0 -j DROP
就有作用,PC A和PC B就不能通了
但就我自己的需求,我需要Bridge內,從eth0進來和eth1進來的封包做不同的事情,
請問各位前輩,是不是哪邊還需要設定,還是iptables或bridge-utils在編譯的過程
還需要增加哪些參數
謝謝