您的当前位置:首页正文

linux系统下配置网桥

来源:九壹网
linux系统下配置网桥

linux系统下配置网桥

设置linux让网桥运行 配置网桥

我们需要让linux知道网桥,首先告诉它,我们想要一个虚拟的以太网桥接口:(这将在主机bridge上执行,不清楚的看看测试场景)

root@bridge:~> brctl addbr br0

其次,我们不需要STP(生成树协议)等。因为我们只有一个路由器,是绝对不可能形成一个环的。我们可以关闭这个功能。(这样也可以减少网络环境的数据包污染):

root@bridge:~> brctl stp br0 off

经过这些准备工作后,我们终于可以做一些立竿见影的事了。我们添加两个(或更多)以太网物理接口,意思是:我们将他们附加到刚生成的逻辑(虚拟)网桥接口br0上。

root@bridge:~> brctl addif br0 eth0 root@bridge:~> brctl addif br0 eth1

现在,原来我们的两个以太网物理接口变成了网桥上的两个逻辑端口。那两个物理接口过去存在,未来也不会消失。要不信的话,去看看好了。 .现在他们成了逻辑网桥设备的一部分了,所以不再需要IP地址。下面我们将这些IP地址释放掉

root@bridge:~> ifconfig eth0 down root@bridge:~> ifconfig eth1 down root@bridge:~> ifconfig eth0 0.0.0.0 up root@bridge:~> ifconfig eth1 0.0.0.0 up

好了!我们现在有了一个任何IP地址都没有的box w/o了。 好了,这下如果你想通过TP配置你的防火墙或路由器的话,你就只能通过本地的控制端口了。你不会告诉我你的机器上连串行端口都没有吧?

注:上面红色部分其实是可选的,在试验中,我发现,就算不把原有的网卡地址释放掉,网桥也能工作!但是,为了更规范,或者说为了避免有什幺莫名其妙的问题,最好还是按要求做,执行这四步吧!

最后,启用网桥 root@bridge:~> ifconfig br0 up 可选: 我们给这个新的桥接口分配一个IP地址 root@bridge:~> ifconfig br0 10.0.3.129 或者把最后这两步合成一步:

root@bridge:~> ifconfig br0 10.0.3.129 up 就是多一个up! 这下我们做完了 。 关闭网桥命令

brctl delif ena eth1; brctl delif ena eth0; ifconfig ena down; brctl delbr ena; 总结:

主要命令为brctl

1、创建网桥设备 br0: brctl addbr br0 2、向br0中添加网卡 eth0 eth1 brctl addif eth0 brctl addif eth1

3、从网桥中删除网卡 eth0 eth1 brctl delif eth0 brctl delif eth1

4、删除网桥 br0 : brctl delbr br0

做网桥防火墙需要一台三网卡的服务器,2个网卡做桥接,另外一个配置好ip地址作为管理接口,从而便可以远程登录服务器对防火墙进行管理。

另外也可直接把管理端口配置在br0上,这样可以节约一个网卡:) 在网桥上设置ip地址的命令: ifconfig br0 xxx.xxx.xx.xxx netmask 255.255.xxx.xxx broadcast xxx.xxx.xx.xx

另一例子:

有五台主机。其中一台主机装有linux ,安装了网桥模块,而且有四块物理网卡,分别连接同一网段的其他主机。我们希望其成为一个网桥,为其他四台主机(IP分别为192.168.1.2 ,192.168.1.3,192.168.1.4,192.168.1.5) 之间转发数据包。同时,为了方便管理,希望网桥能够有一个IP(192.168.1.1),那样管理员就可以在192.168.1.0/24网段内的主机上telnet到网桥,对其进行配置,实现远程管理。

前一节中提到,网桥在同一个逻辑网段转发数据包。针对上面的拓扑,这个逻辑网段就是192.168.1.0/24网段。我们为这个逻辑网段一个名称,br0。首先需要配置这样一个逻辑网段。

# brctl addbr br0 (建立一个逻辑网段,名称为br0) 实际上,我们可以把逻辑网段192.168.1.0/24看作使一个VLAN ,而br0则是这个VLAN的名称。

建立一个逻辑网段之后,我们还需要为这个网段分配特定的端口。在Linux中,一个端口实际上就是一个物理网卡。而每个物理网卡的名称则分别为eth0,eth1,eth2,eth3。我们需要把每个网卡一一和br0这个网段联系起来,作为br0中的一个端口。

# brctl addif br0 eth0 (让eth0成为br0的一个端口) # brctl addif br0 eth1 (让eth1成为br0的一个端口) # brctl addif br0 eth0 (让eth2成为br0的一个端口) # brctl addif br0 eth3 (让eth3成为br0的一个端口) 网桥的每个物理网卡作为一个端口,运行于混杂模式,而且是在链路层工作,所以就不需要IP了。

# ifconfig eth0 0.0.0.0 # ifconfig eth1 0.0.0.0 # ifconfig eth2 0.0.0.0 # ifconfig eth3 0.0.0.0 然后给br0的虚拟网卡配置IP:192.168.1.1。那样就能远程管理网桥。

# ifconfig br0 192.168.1.1 给br0配置了IP之后,网桥就能够工作了。192.168.1.0/24网段内的主机都可以telnet到网桥上对其进行配置。

以上配置的是一个逻辑网段,实际上Linux网桥也能配置成多个逻辑网段(相当于交换机中划分多个VLAN)。

因篇幅问题不能全部显示,请点此查看更多更全内容

Top