Linux下实现双网卡桥接同时开启生成树保证网络拓扑不环路的方案

在实际的网络应用中就存在这样一种用户,他们希望在linux服务器下双网卡桥接但又想实现网络不环路。这是我实际遇到的一个用户需求场景,这样的方案是为了实现网络冗余,当一条链路断开另一条链路可以继续工作。其实他们完全可以直接双网卡绑定来实现网络的冗余。但是用户希望这样做我们也只能按这种方案做,所以今天我就说一下如何在linux下进行双网卡桥接,同时在linux下开启生成树保证网络拓扑不环路。
拓扑很简单,一台linux服务器双网卡,一台二层交换机。
首先,配置linux服务器端,将两张网卡配置成桥接模式:在/etc/sysconfig/network-scripts/文件夹下创建ifcfg-br0桥接接口配置文件,内容如下:
[root@N3 network-scripts]# vi  ifcfg-br0
# Broadcom Corporation NetXtreme BCM5722 Gigabit Ethernet PCI Express
DEVICE=br0      -----桥接接口命名为bro
TYPE=Bridge      -----类型桥接模式
BOOTPROTO=none
ONBOOT=yes
IPADDR=192.168.1.222    ----这部分是配置桥接接口的管理ip(类似svi口的ip)和网关等等。
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
NETWORK=192.168.1.0
将两个接口加入桥接端口:
[root@N3 network-scripts]# vi  ifcfg-eth0
# Broadcom Corporation NetXtreme BCM5722 Gigabit Ethernet PCI Express
DEVICE=eth4
BOOTPROTO=none
HWADDR=00:21:5E:47:31:98
ONBOOT=yes
BRIDGE=br0   ---加入桥接端口
IPV6INIT=no
PEERDNS=yes
NM_CONTROLLED=no
TYPE=Ethernet
USERCTL=no
[root@N3 network-scripts]# vi  ifcfg-eth1
# Broadcom Corporation NetXtreme BCM5722 Gigabit Ethernet PCI Express
DEVICE=eth5
BOOTPROTO=none
HWADDR=00:21:5E:47:31:A0
ONBOOT=yes
BRIDGE=br0
IPV6INIT=no
PEERDNS=yes
NM_CONTROLLED=no
TYPE=Ethernet
USERCTL=no
配置完成后,需要重启设备后,网卡桥接才能生效。
其次,在linux下开启生成树协议:
到目前为此我们可以看到,如果linux端配置成桥接模式,而交换机端也没有开启生成树,整个网络是环路状态。
我们要在交换机端开启生成树:spanning-tree
同时在linux端也开启生成树协议,通过如下命令开启:
[root@SERVER2 ~]# brctl stp br0 on
可以通过如下命令查看linux服务器生成树状态:brctl showstp br0
交换机端查看生成树状态:show spanning-tree summary
可以看到交换机端端口GI0/50被block了,两端生成树都生效了。
至此Linux下双网卡桥接同时开启生成树保证网络拓扑不环路的方案就完成了。

weinxin
DC Farm小程序二维码
扫一扫添加博客小程序
Jim

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

目前评论:16   其中:访客  7   博主  9

    • avatar 艾伦网 1

      博主主题非常不错。

      • 激劉勇靖 激劉勇靖 Admin

        看了你的也不错哦。相互支持一下呵呵 @艾伦网

        • avatar 站长 5

          你懂的真多啊。@激劉勇靖

            • 激劉勇靖 激劉勇靖 Admin

              @站长 都是这几年工作中积累下来的。你将来有一天也会掌握这些技术,如果你从事相关行业的话。

            • avatar 站长 5

              我的专业就是网络工程,如果不出意外,在毕业之后的几年里应该出从事这一行业,我很想问一下用linux服务器,专业的人会不会安装图像化界面。@激劉勇靖

                • 激劉勇靖 激劉勇靖 Admin

                  @站长 一般专业做linux的 不会用图形化,都是在cli命令行进行操作 ,对于新手来说图形化可以用来学习,但是最后还是要慢慢脱离图形化。

                • 激劉勇靖 激劉勇靖 Admin

                  昨天我创建了网络技术板块,慢慢的我会把一些基础的网络知识都分享出来,供大家学习专用。希望你们多多支持。你们的支持就是我做站的动力。有空也帮我宣传宣传,帮我聚点人气。呵呵@激劉勇靖

                  • avatar 站长 5

                    那我问一下,到何种地步了就能脱离图像化界面?@激劉勇靖

                      • 激劉勇靖 激劉勇靖 Admin

                        @站长 在你在图形的时候就要,尽量学着去用cli命令行处理你想要解决的问题。久而久之你就会慢慢的转入命令行。这个也没有到何种地步才能脱离之说。简单的说你学会了cli下基本的cli操作命令之后就要学习转入cli,不要用图形化。

                      • avatar 站长 5

                        这个博看我用来学习技术,不知道能不能贡献一些你的学习资料。@激劉勇靖

                          • 激劉勇靖 激劉勇靖 Admin

                            @站长 你想要什么样的资料,你没有说要具体的我也不知道你想要哪块的。

                            • 激劉勇靖 激劉勇靖 Admin

                              @站长 给你说一下,我昨天更新了一篇,网桥转发原理,对你想学习网络技术是个基础文章,你可以看看,提点意见。

                            • avatar 站长 5

                              linux服务器运维方面,当然有系统集成方面也可以@激劉勇靖

                              • avatar 匿名 5

                                非常感谢作者的文章,我的问题终于解决了

                                  • 激劉勇靖 激劉勇靖 Admin

                                    @匿名 能帮到是我最大的愿望,写这些东西就是为了给遇到同样的问题的人朋友提供解决方案。