Linux多路径路由配置详解
本文详细讲解了在Linux系统中通过策略路由与多路径路由(ECMP)协同实现精细化流量分发的完整实战方案——从启用IP转发、禁用反向路径过滤,到创建自定义路由表并绑定源地址/目的地址/应用层标记(iptables fwmark)等多维度策略规则,再到利用nexthop语法配置负载均衡式多路径出口,最后通过systemd服务确保配置永久生效;无论您需要按业务类型分流至不同网络出口、构建高可用双线上网环境,还是为特定应用(如HTTP流量)指定专用链路,这套可落地、可扩展、生产就绪的配置方法都能为您提供清晰、可靠且高效的解决方案。

如果您在Linux系统中需要为不同目的地址或源地址配置多条路由路径,以实现流量按策略分发到多个网络出口,则需通过策略路由与多路径路由机制完成。以下是具体配置步骤:
一、启用IP转发与禁用反向路径过滤
策略路由依赖内核开启IPv4转发功能,并需关闭严格的反向路径验证(rp_filter),否则部分策略路由包可能被丢弃。
1、临时启用IPv4转发:
执行命令 echo 1 > /proc/sys/net/ipv4/ip_forward。
2、临时关闭所有接口的rp_filter:
执行命令 for i in /proc/sys/net/ipv4/conf/*/rp_filter; do echo 0 > $i; done。
3、永久生效需编辑 /etc/sysctl.conf,添加以下两行:
net.ipv4.ip_forward = 1
net.ipv4.conf.all.rp_filter = 0。
二、创建自定义路由表并添加规则
Linux策略路由通过将路由表与选择规则绑定实现分流,需先在/etc/iproute2/rt_tables中注册新表名,再使用ip rule和ip route配置对应关系。
1、向 /etc/iproute2/rt_tables 追加两行:
200 table_a
201 table_b。
2、为接口eth0(主出口)配置默认路由至table_a:
执行命令 ip route add default via 192.168.1.1 dev eth0 table table_a。
3、为接口eth1(备用出口)配置默认路由至table_b:
执行命令 ip route add default via 10.0.2.1 dev eth1 table table_b。
4、添加基于源地址的策略规则:
执行命令 ip rule add from 192.168.1.100/32 table table_a;
执行命令 ip rule add from 10.0.2.100/32 table table_b。
三、基于目的地址的多路径路由配置
当同一目标网络存在多条可达路径时,可使用等价多路径(ECMP)或非等价多路径(UCMP)方式负载分担流量,需通过ip route的nexthop语法实现。
1、删除原有单路径默认路由(如存在):
执行命令 ip route del default。
2、添加两条等价下一跳的默认路由:
执行命令 ip route add default nexthop via 192.168.1.1 dev eth0 weight 1 nexthop via 10.0.2.1 dev eth1 weight 1。
3、验证多路径状态:
执行命令 ip route show default,输出应包含nexthop字段及两个via条目。
四、基于应用层标识的策略路由(使用iptables + fwmark)
对于无法按源/目的IP区分但需按协议或端口分流的场景,可通过iptables标记数据包,再结合fwmark匹配策略路由规则。
1、标记所有TCP 80端口出站包:
执行命令 iptables -t mangle -A OUTPUT -p tcp --dport 80 -j MARK --set-mark 1。
2、添加fwmark规则指向table_a:
执行命令 ip rule add fwmark 1 table table_a。
3、确保table_a中存在对应路由(如已配置,默认路由即可);若需专用路径,可添加:
ip route add 0.0.0.0/0 via 192.168.1.1 dev eth0 table table_a。
五、持久化策略路由配置
重启后策略路由配置会丢失,需将命令写入系统启动脚本或使用专用服务管理,避免手动重复执行。
1、新建脚本文件 /usr/local/bin/setup-policy-routes.sh,写入全部ip rule/ip route命令。
2、添加执行权限:
执行命令 chmod +x /usr/local/bin/setup-policy-routes.sh。
3、在systemd服务中调用该脚本:
创建 /etc/systemd/system/policy-routes.service,内容包含Type=oneshot与ExecStart=/usr/local/bin/setup-policy-routes.sh,并启用服务:
systemctl enable policy-routes.service。
到这里,我们也就讲完了《Linux多路径路由配置详解》的内容了。个人认为,基础知识的学习和巩固,是为了更好的将其运用到项目中,欢迎关注golang学习网公众号,带你了解更多关于的知识点!
快速去除锅底黑垢的实用方法
- 上一篇
- 快速去除锅底黑垢的实用方法
- 下一篇
- CSS flex布局实现内容与侧边栏分层设计
-
- 文章 · linux | 2小时前 |
- Linux远程桌面怎么用?VNC/XRDP教程
- 192浏览 收藏
-
- 文章 · linux | 12小时前 |
- Linux安装图形界面教程详解
- 119浏览 收藏
-
- 文章 · linux | 14小时前 |
- Linux下安装Ruby环境详细教程
- 221浏览 收藏
-
- 文章 · linux | 16小时前 |
- Linuxulimit设置与调优指南
- 292浏览 收藏
-
- 文章 · linux | 17小时前 |
- Ansible脚本开发实战指南
- 176浏览 收藏
-
- 文章 · linux | 1天前 |
- Linux关防火墙教程:ufw与firewalld使用指南
- 491浏览 收藏
-
- 文章 · linux | 1天前 |
- Linux镜像源设置与优化技巧
- 385浏览 收藏
-
- 文章 · linux | 1天前 |
- Linux日志管理与集中收集技巧
- 356浏览 收藏
-
- 文章 · linux | 1天前 |
- Linux禁用用户账号的步骤与技巧
- 167浏览 收藏
-
- 文章 · linux | 1天前 |
- Linux内核版本查看方法详解
- 486浏览 收藏
-
- 文章 · linux | 1天前 |
- Linux日志查看与/var/log目录解析
- 311浏览 收藏
-
- 文章 · linux | 1天前 |
- 查看Linux开机启动项的几种方法
- 363浏览 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 543次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 516次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 500次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 485次学习
-
- ChatExcel酷表
- ChatExcel酷表是由北京大学团队打造的Excel聊天机器人,用自然语言操控表格,简化数据处理,告别繁琐操作,提升工作效率!适用于学生、上班族及政府人员。
- 4129次使用
-
- Any绘本
- 探索Any绘本(anypicturebook.com/zh),一款开源免费的AI绘本创作工具,基于Google Gemini与Flux AI模型,让您轻松创作个性化绘本。适用于家庭、教育、创作等多种场景,零门槛,高自由度,技术透明,本地可控。
- 4479次使用
-
- 可赞AI
- 可赞AI,AI驱动的办公可视化智能工具,助您轻松实现文本与可视化元素高效转化。无论是智能文档生成、多格式文本解析,还是一键生成专业图表、脑图、知识卡片,可赞AI都能让信息处理更清晰高效。覆盖数据汇报、会议纪要、内容营销等全场景,大幅提升办公效率,降低专业门槛,是您提升工作效率的得力助手。
- 4365次使用
-
- 星月写作
- 星月写作是国内首款聚焦中文网络小说创作的AI辅助工具,解决网文作者从构思到变现的全流程痛点。AI扫榜、专属模板、全链路适配,助力新人快速上手,资深作者效率倍增。
- 5882次使用
-
- MagicLight
- MagicLight.ai是全球首款叙事驱动型AI动画视频创作平台,专注于解决从故事想法到完整动画的全流程痛点。它通过自研AI模型,保障角色、风格、场景高度一致性,让零动画经验者也能高效产出专业级叙事内容。广泛适用于独立创作者、动画工作室、教育机构及企业营销,助您轻松实现创意落地与商业化。
- 4726次使用
-
- 命令行工具:应对Linux服务器安全挑战的利器
- 2023-10-04 501浏览
-
- 如何使用Docker进行容器的水平伸缩和负载均衡
- 2023-11-07 501浏览
-
- linux .profile的作用是什么
- 2024-04-07 501浏览
-
- 如何解决s权限位引发postfix及crontab异常
- 2024-11-21 501浏览
-
- 如何通过脚本自动化Linux上的K8S安装
- 2025-02-17 501浏览

