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

首先安装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、常规管理:企业简介、链接管理、投票管理、系统设置

企业网站管理系统源码2.0 1 查看详情 企业网站管理系统源码2.0
sudo ip link set eth0 up
sudo ip link set br0 up

三、常用 brctl 命令说明

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

示例:查看当前网桥状态

brctl addbr <name>

输出示例:

brctl delbr <name>

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

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

Ubuntu(使用 netplan,较新版本)

编辑

brctl addif <bridge> <interface>
文件,例如:

brctl delif <bridge> <interface>

应用配置:

brctl show

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

编辑

brctl showstp <bridge>

brctl setfd <bridge> <time>

修改

brctl stp <bridge> 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

以上就是如何设置Linux网络桥接 brctl桥接管理工具使用的详细内容,更多请关注其它相关文章!

本文转自网络,如有侵权请联系客服删除。