网桥

桥接:把一台机器上的若干个网络接口“连接”起来。其结果是,其中一个网
口收到的报文会被复制给其他网口并发送出去。以使得网口之间的报文能够互
相转发。网桥就是这样一个设备,它有若干个网口,并且这些网口是桥接起来
的。与网桥相连的主机就能通过交换机的报文转发而互相通信。

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

图解
主机A发送的报文被送到交换机S1的eth0口,由于eth0与eth1、eth2桥接在一起,故而报文被复制到eth1和eth2,并且发送出去,然后被主机B和交换机S2接收到。而S2又会将报文转发给主机C、D

使用场景
Bridge(网桥)是 Linux 上用来做 TCP/IP 二层协议交换的设备,与现实的交换机功能相似。网桥设备实例可以和 Linux 上其他网络设备实例连接。当有数据到达时,网桥会根据报文中的 MAC 信息进行广播、转发、丢弃处理。比如服务器安装CentOS操作系统,想在这台机器安装KVM虚拟机。需要配置网桥,以方便虚拟机能够和局域网中的其他机器处于同一网段相通。
安装过docker的老师应该知道,安装完docker以后会有一个docker0网桥的网卡。

下面方便大家理解准备3个机器,网络拓扑见下图。为了方便管理网桥设备,也方便更好的理解,所以给其加上了静态ip。

MAC地址:br0网络的MAC地址,当不开启br0时mac地址默认为全0,当br0开启时,使用桥接的内网口和外网口中小的mac地址,并且不会改变内外网卡的mac地址。

centos多网卡网桥配置,修改配置文件方法:
修改原有网卡配置文件

vim /etc/sysconfig/network-scripts/ifcfg-eth0
TYPE=Ethernet
DEVICE=eth0
#IPADDR=192.168.36.36
#PREFIXO=24
BRIDGE=br0
vim /etc/sysconfig/network-scripts/ifcfg-eth1
TYPE=Ethernet
DEVICE=eth1
#IPADDR=192.168.56.36
#PREFIXO=24
#GATEWAY=192.168.56.2
#DNS1=180.76.76.76
NAME=eth1
BRIDGE=br0

创建网桥配置文件,并设置静态地址

vim /etc/sysconfig/network-scripts/ifcfg-br0
TYPE=Bridge
DEVICE=br0
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.36.36
NETMASK=255.255.255.0
GATEWAY=192.168.36.2

重启 network 服务生效

service network restart    ##centos6及以下重启网络
systemctl restart network  ##centos7及以上重启网络

通过以下命令可以查看网桥有没有加载成功

lsmod | grep br       ##查看网桥模块有没有加载
nmcli connection      ##查看网卡连接信息


实现仅主机模式VMnet36段和仅主机模式VMnet56的同一网段的互通

如果想详细查看网桥信息,需要安装bridge-utils包

yum install bridge-utils -y
brctl show              ##查看网桥信息
brctl br0 stp on        ##开启br0上的stp


brctl 常用命令,如果是手动改的网卡配置文件,使用 brctl 删除网桥后,还需要自己删除网桥的网卡配置文件,以及修改网卡的配置文件

brctl addbr | delbr br0             ##添加或删除网桥br0
brctl addif | delif br0 eth0        ##添加或删除网桥br0中网卡eth0
rmmod  bridge                       ##删除网桥加载模块

centos7及以上多网卡网桥配置,使用 nmcli 命令方法:

新建网桥,名字为mybr0,并指定静态ip为192.168.36.36

nmcli connection add type bridge ifname br0 con-name mybr0 ipv4.method manual ipv4.addresses 192.168.36.36/24

加入eth0到br0中,命名为br0-port0

nmcli connection add type bridge-slave con-name br0-port0 ifname eth0 master br0

加入eth1到br0中,命名为br0-port1

nmcli connection add type bridge-slave con-name br0-port1 ifname eth1 master br0

启用br0-port0 br0-port1 重启网络

nmcli connection up br0-port0
nmcli connection up br0-port1
systemctl restart network

此时网桥已经实现,仅主机模式VMnet36段和仅主机模式VMnet56的同一网段可互通

cat /etc/sysconfig/network-scripts/ifcfg-br0-port0
TYPE=Ethernet
NAME=br0-port0
UUID=932106e1-3943-4051-a0ce-03c92784eb5b
DEVICE=eth0
ONBOOT=yes
BRIDGE=br0
cat /etc/sysconfig/network-scripts/ifcfg-br0-port1
TYPE=Ethernet
NAME=br0-port1
UUID=e768dd95-fa73-4d48-974a-44b57bcc1cf4
DEVICE=eth1
ONBOOT=yes
BRIDGE=br0
cat /etc/sysconfig/network-scripts/ifcfg-br0
STP=yes
BRIDGING_OPTS=priority=32768
TYPE=Bridge
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none
IPADDR=192.168.36.36
PREFIX=24
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=mybr0
UUID=3853e0bf-44d3-4798-882e-242c21e98b4f
DEVICE=br0
ONBOOT=yes

bond网卡聚合与网桥br0结合
bond网卡聚合配置参考:https://blog.csdn.net/weixin_45548465/article/details/122625777?spm=1001.2014.3001.5502
比如服务器配置bond多网卡聚合,然后KVM需要使用到网桥,那么需要做到网桥绑定到bond网卡上。
只要把bond网卡的配置指定为br即可,其余的不用改变:屏蔽静态IP,并增加BRIDGE为br0。

vim /etc/sysconfig/network-scripts/ifcfg-bond0
DEVICE=bond0
BOOTPROTO=static
ONBOOT=yes
NM_CONTROLLED=yes
BONDING_OPTS="miimon=100 mode=0"
#IPADDR=192.168.190.111
#NETMASK=255.255.255.0
#GATEWAY=192.168.190.2
#DNS1=114.114.114.114
BRIDGE=br0

网桥的配置

vim /etc/sysconfig/network-scripts/ifcfg-br0
DEVICE=br0
TYPE=Bridge
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.190.111
NETMASK=255.255.255.0
GATEWAY=192.168.190.2

重启网络

systemctl restart network

ubuntu 18.04多网卡网桥配置,yaml文件有严格的缩进格式,需要注意

sudo vim /etc/netplan/01-netcfg.yaml
# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:version: 2renderer: networkdethernets:eth0:dhcp4: no#addresses: [192.168.56.36/24]#gateway4: 192.168.56.2#nameservers:# addresses: [180.76.76.76]eth1:dhcp4: no#addresses: [192.168.36.36/24]bridges:br0:dhcp4: nodhcp6: noaddresses: [192.168.36.36/24]gateway4: 192.168.36.2nameservers:addresses: [180.76.76.76]interfaces:- eth0- eth1

重启网络服务

sudo netplan apply

如果有同学想直接复制我的配置文件进行修改,可能在vim里面格式会错乱,需要进入 paste 模式:

:set paste

进入 paste 模式后,按 i 键进入插入模式,然后再粘帖,文本格式不会错乱了。但粘帖后还需要按 <ESC> 进入普通模式并执行如下命令结束 paste 模式:

:set nopaste

ubuntu 18.04多网卡绑定加桥接配置

sudo vim /etc/netplan/01-netcfg.yaml
# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:version: 2renderer: networkdethernets:eth0:dhcp4: no#addresses: [192.168.56.36/24]#gateway4: 192.168.56.2#nameservers:# addresses: [180.76.76.76]eth1:dhcp4: no#addresses: [192.168.36.36/24]bonds:bond0:interfaces:- eth0- eth1parameters:mode: active-backupmii-monitor-interval: 100bridges:br0:dhcp4: nodhcp6: noaddresses: [192.168.36.36/24]gateway4: 192.168.36.2nameservers:addresses: [180.76.76.76]interfaces:- bond0

重启网络服务

sudo netplan apply

linux 网桥br0配置相关推荐

  1. linux 7 bond0,Centos 7 配置多网卡bond0 及网桥br0

    <Centos 7 配置多网卡bond0 及网桥br0>由会员分享,可在线阅读,更多相关<Centos 7 配置多网卡bond0 及网桥br0(2页珍藏版)>请在人人文库网上搜 ...

  2. linux下brctl配置网桥

    设置linux让网桥运行    配置网桥 我们需要让linux知道网桥,首先告诉它,我们想要一个虚拟的以太网桥接口:(这将在主机bridge上执行,不清楚的看看测试场景) root@bridge:~& ...

  3. Linux 网桥配置br-lan、eth0、eth1、ra0、rai0

    Linux网关模式下将有线LAN和无线LAN共享网段实现局域网内互联: 思路其实很简单:就是将虚拟出一个bridge口,将对应的有线LAN和无线LAN都绑定在这个虚拟bridge口上,并给这个brid ...

  4. linux网桥的简单理解和配置

    linux网桥的简单理解和配置 Linux网桥是linux虚拟网络设备之一.网上很多分析linux网桥的文章,例如代码层面的分析.这里不牵扯复杂的分析和配置,主要是面向虚拟机链接一个用途,小白我的备忘 ...

  5. linux网桥简单理解和持久化配置

    文章目录 前言 一.Linux 网桥是什么? 二.网桥主要作用 三.网桥配置命令及安装(CentOS系统) 1 网桥配置命令 2.持久化网桥配置 前言 linux bridge是网络虚拟化中非常重要的 ...

  6. Linux 网络协议栈开发基础篇—— 网桥br0

    一.桥接的概念 简单来说,桥接就是把一台机器上的若干个网络接口"连接"起来.其结果是,其中一个网口收到的报文会被复制给其他网口并发送出去.以使得网口之间的报文能够互相转发. 交换机 ...

  7. Linux网桥简介、入门与配置

    本文目录 1.通常的局域网络结构 2.Linux网桥的功能 3.在ubuntu下如何使用netplan配置一个网桥 4.最后构建出如下网络: 5.Linux网桥的作用 开始之前先得介绍一下什么是网桥, ...

  8. linux 网桥迁移命令,Linux 网桥配置命令: brctl

    Linux网关模式下将有线LAN和无线LAN共享网段实现局域网内互联: brctl addbr bridge brctl addif bridge eth0 brctl addif bridge at ...

  9. linux—高级网络配置:网桥

    一.网桥的作用 在之前的实验中,我们大量的使用了虚拟机来作为操作对象.虚拟机是存在与本台主机的,并且受真机kernel的控制.那么数据的传输也必然不能直接传送到真机之外的主机里,为了解决这一问题,网桥 ...

最新文章

  1. 机器学习中的数学基础:(3)主成分分析(PCA)及其应用
  2. 【Android 逆向】Android 权限 ( ro.product.cpu.abi 属性 | ro.zygote 属性 | dhcp.eth0 属性 | net.* 属性 )
  3. js(Dom+Bom)第二天(1)
  4. “睡服”面试官系列第二十一篇之class基本语法(建议收藏学习)
  5. 第 5-3 课:线程池——Executors + 面试题
  6. jQuery实现Ajax应用
  7. 刑侦高考:如何用SQL解决环环相扣的刑侦推理问题
  8. 锐角三角函数用计算机怎么算,用计算器求锐角三角函数值和由锐角三角函数值求锐角.doc...
  9. 遮挡行人的检测论文合集
  10. 机器学习中的决策树算法
  11. 运算符优先级(cpp/c)
  12. 干货 | 100大产业链全景图
  13. 百胜中国于香港联交所主要上市;平安健康正式收购平安智慧医疗 | 美通企业日报...
  14. 设置计算机网络文件共享,局域网电脑文件共享怎么设置
  15. 【x86架构】中断基础介绍
  16. 基于matlab水轮机期刊,四川紫坪铺电站水轮机综合特性三维建模
  17. 戴尔台式计算机没声音,戴尔电脑没声音怎么回事?四个方法轻松解决
  18. [ZJOI2014]力 题解
  19. linux flock 命令安装,在Linux上使用flock命令控制程序的异步执行
  20. 美业SaaS的创业分享之[销售]:销售和销售管理

热门文章

  1. 7-2 打印九九口诀表
  2. ps图片基本操作记录
  3. java_web:使用javabean实现登录操作(封装业务逻辑的javabean,且使用封装数据的实体类传参)
  4. 微软实习生面试(一)
  5. 强化学习の学习笔记(一)——多臂老虎机、ε-greedy策略、乐观初始值、增量式实现、梯度赌博机
  6. 数据库建表约束——五大约束
  7. 知识图谱从入门到应用——知识图谱的发展
  8. Android studio 连接Mysql数据库
  9. css选择器优先级及,CSS选择器优先级(转)
  10. 使用 mamba 提速 conda