配置環境
硬件:雙網卡的PC,eth1 eth2; PC1,PC2;
PC1<------>eth1----PC---eth2<------------------------->PC2
軟件:Linux kernel 4.4.52
設置流程
創建橋
brctl addbr BR32
增加橋端口
brctl addif BR32 eth1 eth2;
激活橋連接
ip link set BR32 up
linux 系統配置
/proc/sys/net/bridge/bridge-nf-filter-vlan-tagged = 1
修改此參數爲1
/proc/sys/net/bridge/bridge-nf-filter-vlan-tagged = 0
此時 vlan 包將經過 iptbables 的 FORWARD 鏈。
可以通過iptables 設置對應的過濾規則。
如果當前系統中沒有/proc/sys/net/bridge/目錄
通過修改配置文件 在/etc/sysctl.conf中添加
net.bridge.bridge-nf-call-arptables = 1
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.bridge.bridge-nf-filter-vlan-tagged = 1
sysctl -p 執行後 確認 bridge 正常
如果出現 缺少文件的現象
sysctl: cannot stat /proc/sys/net/bridge/bridge-nf-call-iptables: 沒有那個文件或目錄
則確認是否驅動加載完成
如果不完整 modprobe br_netfilter 加載bridge 驅動即可