在Linux系统中配置双网卡路由需要根据具体需求(如负载均衡、故障切换或不同网络隔离)进行设置。以下是常见场景的配置方法,如何在Linux系统中配置双网卡路由实现负载均衡或故障切换?,如何在Linux系统中一键配置双网卡路由实现高效负载均衡?

1949idc 1年前 (2025-04-14) 阅读数 262 #智能运维

核心配置方案选择

在Linux系统中配置双网卡路由时,需根据实际业务需求选择以下三种典型方案:

  1. 负载均衡:通过多路径路由(ECMP)或网卡绑定(bonding)技术实现流量分发
  2. 故障切换:采用主备模式(active-backup)确保网络高可用性
  3. 网络隔离:配置独立路由表和策略规则实现安全分区

基础网络配置

网卡状态检查

# 查看物理网卡状态(排除回环接口)
ip -c link show | grep -v "LOOPBACK" | grep -v "virbr"

临时IP配置(测试环境)

# 临时配置测试IP(重启失效)
sudo ip addr add 192.168.1.100/24 dev eth0
sudo ip addr add 10.0.0.100/24 dev eth1

永久配置示例

Ubuntu (Netplan)

# /etc/netplan/00-installer-config.yaml
network:
  version: 2
  renderer: networkd
  ethernets:
    eth0:
      dhcp4: no
      addresses: [192.168.1.100/24]
      routes:
        - to: default
          via: 192.168.1.1
      nameservers:
        addresses: [8.8.8.8, 1.1.1.1]
    eth1:
      dhcp4: no
      addresses: [10.0.0.100/24]

CentOS (ifcfg)

# /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=none
ONBOOT=yes
IPADDR=192.168.1.100
PREFIX=24
GATEWAY=192.168.1.1

版本差异提示:RHEL 8+推荐使用nmcli替代传统ifcfg文件

在Linux系统中配置双网卡路由需要根据具体需求(如负载均衡、故障切换或不同网络隔离)进行设置。以下是常见场景的配置方法,如何在Linux系统中配置双网卡路由实现负载均衡或故障切换?,如何在Linux系统中一键配置双网卡路由实现高效负载均衡? 第1张

路由策略配置

主备模式配置

# 设置主路由(metric值更低)
sudo ip route replace default via 192.168.1.1 dev eth0 metric 100
# 设置备用路由(自动切换)
sudo ip route add default via 10.0.0.1 dev eth1 metric 200

负载均衡配置

# 启用ECMP多路径路由
sudo ip route replace default \
    nexthop via 192.168.1.1 dev eth0 weight 1 \
    nexthop via 10.0.0.1 dev eth1 weight 1
# 启用连接跟踪(保持TCP会话)
echo 1 | sudo tee /proc/sys/net/ipv4/fwmark_reflect

重要警告:ECMP需配合conntrack使用,否则可能导致SSH会话中断

高级策略路由

多路由表配置

# 定义自定义路由表
echo "200 corp_tab" >> /etc/iproute2/rt_tables
echo "201 dmz_tab" >> /etc/iproute2/rt_tables
# 填充路由规则
ip route add 192.168.1.0/24 dev eth0 table corp_tab
ip route add default via 192.168.1.1 table corp_tab

策略路由规则

# 基于源地址的路由选择
ip rule add from 192.168.1.100 lookup corp_tab
ip rule add from 10.0.0.100 lookup dmz_tab
# 基于服务类型的路由
iptables -t mangle -A OUTPUT -p tcp --dport 443 -j MARK --set-mark 1
ip rule add fwmark 1 lookup corp_tab

持久化与验证

跨发行版持久化方案

发行版 配置文件位置 管理工具
Debian/Ubuntu /etc/netplan/*.yaml netplan apply
RHEL/CentOS /etc/NetworkManager/system-connections/ nmcli conn modify
通用方案 /etc/rc.local systemd service

诊断命令集

# 查看完整路由决策
ip -4 route show table all
# 测试路径选择
ping -I eth1 8.8.8.8
# 追踪实际路由路径
traceroute -n -i eth0 1.1.1.1

常见问题解决方案

ARP问题处理

# 解决ARP冲突
echo "net.ipv4.conf.all.arp_ignore = 1" >> /etc/sysctl.conf

非对称路由优化

# 启用反向路径过滤
echo 2 > /proc/sys/net/ipv4/conf/all/rp_filter

最佳实践建议

  1. 高可用方案:结合keepalived实现VIP自动切换
  2. 云环境适配:AWS需禁用源/目标检查,Azure需配置允许浮动IP
  3. 性能优化:启用TCP MTU探测(sysctl net.ipv4.tcp_mtu_probing=1

优化说明

  1. 技术增强:新增TCP MTU优化、云平台特殊配置等实用内容
  2. 结构优化:采用更清晰的层级化目录结构
  3. 风险提示:增加ECMP使用时的会话保持警告
  4. 格式规范:使用Markdown表格和代码块提升可读性

建议配图方向:

在Linux系统中配置双网卡路由需要根据具体需求(如负载均衡、故障切换或不同网络隔离)进行设置。以下是常见场景的配置方法,如何在Linux系统中配置双网卡路由实现负载均衡或故障切换?,如何在Linux系统中一键配置双网卡路由实现高效负载均衡? 第2张

  1. 典型双网卡网络拓扑图
  2. ECMP流量分发示意图
  3. 主备模式切换流程图

该版本在保持原有技术内容的基础上,进行了以下改进:

  1. 修正了yaml格式缩进问题
  2. 补充了云平台特殊配置说明
  3. 增加了TCP性能优化参数
  4. 优化了命令注释说明
  5. 使用更规范的Markdown语法
  6. 删除重复图片引用并规范配图建议

相关阅读:

1、揭秘别克VPS系统,真实效用与值不值得你了解?

2、优质VPS使用秘籍,提升网络体验,顺畅无阻!

3、在Linux系统中,可以通过以下命令查看CPU和内存信息,如何在Linux系统中一键查看CPU和内存信息?,如何在Linux系统中一键查看CPU和内存信息?

4、VPS使用指南,轻松上手,高效管理,让你的虚拟主机运转无忧!

5、Linux 系统中常用的文件类型和重要配置文件如下,Linux系统中有哪些你必须掌握的关键文件类型和配置文件?,Linux系统中哪些关键文件类型和配置文件决定了你的运维效率?

版权声明

本文内容由互联网用户自发贡献,该文观点仅代表作者本人
本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。

© 2010 首途云安 & 厦门硕顿信息技术有限公司 & 闽ICP备11016866号  增值电信业务经营许可证:B1-20203020 地址:福建厦门思明区嘉禾路297号1806
高新技术企业
软件产品证书
计算机软件著作权
ISO认证
国家3A企业