Ubuntu 多网卡安全路由配置(SSH 不断线版)

Ubuntu 多网卡路由配置笔记(内网 + 外网同时通)(SSH断线版)文章浏览阅读386次,点赞4次,收藏5次。本文介绍了Ubuntu 如何配置双网卡设备的路由规则,使默认流量走外网(192.168.2.0/24)的同时保留内网(192.168.1.0/24)访问能力。通过强制覆盖路由命令(ip router replace)分别设置内网和外网路由,并提供了Ubuntu 24.04下通过rc.local实现开机自启的配置方法。文章包含路由测试指令和两种开机启动方案(推荐rc.local方式),强调该方案能保障SSH连接不中断,且灵活易管理。所有操作均基于作者使用随身WiFi(LTE无线路由器)作为外网的场景。https://blog.csdn.net/qq_35086097/article/details/148685880

此文章前提

场景说明

设备有两个网卡:

  • eh0:连接 内网(192.168.1.0/24);

  • MAC001001001:连接 外网(192.168.2.0/24,例如随身WiFi);


目标

  • 默认流量走外网;

  • 保留内网访问(如通过 192.168.1.1 访问路由器);

  • SSH 不中断(即使你通过内网登录);

  • 重启后自动恢复配置。


查看当前路由

bash 复制代码
ip route show

正确的路由配置(SSH 不断线)

1. 设置内网路由(直连,不能用 via)

bash 复制代码
sudo ip route replace 192.168.1.0/24 dev eh0 proto kernel scope link src $(ip -4 addr show dev eh0 | grep -oP '(?<=inet\s)\d+(\.\d+){3}')

自动获取当前 IP,避免硬编码,确保不影响 SSH。

2. 设置默认路由走外网

bash 复制代码
sudo ip route replace default via 192.168.2.1 dev MAC001001001 metric 100

3. 查看/设置优先级

查看优先级命令:

bash 复制代码
ip route show

不断开SSH 设置优先级

bash 复制代码
sudo ip route replace 192.168.1.0/24 dev eh0 proto kernel scope link src 192.168.1.188
sudo ip route replace default via 192.168.1.1 dev eh0  metric 200
sudo ip route replace default via 192.168.2.1 dev Mac00101010101 metric 100

验证路由状态

bash 复制代码
ip route show | grep -E '192\.168\.1\.0|default'

示例输出:

bash 复制代码
default via 192.168.2.1 dev MAC001001001 metric 100
# 你的IP==192.168.1.188  
192.168.1.0/24 dev eh0 proto kernel scope link src 192.168.1.188

测试网络连通性

bash 复制代码
ping -c4 192.168.1.1           # 测试内网
ping -c4 8.8.8.8               # 测试外网
curl http://www.baidu.com      # 测试 DNS + HTTP

🔁 设置开机自动生效(Ubuntu 24.04)

Ubuntu 24.04 默认禁用 rc.local,需要手动启用。

1. 创建 /etc/rc.local

bash 复制代码
sudo nano /etc/rc.local

写入:

bash 复制代码
#!/bin/bash
​
IP=$(ip -4 addr show dev eh0 | grep -oP '(?<=inet\s)\d+(\.\d+){3}')
ip route replace 192.168.1.0/24 dev eh0 proto kernel scope link src $IP
ip route replace default via 192.168.2.1 dev MAC001001001 metric 100
exit 0

2. 设置权限

bash 复制代码
sudo chmod +x /etc/rc.local

3. 创建 Systemd 服务

bash 复制代码
sudo nano /etc/systemd/system/rc-local.service

内容如下:

bash 复制代码
[Unit]
Description=/etc/rc.local Compatibility
ConditionPathExists=/etc/rc.local
​
[Service]
Type=forking
ExecStart=/etc/rc.local start
TimeoutSec=0
StandardOutput=tty
RemainAfterExit=yes
SysVStartPriority=99
​
[Install]
WantedBy=multi-user.target

4. 启用并启动服务

bash 复制代码
sudo systemctl enable rc-local
sudo systemctl start rc-local
sudo systemctl status rc-local

不推荐方式:Netplan / NetworkManager

  • 多默认网关配置复杂,易冲突;

  • 推荐使用 rc.local 灵活管理路由。


总结表

功能 命令示例或描述
默认走外网 default via 192.168.2.1 dev MAC001001001 metric 100
保留内网访问 192.168.1.0/24 dev eh0 proto kernel scope link src 当前IP(自动获取)
防止 SSH 断线 不使用 via 设置内网段
开机自动恢复 使用 /etc/rc.local + systemd 启动

🧩 附加建议

如果上一篇你已经设置了,导致了SSH连接不上,用下面的脚本尝试恢复

bash 复制代码
sudo ip route replace 192.168.1.0/24 dev en0 proto kernel scope link src 192.168.1.188

如果你担心误操作路由导致 SSH 断线,可以使用自动恢复脚本:

自动恢复网络路由配置的安全脚本说明https://blog.csdn.net/qq_35086097/article/details/148761528


全文都是自己的亲测,可用!!!

设备:LTE无线路由器、一台服务器,系统为Ubuntu(24.04)、一个无线网卡

情况:我自己手机开热点啥的完全可以实现自动连接,但是随身wifi不行 (LTE无线路由器),可能自己配置DHCP之类的吧。配置之后就可以上网了

以上只是配置路由表,如果发现连上了但是上不了外网 请用

bash 复制代码
ip route show 

检查是否是路由表的优先级(metric )是否有问题!!!!

一定是内网的metric 要比外网的metric 要大 (优先级越大 越靠后,没有就是0)

bash 复制代码
sudo ip route replace 192.168.1.0/24 dev eh0 proto kernel scope link src 192.168.1.188
sudo ip route replace default via 192.168.1.1 dev eh0  metric 200
sudo ip route replace default via 192.168.2.1 dev Mac00101010101 metric 100

相关推荐
程序员陆通4 小时前
CentOS/AlmaLinux 9 中 SSH 服务启动失败:OpenSSL 版本不匹配解决
linux·centos·ssh
小马哥编程4 小时前
JWT 是由哪三个部分组成?如何使用JWT进行身份认证?
网络协议·http·架构·ssh
岛屿旅人4 小时前
英国国防部推进本土化开放架构建设
网络·人工智能·安全·web安全·架构
盈创力和20074 小时前
技术解析:CO与NO₂双气体监测如何构筑协同化安全防线
嵌入式硬件·安全·以太网温湿度传感器·多参量传感器·温湿度+气体智能传感器
TwoAnts&DingJoy5 小时前
数据分析-数据沙箱
人工智能·python·安全·数据分析·数据沙箱
lingggggaaaa5 小时前
小迪安全v2023学习笔记(一百四十三讲)—— Win系统权限提升篇&AD内网域控&NetLogon&ADCS&PAC&KDC&CVE漏洞
windows·笔记·学习·安全·内网安全·权限提升
没枕头我咋睡觉5 小时前
【运维】ubuntu修改镜像源
linux·运维·ubuntu
liuccn6 小时前
Ubuntu 22.04 离线升级 OpenSSH 到 9.8p1
linux·ubuntu·github
HaiLang_IT6 小时前
2026届 网络与信息安全专业毕业设计选题推荐与指导(含热门研究方向)
网络·安全·信息安全
Mr. Cao code7 小时前
实战:Docker构建Haproxy负载均衡镜像
linux·运维·ubuntu·docker·容器·负载均衡