linux实现双网卡绑定_JunLan~的博客-程序员宅基地

技术标签: Linux  双网卡绑定  Teaming  

前言:

Teaming 技术:可以把同一台服务器上的多个物理网卡绑定成一个虚拟的网卡,利用Teaming 技术,可以提高网络速度、实现不同网卡之间的负载(Load balancing)和网卡冗余(Fault tolerance);

与bonding的关系

在RHEL5/RHEL6中使用的是Bonding,而RHEL7提供了一项新的实现技术Teaming,用来实现链路聚合的功能,但在RHEL7中,不会使用teaming替换bonding,它们是并存的,我们可以选择Teaming,也可以选择Bonding。

 

teaming 技术有多种模式(runner)

 

1)、broadcast(广播):数据通过所有端口传输,即复制一份数据向两块网卡发出

 

2)、roundrobin(轮询):轮询模式,所有链路处于负载均衡状态,这种模式的特点增加了带宽,同时支持容错能力(使用时会有自动丢包情况)。

 

3)、activebackup(主备):类似于bonding技术的bond1模式,只有主链路在工作,当主链路断开后备链路会接替,接替过程会有两个包的延迟(丢包)

 

4)、loadbalance(负载均衡):具有活动的Tx负载平衡和基于BPF的Tx端口选择器(使用时会有自动丢包情况)

 

5)、lacp (implements the 802.3ad Link Aggregation Control、Protocol):类似于bonding技术的bond4模式,需要交换机支持802.3ad(LACP)协议

 

下面使用以下两个网卡进行绑定:

 

1、创建一个名为team0的网络端口,模式为activebackup(主备模式)

[[email protected] ~]# nmcli connection add con-name "team0" type team ifname team0 config '{"runner":{"name":"activebackup"}}'

 

2、修改team0网口的IP地址,网关和DNS

[[email protected] ~]# nmcli connection modify team0 ipv4.addresses "192.168.10.100/24" ipv4.dns "8.8.8.8,114.114.114.114" connection.autoconnect yes ipv4.method manual

[[email protected] ~]# echo "GATEWAY0=192.168.10.1" >> /etc/sysconfig/network-scripts/ifcfg-team0

 //创建team0后会在/etc/sysconfig/network-scripts/目录下生成ifcfg-team0的文件

 

3、将名为eno33554968网卡添加到team0,并且改名为eth1

[[email protected] ~]# nmcli connection add con-name eth1 ifname eno33554968 type team-slave master team0


4、将名为eno50332192网卡添加到team0,并且改名为eth2

[[email protected] ~]# nmcli connection add con-name eth2 ifname eno50332192 type team-slave master team0

 

5、启动team0并且重启网络服务

[[email protected] ~]# nmcli connection up team0 ; systemctl restart network


6、查看team0的状态

[[email protected] ~]# teamdctl team0 state

=========================================================================================

7、在activebackup(主备)模式下如某个网口断掉会丢两个包,当接口恢复也会丢两个包

[[email protected] ~]# nmcli connection down eth1     //关闭网口

[[email protected] ~]# nmcli connection up eth1         //启用网口

 

8、最后如想恢复按顺序将其删除,然后重新加载即可

[[email protected] ~]# nmcli connection delete eth1

[[email protected] ~]# nmcli connection delete eth2

[[email protected] ~]# nmcli connection delete team0

[[email protected] ~]# nmcli connection reload

 

参考:

https://www.cnblogs.com/eddie1127/p/11385604.html

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_21453783/article/details/100639349

智能推荐

男程序员怎么过妇女节_jobchanceleo的博客-程序员宅基地

去年三八节时写了《技术女性职业规划及其它》,今天说说做为“社会另一半”的男性,尤其是身为开发人员的我们,国际劳动妇女节时能干点啥?  对老婆说声“我爱你” 男序员们基本是家里挣钱主力,平日忙于工作、经常加班,回家比较晚。 但是, 至少在今天,下班请马上回家。开发的工作天天都会有,而妇女节一年只这么一个。我们回家就,做好吃的饭、洗衣服、洗碗。不让国际劳动妇女节变成妇女

懒人精灵(一款类似按键精灵的工具)制作和使用C/C++编写的插件_懒人精灵的博客-程序员宅基地_懒人精灵和按键精灵

下面是整个流程如果有什么不懂可以加群785554238,里面有最新的版本和相关最新的脚本例子以及插件1.如果没有安装先从此处下载安装包 https://share.weiyun.com/chGtVAd2 密码:ha99bi,或者直接进群下载最新版本2.开始今天的主题如何在懒人精灵中用lua脚本调用C++编写的android动态库so3.编译so之前我们需要安装android ndk开发环境这里提供下载地址https://dl.google.com/android/repository/andr.

常见的深度学习基础知识总结(持续更新中)_zhong_haoxuan的博客-程序员宅基地

一、网络中的传播与优化(1)反向传播公式推导:(2)参数初始化:(3)正则化:(4)标准化(归一化):(5)激活函数的选择(6)不同优化方法的公式推导及优缺点:二、CNN:(1)CNN各经典网络的演变方向以及优缺点:(2)CNN在图像处理中优于全连接层的原因:1、参数共享(parameter sharing):在图像处理中,能够用一个固定算子(如 sobel 算子)检测全图不...

vue-cli3中自定义环境变量和模式配置_忆城@66的博客-程序员宅基地

为什么需要配置环境变量和模式呢?所有方法肯定是来源于现实的需求。在一个产品的前端开发过程中,一般来说会经历本地开发、测试脚本、开发自测、测试环境、预上线环境,然后才能正式的发布。对应每一个环境可能都会有所差异,比如说用户访问资源权限、服务器地址、接口地址等。在各个环境切换的时候,就需要不同的配置参数,所以就可以用环境变量和模式,来方便我们管理。环境变量1)环境变量文件分类:在vue-cli...

世界读书日_jss603的博客-程序员宅基地

        今天是世界读书日。 基于一直以来的自卑和由此导致的被鄙视,决定今天开始读书学习,并在这里记下所学所感。

阿里云服务器设置-图文教程完整版本及在配置过程中遇到的问题解决方案_jjzaihaozhe的博客-程序员宅基地

最近一个客户让我帮它配置阿里云服务器,说实话,好长时间没有做了,记得做服务器的时候,还是在N年前,不过,经验还是有的,于是答应了,可用过才知道那个呢费劲啊,下边帮设置中遇到的问题,总结如下:1.Windows 2008 R2 3389端口更改 1.开始--运行---输入regedit,2.进入注册表编辑,找到HKEY_LOCAL_MACHINE\System\CurrentCont

随便推点

Error:(1, 1) 错误: 需要class, interface或enum_Mr_YDK的博客-程序员宅基地

运行项目报错:Error:(1, 1) 错误: 需要class, interface或enum原因:可能是当前的JAVA文件编码和项目不一致解决:svn打开-比较差异如图左侧箭头是出错的Java文件编码utf-8 BOM,项目组里的一个坑货提交的,在本地点击右边箭头,将编码格式修改为utf-8,然后保存,修改后的文件不再报错也可以使用文本编辑器如EditPlus,Notep

Windows10下Spin模型检查与协议验证工具安装教程_Peter Kim的博客-程序员宅基地_spin模型检测工具

Windows10安装Spin模型检查协议验证工具教程教程背景安装前准备配置gcc(c编译环境)教程背景笔者最近学习网络协议相关内容,在寻找协议验证工具的过程中,了解到Spin这款工具,经过一晚的查找,终于安装完成并成功运行。因为网上的相关教学偏少且老旧,工具官网的说明有不够清晰且未及时更新,故作此教程,希望让有需要的大家少走弯路。安装前准备配置gcc(c编译环境)确保电脑上已经配置好c语言编译环境,对于Windows10系统下也可理解为已安装Mingw-w64。检查方式,打开命令行,输入gcc

python-读取目录中文件以及解决未知编码的中文乱码_joananjin的博客-程序员宅基地

本篇博文主要针对的是读取一个目录中所有的文件问题。同时,每个文件中的编码是未知的,并且是不同的。思路:先获得文件所在的目录地址以及目录下所有文件的名称对于编码问题,先自定义一个常见编码集合一个个的去遍历文件名以及去遍历编码集合代码:# 相关模块 import codecs import os # 文件路径 path='/Users/joananjin/Desktop/answer/...

python与Mysql的交互_NKartist的博客-程序员宅基地_python 与mysql交互

1.链接数据库import pymysql# 连接数据库# 参数1:mysql服务所在主机的IP# 参数2:用户名# 参数3:密码# 参数4:要连接的数据库名#db = pymysql.connect("localhost", "root", "sunck", "kaige")db = pymysql.connect("10.0.142.171", "root", "sunck", "

SpringMVC和rabbitmq集成使用_jmdonghao的博客-程序员宅基地_springmvc 集成spring-rabbit 1.4.6

1.添加maven依赖<dependency> <groupId>com.rabbitmq</groupId> <artifactId>amqp-client</artifactId> <version>3.5.1</version></dependency><dependency> <groupId>org.springframework.amqp</groupId>

Oracle 历史SQL语句执行计划的对比与分析_Leshami的博客-程序员宅基地

基于CBO优化器的环境中,SQL执行计划的生成依赖于统计信息的真实与完整。如列的离散度,列上的直方图,索引的可用性,索引上的聚簇因子。当这些信息是真实完整的情况下,CBO优化器通常都可以制定最优的执行计划。也正因此CBO优化器也灵活,难以控制,任一信息的不真实或缺失都可能导致执行计划发生变化而产生多个版本。经常碰到的情形是之前的某个SQL语句前阵子还不是TOP SQL,而最近变成了TOP SQL。