最近到客户现场办公,遇到了一个问题,客户的环境在内网,需要使用网线链接,而且网络只能访问客户环境,无法上外网,这就导致非常不方便。经过一番查找和尝试,发现原来可以通过网络设置和路由设置,实现内网外网同时访问。
首先说一下目前的情况:
方案:
首先进入网络偏好设置,拿到网线的路由器 IP 信息备用
然后点击网络列表下面的...点击“设定服务顺序”,按照需要将网外(这里是Wi-Fi)调整到最前面
到这里,网络设置就 OK 了,此时可以发现电脑可以正常访问外网了,但是内网是不能访问的,这是正常的,因为内网目前走的是 Wi-Fi,肯定无法走通。
内网需要的是走网线,怎么走?当然是配置路由转发。
首先我们要知道内网需要访问的网段,还有网线的路由器 IP,前面已经都收集到了,这个时候我们只需要添加一条路由配置即可(使用 root 执行),例如:
sudo route add 10.224.xx.xx/24 10.225.xx.xx
其中 10.224.xx.xx 是 内网网段,10.225.xx.xx 是网线连接的路由器 ip
添加完成之后,再去 ping 一下内网 ip 就会发现已经可以通了,此时大功告成。
虽然上面我们已经完成了内网外网同时访问,但是有个问题,就是当网线拔出来,再插进去,我们设置的路由就失效了,就需要重新添加路由,所以我添加了一个定时任务,定期检查内网是否通。
脚本很简单:
#!/bin/bash
# 定期添加路由,避免网线拔出来要重新设置
destination=10.224.xx.xx/24
gateway=10.225.xx.xx
ip=10.224.xx.xx
function echo_exit() {
echo $*
exit 1
}
[ "$(id -u)" -ne 0 ] && echo_exit "请使用root用户执行脚本"
ping -c 3 -n ${ip}
if [ $? -ne 0 ]; then
echo 'nok'
echo "route add ${destination} ${gateway}"
route add ${destination} ${gateway}
echo 'set route ok'
fi
版权声明:如无特殊说明,文章均为本站原创,转载请注明出处 本文链接:https://cloud.tencent.com/developer/article/2123584 许可协议:署名-非商业性使用 4.0 国际许可协议
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有