配置环境
硬件:双网卡的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 驱动即可