bridge-utils工具,基于嵌入式Linux
·
全网最清晰的 Linux Bridge 入门指南:安装、配置、自动转发一网打尽
关键词:Linux Bridge、bridge-utils、brctl、网桥转发、流量镜像、Buildroot
一、为什么要写这篇?
很多初学者把 Linux Bridge 与 Docker Bridge、虚拟交换机、路由器 混为一谈。
本文用一条命令 + 一张思维导图,带你搞清楚:
- 如何安装
bridge-utils(主流发行版 + Buildroot)。 - 网桥“自动转发”到底指什么?
- 三种常见场景(同网段、跨网段、流量镜像)分别怎么配。
二、安装 bridge-utils(含 Buildroot)
发行版 一键命令
Ubuntu / Debian sudo apt install bridge-utils
CentOS / RHEL / Rocky sudo dnf install bridge-utils
Arch Linux sudo pacman -S bridge-utils
Alpine sudo apk add bridge-utils
openSUSE sudo zypper install bridge-utils
Buildroot 路径:
make menuconfig
→ Target packages
→ Networking applications
→ [*] bridge-utils
勾选后重新 make,根文件系统里就会自带 brctl。
验证:
brctl --help
brctl show
三、网桥“自动转发”到底指什么?
- 二层设备:只看 MAC 地址,不关心 IP。
- 默认行为:收到以太网帧 → 查 MAC 表 → 单播/洪泛 → 自动转发。
- 无需脚本:只要接口加入网桥,内核帮你完成。
四、三大场景实战
场景 1:同网段交换(傻瓜交换机)
# 1. 创建网桥
sudo ip link add br0 type bridge
# 2. 把物理口/无线口挂进去
sudo ip link set eth0 master br0
sudo ip link set wlan0 master br0 # 可选
# 3. 启动
sudo ip link set br0 up
brctl show看到两个forwarding接口即可。- 此时网桥就是一台“透明交换机”,自动转发所有二层帧。
场景 2:跨网段路由(三层转发)
需要让网桥上的主机访问 不同子网。
# 1. 开启 IP 转发
echo 1 | sudo tee /proc/sys/net/ipv4/ip_forward
# 2. 给网桥设 IP 作为网关
sudo ip addr add 192.168.1.1/24 dev br0
# 3. 写默认路由(假设外网口 eth1)
sudo ip route add default via 10.0.0.254 dev eth1
# 4. 内网主机网关指向 192.168.1.1,即可跨网段通信
场景 3:流量镜像(SPAN 端口)
把 br0 所有流量 复制一份到 eth2(抓包机/IDS)。
# 1. 加 ingress qdisc
sudo tc qdisc add dev br0 handle ffff: ingress
# 2. 匹配所有流量并镜像
sudo tc filter add dev br0 parent ffff: \
matchall skip_sw \
action mirred egress mirror dev eth2
eth2无需 IP,直接接 Wireshark 即可。- 内核自动完成,无需额外脚本。
五、思维导图(文字版可复制到 XMind)
Linux Bridge 实战
├─ 安装
│ ├─ Ubuntu/Debian: apt install bridge-utils
│ ├─ CentOS/RHEL: dnf install bridge-utils
│ └─ Buildroot: Target packages → Networking applications → [*] bridge-utils
├─ 场景 A:同网段交换
│ └─ ip link add br0 type bridge
├─ 场景 B:跨网段路由
│ ├─ echo 1 > /proc/sys/net/ipv4/ip_forward
│ └─ ip route add default via ...
└─ 场景 C:流量镜像
└─ tc filter ... action mirred egress mirror dev eth2
六、一句话总结
“把接口扔进网桥,二层自动转发;要跨网段开 IP 转发;要镜像用 tc。”
收藏这条命令,Linux Bridge 90% 的问题都能搞定。
更多推荐

所有评论(0)