linux下搭建网桥
接上一篇搭建DHCP服务器,这里我们搭建一个网桥,将eth0 eth1都桥接到虚拟网卡上,然后当eth0或eth1上有设备插入时为其自动分配IP地址,ip地址为192.168.100.x。
1.安装 brctl工具
sudo apt-get install bridge-utils
2.配置虚拟网卡br0
vim /etc/network/interfaces
auto eth0
iface eth0 inet manual //改成手动配置
auto eth1
iface eth1 inet manual //改成手动配置
auto br0
iface br0 inet static
address 192.168.100.1 //这里面用的就是之前在dhcpd.conf中配置了subnet。
netmask 255.255.255.0
network 192.168.100.0
broadcast 192.168.100.255
bridge_ports eth0 eth1 //需要被桥接到br0上的网卡
bridge_stp off
bridge_fd 0
bridge_maxwait 0
bridge_maxage 12
注意:在interfaces中不要配置lo这个回环的虚拟网卡,否则可能导致配置网桥失败,ifconfig中查看不到br0的信息。
3.修改DHCPD管理的网卡为br0
vim /etc/default/isc-dhcp-server
INTERFACES=“br0”
重启设备通过ifconfig可以查看到br0的虚拟网卡。并且网卡分配的IP为192.168.100.1.为DHCP服务器中配置的网关地址。
在eth0和eth1插入PC,查看PC的网卡信息,是否是新分配的信息,如果是同一台PC不管是插入eth0和eth1的哪一个接口,他们分配的IP是一样的,这里说明自动分配的IP是通过MAC地址来区分不同设备。对于同一个设备因为MAC地址没有变化,所以不管插在那个lan口上获取的Ip都一样。
如果网桥打开失败,可以利用brctl addbr bridge命令手动添加网桥测试,如果提示add bridge failed: Package not installed,请检查内核编译中是否选择了网桥功能,需要配置CONFIG_BRIDGE=y
参考:
https://blog.51cto.com/tong707/2124716
https://www.cnblogs.com/ruiy/p/4663516.html
https://www.cnblogs.com/zhangjianghua/p/9185039.html
https://www.cnblogs.com/weifeng1463/p/7614461.html