热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

redhat7linux双网卡绑定,centos7/redhat7双网卡绑定

简要双网卡绑定技术在centos7中使用了teaming技术,而在rhel6centos7中使用的是bonding技术,在centos7中双网卡绑定既能

简要

双网卡绑定技术在centos7中使用了teaming技术,而在rhel6/centos7中使用的是bonding技术,

在centos7中双网卡绑定既能使用teaming也可以使用bonding,这里推荐使用teaming技术,方便与查看和监控。

原理

这里介绍两种最常见的双网卡绑定模式:

(1) roundrobin - 轮询模式

所有链路处于负载均衡状态,这种模式的特点增加了带宽,同时支持容错能力。

(2) activebackup - 主备模式

一个网卡处于活动状态,另一个处于备份状态,所有流量都在主链路上处理,当活动网卡down掉时,启用备份网卡。

基础环境

系统:centos7

在centos7中,关闭虚拟机添加网卡,再开启虚拟机,系统是不会自动生成网卡的配置文件:

在centos7中要生成网卡配置文件的方法很简单,使用如下命令:

查看物理网卡信息

[root@localhost ~]# nmcli dev

DEVICE TYPE STATE CONNECTION

eno16777736 ethernet connected eno16777736

eno33554984 ethernet connected Wired connection 1

eno50332208 ethernet connected Wired connection 2

lo loopback unmanaged --

上面的信息可以看到,一共有四张网卡,其中lo是本地回环网卡,另外三张为物理网卡。

# 查看网卡连接信息

[root@localhost ~]# nmcli con sh

NAME UUID TYPE DEVICE

Wired connection 2 9a1314bf-d273-406a-930a-dc4160dee4ec 802-3-ethernet eno50332208

Wired connection 1 47eef4a3-7fa4-4a73-83ef-1485bda9b950 802-3-ethernet eno33554984

eno16777736 51d00668-2cf5-41da-ad8d-5019d62e98ad 802-3-ethernet eno16777736

上面的信息可以查看到一共有3个连接,其中两个有线连接,表示没有设置过的网卡连接,还有一个enoxx连接。接下来要修改两个有线连接的命名方法,并生成网卡配置文件:

# 首先,删除两个无用的有线连接

[root@localhost ~]# nmcli con del 9a1314bf-d273-406a-930a-dc4160dee4ec

Connection 'Wired connection 2' (9a1314bf-d273-406a-930a-dc4160dee4ec) successfully deleted.

[root@localhost ~]# nmcli con del 47eef4a3-7fa4-4a73-83ef-1485bda9b950

Connection 'Wired connection 1' (47eef4a3-7fa4-4a73-83ef-1485bda9b950) successfully deleted.

再次创建新的连接并生成配置文件

[root@localhost ~]# nmcli conn add type ethernet con-name eno50332208 ifname eno50332208

Connection 'eno50332208' (eea2a115-63f8-4f33-be84-12559f02542c) successfully added.

[root@localhost ~]# nmcli conn add type ethernet con-name eno33554984 ifname eno33554984

Connection 'eno33554984' (32d2389e-4e82-4419-9d18-5aff8f0be003) successfully added.

# 最后,查看下

[root@localhost ~]# nmcli con sh

NAME UUID TYPE DEVICE

eno16777736 51d00668-2cf5-41da-ad8d-5019d62e98ad 802-3-ethernet eno16777736

eno33554984 32d2389e-4e82-4419-9d18-5aff8f0be003 802-3-ethernet eno33554984

eno50332208 eea2a115-63f8-4f33-be84-12559f02542c 802-3-ethernet eno50332208

[root@localhost ~]# ll /etc/sysconfig/network-scripts/ifcfg-eno*

-rw-r--r--. 1 root root 394 Nov 26 05:59 /etc/sysconfig/network-scripts/ifcfg-eno16777736

-rw-r--r--. 1 root root 288 Dec 26 08:44 /etc/sysconfig/network-scripts/ifcfg-eno33554984

-rw-r--r--. 1 root root 288 Dec 26 08:44 /etc/sysconfig/network-scripts/ifcfg-eno50332208

网络连接和配置文件都成功生成了。 接下来通过eno33554984 和 eno50332208 使用teaming模式进行双网卡绑定

roundrobin模式:

roundrobin模式也称为轮询模式,它 基于每一个包 ,当某一台服务器的两张网卡设置为roundrobin模式teaming,此时服务器发出的数据包,就会在两个物理

网卡上进行轮询,即第一个数据包走一张网卡,第二个数据包走第二张网卡,依次轮询。

注意:

(1)roundrobin具有容错性,当一张网卡down掉,数据包依然发送成功。

(2)在使用roundrobin模式必须要在交换机上做以太通道,不然会出现网络无法连通。

实际操作:

使用nmcli命令操作,创建team接口team0,同时设置teaming模式为roundrobin

[root@localhost ~]# nmcli con add type team con-name team0 ifname team0 config '{"runner":{"name": "roundrobin"}}'

Connection 'team0' (9dc48bd6-54b9-48db-b7dd-ecf34ae9196f) successfully added.

给接口team0设置ip地址

[root@localhost ~]# nmcli con modify team0 ipv4.address '10.0.0.2/24' ipv4.gateway '10.0.0.1'

设置为手动模式,取消DHCP

[root@localhost ~]# nmcli con modify team0 ipv4.method manual

将两张物理网卡加入到team中

[root@localhost ~]# nmcli con add type team-slave con-name team0-port1 ifname eno33554984 master team0

Connection 'team0-port1' (22d3640e-f5c8-499c-b0dd-913c8970d800) successfully added.

[root@localhost ~]# nmcli con add type team-slave con-name team0-port2 ifname eno50332208 master team0

Connection 'team0-port2' (12660d2a-0e1f-41e6-96b2-53de4fc6b78c) successfully added.

[root@localhost ~]# nmcli con sh

NAME UUID TYPE DEVICE

team0-port2 12660d2a-0e1f-41e6-96b2-53de4fc6b78c 802-3-ethernet --

eno16777736 51d00668-2cf5-41da-ad8d-5019d62e98ad 802-3-ethernet eno16777736

team0-port1 22d3640e-f5c8-499c-b0dd-913c8970d800 802-3-ethernet --

team0 9dc48bd6-54b9-48db-b7dd-ecf34ae9196f team team0

eno33554984 32d2389e-4e82-4419-9d18-5aff8f0be003 802-3-ethernet eno33554984

eno50332208 eea2a115-63f8-4f33-be84-12559f02542c 802-3-ethernet eno50332208

查看team0的状态

[root@localhost ~]# teamdctl team0 st

setup:

runner: roundrobin

4.1 roundrobin问题排查

第一次查看出现的是这样的结果,检查下配置:

# 通过直接查看网卡发现team0并没有启动

[root@localhost ~]# ip a | grep team0

5: team0: mtu 1500 qdisc noqueue state DOWN

# 使用ifup 启动team0并没有成功,继续排查

[root@localhost ~]# ifup team0

[root@localhost ~]# ip a | grep team0

5: team0: mtu 1500 qdisc noqueue state DOWN

直接sysetmctl restart network 也没有成功。

# 发现team0-port1 team0-port2没有添加成功物理网卡,怎么回事呢?

[root@localhost ~]# nmcli con sh

NAME UUID TYPE DEVICE

team0-port2 ec96c1e1-d268-4ba1-a2f9-0133a9f02655 802-3-ethernet --

eno16777736 51d00668-2cf5-41da-ad8d-5019d62e98ad 802-3-ethernet eno16777736

team0-port1 22d3640e-f5c8-499c-b0dd-913c8970d800 802-3-ethernet --

team0 9dc48bd6-54b9-48db-b7dd-ecf34ae9196f team team0

eno33554984 32d2389e-4e82-4419-9d18-5aff8f0be003 802-3-ethernet eno33554984

eno50332208 eea2a115-63f8-4f33-be84-12559f02542c 802-3-ethernet eno50332208

# 删除掉

[root@localhost ~]# nmcli con del team0-port1

Connection 'team0-port1' (22d3640e-f5c8-499c-b0dd-913c8970d800) successfully deleted.

[root@localhost ~]# nmcli con del team0-port2

Connection 'team0-port2' (ec96c1e1-d268-4ba1-a2f9-0133a9f02655) successfully deleted.

# 删除两张物理网卡的连接

[root@localhost ~]# nmcli con sh

NAME UUID TYPE DEVICE

eno16777736 51d00668-2cf5-41da-ad8d-5019d62e98ad 802-3-ethernet eno16777736

team0 9dc48bd6-54b9-48db-b7dd-ecf34ae9196f team team0

eno33554984 32d2389e-4e82-4419-9d18-5aff8f0be003 802-3-ethernet eno33554984

eno50332208 eea2a115-63f8-4f33-be84-12559f02542c 802-3-ethernet eno50332208

[root@localhost ~]# nmcli con del eno33554984 eno50332208

Connection 'eno33554984' (32d2389e-4e82-4419-9d18-5aff8f0be003) successfully deleted.

Connection 'eno50332208' (eea2a115-63f8-4f33-be84-12559f02542c) successfully deleted.

删除成功

[root@localhost ~]# nmcli con sh

NAME UUID TYPE DEVICE

eno16777736 51d00668-2cf5-41da-ad8d-5019d62e98ad 802-3-ethernet eno16777736

team0 9dc48bd6-54b9-48db-b7dd-ecf34ae9196f team team0

# 再次将两张物理网卡添加到team

[root@localhost ~]# nmcli con add type team-slave con-name team0-port1 ifname eno33554984 master team0

Connection 'team0-port1' (0331ea43-95c0-4106-b388-8484d4c3940d) successfully added.

[root@localhost ~]# nmcli con add type team-slave con-name team0-port2 ifname eno50332208 master team0

Connection 'team0-port2' (880f2146-fe93-42dd-8d28-7d0dd50b4011) successfully added.

[root@localhost ~]# nmcli con sh

NAME UUID TYPE DEVICE

team0-port1 0331ea43-95c0-4106-b388-8484d4c3940d 802-3-ethernet eno33554984

eno16777736 51d00668-2cf5-41da-ad8d-5019d62e98ad 802-3-ethernet eno16777736

team0 9dc48bd6-54b9-48db-b7dd-ecf34ae9196f team team0

team0-port2 880f2146-fe93-42dd-8d28-7d0dd50b4011 802-3-ethernet eno50332208

现在成功将两张物理网卡绑定到了team组中

# 现在查看team0的状态就出现了,模式是:roundrobin

[root@localhost ~]# teamdctl team0 st

setup:

runner: roundrobin

ports:

eno33554984

link watches:

link summary: up

instance[link_watch_0]:

name: ethtool

link: up

down count: 0

eno50332208

link watches:

link summary: up

instance[link_watch_0]:

name: ethtool

link: up

down count: 0

这样,team模式的roundrobin搭建成功。

总结:

在做链路聚合的时候,所要使用到的物理网卡不能独立存在连接,也就是在nmcli con sh查看时,不能独立存在,否则就无法绑定到team模式中。

4.2 测试

因为这里是虚拟机环境,只能通过down掉网卡进行查看。

[root@localhost ~]# teamdctl team0 st

setup:

runner: roundrobin

ports:

eno33554984

link watches:

link summary: up

instance[link_watch_0]:

name: ethtool

link: up

down count: 0

eno50332208

link watches:

link summary: up

instance[link_watch_0]:

name: ethtool

link: up

down count: 0

两张网卡同时在线,现在down掉其中一张网卡,

[root@localhost ~]# nmcli con del team0-port1

Connection 'team0-port1' (0331ea43-95c0-4106-b388-8484d4c3940d) successfully deleted.

[root@localhost ~]# nmcli con sh

NAME UUID TYPE DEVICE

eno16777736 51d00668-2cf5-41da-ad8d-5019d62e98ad 802-3-ethernet eno16777736

team0 9dc48bd6-54b9-48db-b7dd-ecf34ae9196f team team0

team0-port2 880f2146-fe93-42dd-8d28-7d0dd50b4011 802-3-ethernet eno50332208

[root@localhost ~]# teamdctl team0 st

setup:

runner: roundrobin

ports:

eno50332208

link watches:

link summary: up

instance[link_watch_0]:

name: ethtool

link: up

down count: 0

这样就发现eno33554984网卡已经down掉了。

[root@localhost ~]# nmcli con add type team-slave con-name team0-port1 ifname eno33554984 master team0

Connection 'team0-port1' (59acd6bf-affc-4994-a050-83c45816859a) successfully added.

[root@localhost ~]#

[root@localhost ~]# teamdctl team0 st

setup:

runner: roundrobin

ports:

eno33554984

link watches:

link summary: up

instance[link_watch_0]:

name: ethtool

link: up

down count: 0

eno50332208

link watches:

link summary: up

instance[link_watch_0]:

name: ethtool

link: up

down count: 0

虚拟机环境就这样测试了吧,至于生产环境就直接拔网线,ping测试。

转载来源:https://www.cnblogs.com/hukey/p/6224969.html



推荐阅读
  • 【Zabbix4.2学习笔记】1、CentOS7.5安装zabbix4.2
    1、关闭防火墙和selinux#systemctlstopfirewalld#vimetcselinuxconfigSELINUXpermissive#setenforce02、添加zabbix存储库rpm-Uvhh ... [详细]
  • centos安装Mysql的方法及步骤详解
    本文介绍了centos安装Mysql的两种方式:rpm方式和绿色方式安装,详细介绍了安装所需的软件包以及安装过程中的注意事项,包括检查是否安装成功的方法。通过本文,读者可以了解到在centos系统上如何正确安装Mysql。 ... [详细]
  • 分享_Jenkits搭建芝波分享
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了Jenkits搭建------芝波分享相关的知识,希望对你有一定的参考价值。   ... [详细]
  • Step1:启动服务器首先启动zookeeperbinzookeeper-server-start.shconfigzookeeper.properties接着启动kafka服务 ... [详细]
  • CentOS 7.6网卡绑定mode1
    CentOS7.6网卡绑定mode1[root@server~]#systemctlstopNetworkManager[root@server~]#systemctldisabl ... [详细]
  • 大数据学习环境安装关于防火墙​centos7使用的是firewalld,centos之前使用的是iptablesCentOS7关闭防火墙查看防火墙状态sudosy ... [详细]
  • Skywalking系列博客1安装单机版 Skywalking的快速安装方法
    本文介绍了如何快速安装单机版的Skywalking,包括下载、环境需求和端口检查等步骤。同时提供了百度盘下载地址和查询端口是否被占用的命令。 ... [详细]
  • 官网的log格式配置文档如下:https:www.rsyslog.comdocv8-stableconfigurationtemplates.html定制一个仅包含l ... [详细]
  • 踩了一上午坑,记录一下成功过程mysql服务端版本8.0.23首先下载mysql-connector-net6.10.9版本,这个很重要,版本千万不要下错了 ... [详细]
  • 本文介绍了在Mac上搭建php环境后无法使用localhost连接mysql的问题,并通过将localhost替换为127.0.0.1或本机IP解决了该问题。文章解释了localhost和127.0.0.1的区别,指出了使用socket方式连接导致连接失败的原因。此外,还提供了相关链接供读者深入了解。 ... [详细]
  • 深入理解Kafka服务端请求队列中请求的处理
    本文深入分析了Kafka服务端请求队列中请求的处理过程,详细介绍了请求的封装和放入请求队列的过程,以及处理请求的线程池的创建和容量设置。通过场景分析、图示说明和源码分析,帮助读者更好地理解Kafka服务端的工作原理。 ... [详细]
  • 本文讨论了一个数列求和问题,该数列按照一定规律生成。通过观察数列的规律,我们可以得出求解该问题的算法。具体算法为计算前n项i*f[i]的和,其中f[i]表示数列中有i个数字。根据参考的思路,我们可以将算法的时间复杂度控制在O(n),即计算到5e5即可满足1e9的要求。 ... [详细]
  • 李逍遥寻找仙药的迷阵之旅
    本文讲述了少年李逍遥为了救治婶婶的病情,前往仙灵岛寻找仙药的故事。他需要穿越一个由M×N个方格组成的迷阵,有些方格内有怪物,有些方格是安全的。李逍遥需要避开有怪物的方格,并经过最少的方格,找到仙药。在寻找的过程中,他还会遇到神秘人物。本文提供了一个迷阵样例及李逍遥找到仙药的路线。 ... [详细]
  • 本文介绍了Codeforces Round #321 (Div. 2)比赛中的问题Kefa and Dishes,通过状压和spfa算法解决了这个问题。给定一个有向图,求在不超过m步的情况下,能获得的最大权值和。点不能重复走。文章详细介绍了问题的题意、解题思路和代码实现。 ... [详细]
  • Linux配置IP地址大全
    IP地址配置方法一:编辑配置文件#编辑网卡参数[roottest~]#vimetcsysconfignetwork-scriptsifcfg-ens331TYPEE ... [详细]
author-avatar
猪猪情系qq
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有