您现在的位置是:首页 > 正文

linux 使用bond实现双网卡绑定单个IP

2024-02-01 02:44:10阅读 2

双网卡绑定单个IP 地址 为了提供网络的高可用性,我们可能需要将多块网卡绑定成一块虚拟网卡对外提供服务,这样即使其中的一块物理网卡出现故障,也不会导致连接中断。
bond在Linux下叫bonding,IBM称为etherchanel,broadcom叫team,但是名字怎么变,效果都是将两块或更多的网卡当做一块网卡使用,在增加带宽的同时也可以提高冗余性。

实现双网卡绑定的方法有两种: bond和team
这里先记下bond的绑定方法

bond支持的模式

共支持bond[0-6]共七种模式,常用的就三种,如下:

mode=0:默认,平衡负载模式,有自动备援,但需要配置交换机。
mode=1:主备模式,其中一条线若断线,其他线路将会自动备援,不需要配置交换机。
mode=6:平衡负载模式,有自动备援,不需要配置交换机。

至于其他的模式,解释如下:

mode=2:选择网卡的序号=(源MAC地址 XOR 目标MAC地址) %
Slave网卡(从网卡)的数量,其他的传输策略可以通过xmit_hash_policy配置项指定
mode=3:使用广播策略,数据包会被广播至所有Slave网卡进行传送
mode=4:使用动态链接聚合策略,启动时会创建一个聚合组,所有Slave网卡共享同样的速率和双工设定 但是,mode4有两个必要条件
1.支持使用ethtool工具获取每个slave网卡的速率和双工设定;
2.需要交换机支持IEEE 802.3ad 动态链路聚合(Dynamic link aggregation)模式
mode=5:基于每个slave网卡的速率选择传输网卡。必要条件:支持使用ethtool工具获取每个slave网卡的速率。

网卡 bond1IP bond模式
ens33、ens37 192.168.10.111 mode 1

确保有两块网卡

网站文章

  • 理解webpack的hash,contenthash,chunkhash

    问题来源 对于浏览器来说,一方面期望每次请求页面资源时,获得的都是最新的资源;一方面期望在资源没有发生变化时,能够复用缓存对象。 这个时候,使用文件名+文件哈希值的方式,就可以实现只要通过文件名,就可...

    2024-02-01 02:44:02
  • JavaScript Boolean(布尔) 对象

    在这个例子中,我们本意是想判断 bool1 和 bool2 是否相等,但是由于误用了赋值运算符 =,导致 bool1 的值被改为 false,最终输出的结果是“bool1 is not equal t...

    2024-02-01 02:43:57
  • antd select multiple模式 Dropdown onClick 失效

    antd select multiple模式 Dropdown onClick 失效

    原因:onclick 是onMouseDown和 onMouseUp,也就是点击 松开为一次click。当up的时候会触发click,但是up的时候位置变化了。背景:当 Ant Design 的下拉菜...

    2024-02-01 02:43:29
  • 习题7-4 求矩阵各行元素之和 (15分)

    本题要求编写程序,求一个给定的m×n矩阵各行元素之和。输入格式:输入第一行给出两个正整数m和n(1≤m,n≤6)。随后m行,每行给出n个整数,其间以空格分隔。输出格式:每行输出对应矩阵行元素之和。输入样例:3 26 31 -83 12输出样例:9-715代码如下:#include <stdio.h>int main() {...

    2024-02-01 02:43:23
  • ES6笔记

    ES6笔记

    编程语言JavaScript是ECMAScript的实现和扩展。ECMAScript是由ECMA(一个类似W3C的标准组织)参与进行标准化的语法规范。ECMAScript定义了:[语言语法] – 语法解析规则、关键字、语句、声明、运算符等。[类型]– 布尔型、数字、字符串、对象等。[原型和继承]内建对象和函数的[标准库] – [JSON]、[Math]、[数组方法]、[对象自省方法]等。

    2024-02-01 02:43:17
  • C++ 类型转换(内置类型,string、char*、const char*等)

    文章适用于已经学了C++语言,对C++类型有一定了解的朋友。对类型转换进行总结,包括内置类型,string,以及由c语言引入的一些类型。 类型 内置数据类型 字节 范围 char 1 个字节 -128...

    2024-02-01 02:43:09
  • glFlush 和glSwapBuffer

    1 glFlush就是强制刷新吧,要知道OPENGL是使用一条渲染管线线性处理命令的,一般情况下,我们提交给OPENGL的指令并不是马上送到驱动程序里执行的,而是放到一个缓冲区里面,等这个缓冲区满了再一次过发到驱动程序里执行;很多时候只有几条指令是填充不满那个缓冲区的,这就是说这些指令根本没有被发送到驱动里,所以我们要调用glFlush来强制把这些指令送到驱动里进行处理。 2 glutSwap

    2024-02-01 02:42:40
  • 网络编程之Telnet简单远程登录协议

    网络编程之Telnet简单远程登录协议

    这里不讲解telnet协议的实现原理,主要用于学习telnet实际的编写方式。 使用的网络协议:tcp/ip telnet协议 编程语言:C/C++ 库:socket套接字 基于Windows的tel...

    2024-02-01 02:42:33
  • 创建单链表中出现的一些经典错误(typedef关键字与指针)

    创建单链表中出现的一些经典错误(typedef关键字与指针)

    本文记录的是本人在单链表学习及实现过程中的个人理解和遇到的一些错误,不严谨之处欢迎批评指正。

    2024-02-01 02:42:26
  • Linux Shell 进阶 - Linux Shell进阶学习教程 - Linux Shell练习 - HPC基础 - 源码设计师

    Linux Shell 进阶 - Linux Shell进阶学习教程 - Linux Shell练习 - HPC基础 - 源码设计师

    Linux Shell 进阶 - Linux Shell进阶学习教程 - Linux Shell练习 - HPC基础 - 源码设计师 Linux Shell进阶学习教程 - Linux Shell练习...

    2024-02-01 02:41:57