Linux网桥配置教程:创建与管理方法
时间:2026-01-11 14:28:08 235浏览 收藏
本篇文章主要是结合我之前面试的各种经历和实战开发中遇到的问题解决经验整理的,希望这篇《Linux桥接网络配置教程:创建与管理网桥》对你有很大帮助!欢迎收藏,分享给更多的需要的朋友学习~
Linux桥接网络配置有四种方法:一、iproute2创建临时网桥;二、nmcli配置持久化网桥;三、netplan声明式配置;四、brctl管理已有网桥;最后需验证连通性与排错。

如果您在Linux系统中运行虚拟机或容器,需要让虚拟网络设备与物理网络互通,则可能需要配置桥接网络。以下是创建和管理Linux网桥的具体操作步骤:
一、使用iproute2工具创建临时网桥
该方法通过ip命令快速创建内存中的网桥设备,适用于测试或短期使用,重启后配置将丢失。
1、加载bridge内核模块:sudo modprobe bridge
2、创建名为br0的网桥:sudo ip link add name br0 type bridge
3、为网桥分配IP地址(如192.168.1.100/24):sudo ip addr add 192.168.1.100/24 dev br0
4、启用网桥接口:sudo ip link set br0 up
5、将物理网卡(例如enp0s3)加入网桥:sudo ip link set enp0s3 master br0
6、禁用物理网卡的IP地址(避免IP冲突):sudo ip addr flush dev enp0s3
二、使用nmcli配置持久化网桥(NetworkManager)
该方法适用于桌面环境或启用了NetworkManager的服务系统,配置可随系统启动自动生效。
1、创建网桥连接配置:sudo nmcli connection add type bridge con-name br0 ifname br0
2、为网桥设置IPv4地址和网关:sudo nmcli connection modify br0 ipv4.addresses 192.168.1.100/24 ipv4.gateway 192.168.1.1 ipv4.method manual
3、添加物理网卡(如enp0s3)作为网桥从属设备:sudo nmcli connection add type bridge-slave con-name br0-slave-enp0s3 ifname enp0s3 master br0
4、停用原物理网卡连接:sudo nmcli connection down "System enp0s3"
5、启用新创建的网桥连接:sudo nmcli connection up br0
三、通过netplan配置YAML文件(Ubuntu 18.04+及衍生系统)
该方法适用于使用netplan作为网络配置后端的系统,配置以声明式方式定义,统一管理物理与虚拟接口。
1、编辑netplan配置文件(通常位于/etc/netplan/下,如01-network-manager-all.yaml):sudo nano /etc/netplan/01-network-manager-all.yaml
2、写入以下内容(根据实际网卡名和网络参数调整):network:\n version: 2\n renderer: networkd\n ethernets:\n enp0s3:\n dhcp4: false\n dhcp6: false\n bridges:\n br0:\n interfaces: [enp0s3]\n dhcp4: false\n addresses: [192.168.1.100/24]\n gateway4: 192.168.1.1\n nameservers:\n addresses: [8.8.8.8, 1.1.1.1]
3、应用配置:sudo netplan apply
4、验证网桥状态:ip link show br0 && bridge link show br0
四、使用brctl工具管理已有网桥(传统方式)
brctl是早期bridge-utils包提供的管理工具,仍可用于查看、增删端口等运维操作,需确保已安装bridge-utils。
1、安装bridge-utils(如未安装):sudo apt install bridge-utils(Debian/Ubuntu)或 sudo yum install bridge-utils(RHEL/CentOS)
2、列出所有网桥:sudo brctl show
3、向现有网桥br0添加端口enp0s3:sudo brctl addif br0 enp0s3
4、从网桥br0移除端口enp0s3:sudo brctl delif br0 enp0s3
5、查看网桥的FDB转发表(MAC地址学习记录):sudo brctl showmacs br0
五、验证桥接功能与排错要点
完成配置后,需确认物理层连通性、MAC学习行为及虚拟设备可达性,避免因STP阻塞、防火墙拦截或IP重复导致异常。
1、检查网桥是否UP且含预期端口:ip link show br0 | grep -A2 'state UP'
2、确认物理网卡已处于DOWN状态但作为网桥从属:ip link show enp0s3 | grep 'master br0'
3、抓包验证ARP广播是否跨桥传播:sudo tcpdump -i br0 arp -c 4
4、测试局域网内其他主机能否ping通br0的IP:ping -c 3 192.168.1.100
5、检查iptables/nftables是否拦截FORWARD链(桥接流量默认走FORWARD):sudo iptables -L FORWARD -v -n | head -10
理论要掌握,实操不能落!以上关于《Linux网桥配置教程:创建与管理方法》的详细介绍,大家都掌握了吧!如果想要继续提升自己的能力,那么就来关注golang学习网公众号吧!
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
101 收藏
-
342 收藏
-
126 收藏
-
113 收藏
-
162 收藏
-
249 收藏
-
204 收藏
-
410 收藏
-
487 收藏
-
315 收藏
-
361 收藏
-
329 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 立即学习 543次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 立即学习 516次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 立即学习 500次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 立即学习 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 立即学习 485次学习