CentOS内网外网静态路由配置实践
场景需求分析
当服务器配备双网卡且需同时访问内网与外网资源时,通过静态路由实现流量分流是常见解决方案。例如:eth0连接内网(192.168.1.0/24),eth1连接外网并配置公网IP,需确保内网通信走eth0,外网流量通过eth1转发。
配置流程详解
1. 确认网络接口信息
ip addr show
ifconfig -a
记录内网与外网网卡名称(如eth0、eth1)及对应IP地址。
2. 查看当前路由表
route -n
ip route list
观察默认网关设置及现有路由规则。
3. 添加临时静态路由
# 内网路由(示例)
ip route add 192.168.1.0/24 dev eth0
# 外网默认网关
ip route add default via 公网网关IP dev eth1
此配置重启后失效,适用于临时测试。
4. 配置永久静态路由
编辑对应网卡的路由配置文件:
vim /etc/sysconfig/network-scripts/route-eth0
# 添加内容:
192.168.1.0/24 dev eth0
vim /etc/sysconfig/network-scripts/route-eth1
# 添加内容:
default via 公网网关IP dev eth1
5. 应用配置变更
systemctl restart network
6. 验证路由生效
# 检查特定目标的路由路径
ip route get 目标IP地址
# 测试内外网连通性
ping 内网主机IP
ping 8.8.8.8
关键注意事项
- 确保默认网关仅在外网接口生效
- 使用
metric
参数处理多默认网关冲突 - 通过
traceroute
命令验证实际流量路径 - 修改前备份
/etc/sysconfig/network-scripts/
目录文件
典型排错方法
# 检查内核路由缓存
ip route show cache
# 监控实时路由变更
ip monitor route
# 验证ARP表记录
arp -n