一、网桥的基本知识

1、概念:linux网桥是一种以同种协议连接两个局域网的产品。可以把它看成是一个决定发送的包是到自己的局域网还是到另一个局域网的设备。linux网桥检查局域网上所有的包,在同一个局域网中传送它,如果不是同一个网中的,就将它发到别的网上。

2、原理:网桥工作在数据链路层,将两个LAN连起来,根据MAC地址来转发帧,可以看作一个“低层的路由器”(路由器工作在网络层,根据网络地址如IP地址进行转发)。 远程网桥通过一个通常较慢的链路(如电话线)连接两个远程LAN,对本地网桥而言,性能比较重要,而对远程网桥而言,在长距离上可正常运行是更重要的。

3、功能:网桥的功能在延长网络跨度上类似于中继器,然而它能提供智能化连接服务, 即根据帧的终点地址处于哪一网段来进行转发和滤除。网桥对站点所处网段的了 解是靠“自学习”实现的。而且网桥在一定程度上有增大网络带宽的作用。

4、工作流程:

(1) 检查收到的信号,解释0和1的含义,并找出帧中的目的MAC地址。

 (2) 如果具有该目的的MAC地址的帧能够通过网桥上不同的接口到达目的地(不是帧到达网桥的那个接口),则通过重新生成信号来传输这帧。(这个过程叫做转发。)

 (3)如果该帧到达的接口就是目的地址可达到的端口,则丢弃该帧。(这个过程叫做过滤。)                                   二、网桥的配置

在linux系统中,网桥主要是用来完成主机与虚拟机之间的互相访问以及网络传输,若没有网桥,则真机无法访问虚拟机

由此可以看出,虽然真机网卡的IP与虚拟机IP在同一网段,但仍然无法进行通信,此时就需要网桥来进行连接!!

1、配置网卡:在/etc/sysconfig/network-scripts/目录下编辑ifcfg-p4p2文件进行配置

注意:网卡的名称每台主机都各不相同,需要自己在网络配置中查找名称

网卡文件配置好后需要配置网桥文件

2、配置网桥:在同一目录下面编辑ifcfg-br0文件进行配置,内容中需要包括网络IP以及子网掩码,类型

注意:TYPE必须填写并且值为Bridge,IP必须与需要访问的虚拟机在同一子网即网段中!!!

网卡和网桥配置好后需要重新启动网络才能生效!!!

如上图,重启网络后系统中已经有了网桥以及其IP

此时如果仍无法访问虚拟机时需要重新启动系统,reboot!!

ping通表明网桥设备已经可以正常使用了,网桥就配置好了!!!

除了编辑配置文件进行网桥的配置以外,也可以通过网络桥接的控制命令进行                                                                                               2、网络桥接命令

brctl :桥接管理命令

show:显示

addbr:添加网桥

delbr:删除网桥

addif:添加网桥连接(即添加网卡)

delif:删除网桥连接

注意:网桥必须添加网桥连接即网卡后才能进行使用!!!

brctl  addbr br0 :添加网桥

brctl  show :显示当前系统中的网桥

此时网桥没有IP

添加IP及子网掩码:ifconfig br0 172.25.254.225 netmask 255.255.255.0

此时虽然网桥有了IP,但没有进行网络连接,所以仍然无法使用

brctl addif br0 eth0 :给网桥br0添加网卡eth0

由上图,添加网卡后无需进行重启网络即可进行使用,较为方便

网桥的删除:

网桥的删除需要先将网桥上的网卡进行删除才能删除网桥

先将网桥停止使用:ifconfig br0 down

brctl delif br0 eth0:删除网卡

brctl delbr br0:删除网桥

这样就将网桥完全删掉了!!!                                                                                                                                                                          三、Linux以太网绑定模式

1、bonding

(1)bonding连接驱动:提供了一个把多个网络接口设备捆绑为单个的网络接口设置来使用,用于网络负载均衡及网络冗余。通俗来讲就是在系统中有两块网卡按照一定的工作模式对系统的指令进行处理!!

(2)bonding的工作模式:

(1)模式0(平衡轮循):轮循策略,所有接口都采用轮循方式在所有slave中进行传输封包,任何slave都可以接收。(就是针对于系统的指令工作时,两块网卡你处理一个命令,我处理一个命令,一直重复循环!!)

(2)模式1(主动备份):可以容错!即一次只能使用一个slave,但如果该接口出现故障,另一个slave将自动接替!!

(3)模式3(广播):所有的封包都通过所有的slave接口进行广播

由于平衡轮循和广播需要大量的指令进行验证,此处只进行主动备份的验证,如下:

nmcli connection add con-name bond0 ifname bond0 type bond mode active-backup ip4 172.25.254.225/24

该命令为创建一个bonding,其中nmcli connection为绑定的命令,add为添加,con-name为设备名称,type为类型,mod为模式,active-backup表示主动备份模式,ip4为网络IP,该命令均可用TAB键补齐并查看各种类型!!!

监控命令为:watch -n 1 'cat /proc/net/bonding/bond0'

其中/bongding/bond0目录在创建bond后自动生成!!

添加网卡:nmcli connection add con-name eth0 ifname eth0 type bond-slave master bond0

该命令中的bond-slave为bond接口类型,master表示为哪一个bond服务!!

如上图,此时系统可以通过bond接口与其他主机进行网络访问

但当只有一个接口时,如果该接口不能进行工作时,系统网络将崩溃,无法与外界进行连接

模拟:ifconfig eth0 down!!

为了保证系统可以更加稳定的运行,可以用两个接口使用主动备份模式管理系统网络

注意:在建新接口时,需要给系统新添加一块网卡eth1!!

创建新接口:nmcli connection add con-name eth1 ifname eth1 type bond-slave master bond0

此时有两个接口,如果正在工作的网卡损坏,则另一块网卡可接替工作保证系统正常运行!!

(3)bond接口的删除:nmcli connection delete eth1

2、team接口

(1)team和bond功能类似,但team不需要手动加载内核模块,有更强的拓展性,支持8块网卡,Bond最多只支持两块网卡。

(2)team的模式:四种模式分别为:broadcast(广播容错)、roundrobin(平衡轮叫)、activebackcup(主动备份)、loadbalance(负载均衡)

(3)通过nmcli设定team接口(验证主动备份)

nmcli connection add con-name team0 type team ifname team0 config '{"runner":{"name":"activebackup"}}' ip4 172.25.254.225/24

命令与bond设定大致相似,只有type和Mode不一样,需注意mode的格式!!!!

添加网卡:nmcli connection add con-name eth0 ifname eth0 type team-slave master team0

与bond一样,在添加网卡后就可以进行使用!!!

添加第二块网卡

此时正在活跃工作的是eth0,eth1作为备用没有被使用,此时断掉eth0,则eth1接管eth0的工作保证系统平稳运行

team的删除:nmcli connection delete eth0

Linux系统网络桥接相关推荐

  1. Linux系统网络环境配置(初学者必看)!!

    Linux系统网络环境配置 大家好,我是作者小白,很高兴在这里跟大家分享在Linux初学者必须经历的一个问题,那就是在VM Ware中网络环境配置,步骤很简单,相信你看一遍就能立马上手,那我们开始吧! ...

  2. 给Linux系统/网络管理员的nmap的29个实用例子

    Nmap亦称为Network Mapper(网络映射)是一个开源并且通用的用于Linux系统/网络管理员的工具.nmap用于探查网络.执行安全扫描.网络核查并且在远程机器上找出开放端口.它可以扫描在线 ...

  3. Linux系统网络基础

    Linux系统网络基础 网络管理 什么是网络 网络就是把分布在不同地理位置上的主机,通过传输介质(网线.卫星等)连接起来,通过网络协议实现主机之间数据传输与共享的目的. 网络的特点 分布式 跨区域 数 ...

  4. linux系统网络驱动简介

    网络设备驱动简介 网络设备驱动是linux内核中三大类设备驱动之一,它用来完成高层网络协议的底层数据传输及设备控制. 网络设备与其他两种设备的区别: 网络接口不存在于linux的文件系统中,及/dev ...

  5. linux 系统网络服务器组建,配置和管理实训教程 pdf,Linux网络服务器配置管理项目实训教程2...

    Linux网络服务器配置管理项目实训教程2 附录2 Linux常用命令 在文本模式和终端模式下,经常使用Linux命令来查看系统的状态和监视系统的操作,如对文件和目录进行浏览.操作等.在Linux较早 ...

  6. 解决linux系统网络时常断开的问题

    在使用双系统的linux系统时,经常出现网络断开,不能连接网络的现象.可能是因为IPv6的设置问题.现解决如下: 连上无线后(不能连接无线,可以重启一下试试,也可按照之前的博客操作),点击无线图标,选 ...

  7. L022-老男孩Linux高端运维课程-linux系统网络基础知识及配置实战精讲

    01001100:第2,5,6位为1对应的数是64,8,4.那么它对应的十进制数是64+8+4=76 224=11100000(二进制数)方法:224-128=96,96-64=32,32-32=0. ...

  8. 网众linux无盘视频教程,网众无盘新手篇--LINUX系统网络安装

    Linux服务器安装施工前,需要准备以下工作: 1).借助windows机器为服务器网络部署Linux系统,服务器开启PXE网络启动,同时开启硬盘AHCI模式,需要使用虚拟机用户,BOIS中设置中开启 ...

  9. 用MRTG监测Linux系统网络、CPU、内存和硬盘情况

    随着Linux应用的日益广泛,有大量的网络服务器使用Linux操作系统.为了全面衡量网络运行状况,就需要对网络状态做更细致.更精确的测量. SNMP协议的制订为互联网测量提供了有力支持.MRTG(Mu ...

最新文章

  1. HTML5中的CSS Shader技术
  2. PostgreSQL-数据复制
  3. 形态分类法的迭代次数与成键的稳定性
  4. [C++] this指针
  5. 债券指数(Bond Index)
  6. 爬虫python教程百度云_Python爬虫比较基础的教程视频百度云网盘下载
  7. python selenium T3
  8. CentOS6.9快速安装配置svn
  9. zookeeper3.4.6完全分布式安装
  10. CentOS7 添加端口
  11. R语言与Python对比
  12. C语言基础入门,编程的第一步
  13. 再论由内而外造就自己
  14. ASP.NET 安全认证(二)
  15. MatplotlibTutorial——Matplotlib的基本使用【Jupiter Notebook代码】
  16. 尹同跃捧走2022中国汽车年度人物;比亚迪当选2022最佳中国品牌汽车企业 | 美通社头条...
  17. 电脑怎样设置桌面待办,桌面待办事项软件
  18. Jedis的基本使用
  19. 【实战笔记】Java 算法与数据结构-排序(选择、插入、冒泡、希尔、归并、快速、堆)
  20. C++ 开发贪吃蛇游戏总结

热门文章

  1. Galera Cluste(mysql主从复制)
  2. matlab root什么意思,root是什么意思?
  3. 【BZOJ2246】【codevs2135】迷宫探险,概率DP+记忆化搜索+状态压缩+运气
  4. layui文件上传回调前对文件类型及大小判断
  5. 阿里巴巴架构调整解读:淘宝C2C成为基础层
  6. 虚幻引擎之多线程渲染机制
  7. 使用HTK搭建英文大词汇量连续语音识别系统(一)
  8. 安装Fedora 36 Server
  9. mysql日期延长30天
  10. 软件产品中的财务分析