0

0

如何设置Linux网络桥接 brctl桥接管理工具使用

P粉602998670

P粉602998670

发布时间:2025-08-07 14:05:01

|

341人浏览过

|

来源于php中文网

原创

首先安装brctl工具,然后创建网桥br0并添加物理接口eth0,接着将ip配置从eth0迁移到br0并启用接口,最后通过brctl命令管理网桥状态;1. 使用apt或yum安装bridge-utils;2. 执行sudo brctl addbr br0创建网桥;3. 使用sudo brctl addif br0 eth0将接口加入网桥;4. 清除eth0的ip并为br0配置ip;5. 启用eth0和br0接口;6. 通过brctl show查看网桥信息;7. 配置netplan或network-scripts实现开机自动生效;8. 在kvm或docker等场景中应用桥接网络;9. 注意关闭stp可提速但需防环路,推荐后续使用ip和bridge命令替代brctl,操作完成后网桥可正常工作。

如何设置Linux网络桥接 brctl桥接管理工具使用

在 Linux 中,网络桥接(Bridge)是一种将多个网络接口连接在一起,使它们像同一个物理交换机一样工作的技术。常用于虚拟化环境中,让虚拟机与宿主机共享网络或直接接入物理网络。

brctl
是传统 Linux 系统中用于管理网桥的命令行工具,属于
bridge-utils
软件包。

下面详细介绍如何使用

brctl
设置和管理 Linux 网络桥接。


一、安装 brctl 工具

brctl
不是默认安装的,需要手动安装
bridge-utils
包。

Debian/Ubuntu 系统:

sudo apt update
sudo apt install bridge-utils

CentOS/RHEL/Rocky Linux:

sudo yum install bridge-utils
# 或者在较新版本中使用 dnf
sudo dnf install bridge-utils

安装完成后,即可使用

brctl
命令。


二、创建和配置网桥

1. 创建一个网桥(如 br0)

sudo brctl addbr br0

这会创建一个名为

br0
的虚拟网桥设备。

2. 将物理网卡添加到网桥(如 eth0)

⚠️ 注意:如果你通过 SSH 连接服务器,直接绑定 eth0 可能导致网络中断!建议在本地操作或使用备用接口。
sudo brctl addif br0 eth0

这会将

eth0
接口加入到
br0
桥中,此后该接口的数据包将由网桥处理。

3. 配置 IP 地址(从物理接口转移到网桥)

由于网桥接管了网络通信,原来的物理接口(如 eth0)不再需要 IP 地址,应将 IP 配置到

br0
上。

# 清除原接口 IP
sudo ip addr flush dev eth0

# 为网桥分配 IP(假设使用 DHCP)
sudo dhclient br0

# 或者静态设置 IP
sudo ip addr add 192.168.1.100/24 dev br0
sudo ip route add default via 192.168.1.1

4. 启用网桥和接口

确保所有接口处于 UP 状态:

企业网站管理系统源码2.0
企业网站管理系统源码2.0

这是一款比较精美的企业网站管理系统源码,功能比较完整,比较适合新手学习交流使用,也可以作为毕业设计或者课程设计使用,感兴趣的朋友可以下载看看哦。功能介绍:该源码主要包括前台和后台两大部分,具体功能如下:网站前台模块:主要包括企业简介、新闻中心、产品展示、公司证书、工程业绩、联系我们、客户系统、人才招聘等信息的浏览,以及客户留言的功能。网站后台模块1、常规管理:企业简介、链接管理、投票管理、系统设置

下载
sudo ip link set eth0 up
sudo ip link set br0 up

三、常用 brctl 命令说明

命令 作用
@@######@@ 创建一个新网桥
@@######@@ 删除指定网桥
@@######@@ 将接口添加到网桥
@@######@@ 从网桥中删除接口
@@######@@ 显示当前所有网桥及其接口
@@######@@ 显示网桥的生成树(STP)信息
@@######@@ 设置网桥转发延迟(秒)
@@######@@ 启用或关闭 STP(生成树协议)

示例:查看当前网桥状态

brctl addbr 

输出示例:

brctl delbr 

四、持久化配置(开机自动生效)

上面的操作是临时的,重启后会失效。要实现持久化,需根据发行版配置网络脚本。

Ubuntu(使用 netplan,较新版本)

编辑

brctl addif  
文件,例如:

brctl delif  

应用配置:

brctl show

CentOS/RHEL(使用传统 network-scripts)

编辑

brctl showstp 

brctl setfd  

修改

brctl stp  on/off

brctl show

重启网络服务:

bridge name     bridge id               STP enabled     interfaces
br0             8000.001122334455       yes             eth0

五、典型应用场景

  • KVM/QEMU 虚拟化:为虚拟机提供桥接网络,使其获得局域网独立 IP。
  • Docker 自定义桥接(虽然 Docker 通常用
    /etc/netplan/*.yaml
    ,但可自定义 bridge)。
  • 多容器或虚拟机共享宿主机网络接口

六、注意事项

  • 添加接口到网桥后,原接口的 IP 应移除,由网桥承担三层功能。
  • 开启 STP 可防止环路,但在简单环境中可关闭以加快连接速度:
    network:
      version: 2
      renderer: networkd
      bridges:
        br0:
          dhcp4: true
          interfaces:
            - eth0
  • 某些现代系统推荐使用
    sudo netplan apply
    /etc/sysconfig/network-scripts/ifcfg-br0
    命令替代
    DEVICE=br0
    TYPE=Bridge
    BOOTPROTO=dhcp
    ONBOOT=yes
    DELAY=0
    (如
    /etc/sysconfig/network-scripts/ifcfg-eth0
    ),但
    DEVICE=eth0
    TYPE=Ethernet
    BOOTPROTO=none
    ONBOOT=yes
    BRIDGE=br0
    依然广泛兼容。

基本上就这些。通过

sudo systemctl restart network
创建和管理网桥并不复杂,关键在于理解“桥接是二层操作”,IP 应配置在网桥设备上,而不是物理接口。实际使用中建议结合自动化脚本或配置管理工具进行部署。

docker0
sudo brctl stp br0 off
ip
bridge
brctl
ip link add name br0 type bridge
brctl
brctl

相关专题

更多
硬盘接口类型介绍
硬盘接口类型介绍

硬盘接口类型有IDE、SATA、SCSI、Fibre Channel、USB、eSATA、mSATA、PCIe等等。详细介绍:1、IDE接口是一种并行接口,主要用于连接硬盘和光驱等设备,它主要有两种类型:ATA和ATAPI,IDE接口已经逐渐被SATA接口;2、SATA接口是一种串行接口,相较于IDE接口,它具有更高的传输速度、更低的功耗和更小的体积;3、SCSI接口等等。

1051

2023.10.19

PHP接口编写教程
PHP接口编写教程

本专题整合了PHP接口编写教程,阅读专题下面的文章了解更多详细内容。

107

2025.10.17

php8.4实现接口限流的教程
php8.4实现接口限流的教程

PHP8.4本身不内置限流功能,需借助Redis(令牌桶)或Swoole(漏桶)实现;文件锁因I/O瓶颈、无跨机共享、秒级精度等缺陷不适用高并发场景。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

588

2025.12.29

java接口相关教程
java接口相关教程

本专题整合了java接口相关内容,阅读专题下面的文章了解更多详细内容。

11

2026.01.19

go中interface用法
go中interface用法

本专题整合了go语言中int相关内容,阅读专题下面的文章了解更多详细内容。

76

2025.09.10

k8s和docker区别
k8s和docker区别

k8s和docker区别有抽象层次不同、管理范围不同、功能不同、应用程序生命周期管理不同、缩放能力不同、高可用性等等区别。本专题为大家提供k8s和docker区别相关的各种文章、以及下载和课程。

257

2023.07.24

docker进入容器的方法有哪些
docker进入容器的方法有哪些

docker进入容器的方法:1. Docker exec;2. Docker attach;3. Docker run --interactive --tty;4. Docker ps -a;5. 使用 Docker Compose。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

495

2024.04.08

docker容器无法访问外部网络怎么办
docker容器无法访问外部网络怎么办

docker 容器无法访问外部网络的原因和解决方法:配置 nat 端口映射以将容器端口映射到主机端口。根据主机兼容性选择正确的网络驱动(如 host 或 overlay)。允许容器端口通过主机的防火墙。配置容器的正确 dns 服务器。选择正确的容器网络模式。排除主机网络问题,如防火墙或连接问题。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

400

2024.04.08

c++空格相关教程合集
c++空格相关教程合集

本专题整合了c++空格相关教程,阅读专题下面的文章了解更多详细内容。

0

2026.01.23

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PostgreSQL 教程
PostgreSQL 教程

共48课时 | 7.7万人学习

Git 教程
Git 教程

共21课时 | 2.9万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号