Mac使用技巧之内外网双通

1,762 阅读2分钟

前言: 由于公司最近网络升级,导致内网彻底无法访问 Github 、Stack Overflow 等常用网站,原因是运营商针对固定IP进行了访问限制,这就增加了我们学习知识🤪的难度。虽然公司后来提供了一个WiFi来支持我们访问外网,但是需要手动切换,所以很繁琐。

我们可以利用路由表来支持同时访问。

  • 首先,我们需要利用USB和WiFi同时接入内外网

QQ20220422-095045@2x.png

  • 如上图所示,WIFI连接的是外网,USB连接的是内网,默认USB优先级高,此处我已做过调整,将WIFI的优先级设置为最高

QQ20220422-094843@2x.png

  • 然后我们需要配置路由表:

      1. 打开终端:
      1. 查看路由表:
      netstat -nr
      

QQ20220422-100747.png

    • 3. 查看默认路由:
      route get 0.0.0.0
      

QQ20220422-110810.png

    • 4. 首先将默认路由删掉:
      sudo route delete 0.0.0.0
      

QQ20220422-110900.png

    • 5. 再将内网默认路由删掉:
      sudo route delete 192.168.10.0
      

QQ20220422-110913.png

    • 6. 重新添加默认路由到外网网关:
      sudo route -n add -net 0.0.0.0 192.168.1.1
      

QQ20220422-110930.png

    • 7. 重新添加内网默认路由到内网网关:
      sudo route -n add -net 192.168.10.0 192.168.10.1
      

QQ20220422-111011.png

    • 8. 添加本地内网IP到内网网关:
      sudo route -n add -net 10.1.80.157 192.168.10.1
      sudo route -n add -net 10.1.80.167 192.168.10.1
      sudo route -n add -net 10.1.80.170 192.168.10.1
      sudo route -n add -net 10.1.80.200 192.168.10.1
      

QQ20220422-111028.png

    • 9. 然后添加本地DNS解析到内外网配置上

QQ20220422-112733.png

QQ20220422-112747.png

      1. 如果存在FQ需求,则需要在对应规则上,添加本地直连访问,这样在开启FQ规则模式下,也能够直接访问内网
      rules:
          - 'DOMAIN-KEYWORD,YOUR_DOMAIN_KEYWORD,DIRECT'
      
  • 测试一下结果:

QQ20220422-113624.png

大功告成!

终于可以在不用切换WIFI和USB中迷失自我了,大大提升了开发效率!

PS:如果有些IP地址无法解析,可以添加到本地 Hosts 文件中,推荐使用 SwitchHosts 来搞定,特别是针对 Github 访问慢的情况,添加订阅,可以自动更新,这样在不开启FQ模式下,我们也能够快速访问 Github

QQ20220422-114642@2x.png

QQ20220422-114737@2x.png

以上方案添加的路由表,在每次重启后都会清空

永久配置路由表参照以下方案

# 查询网卡列表
networksetup -listallnetworkservices
# 查询指定网卡的配置信息
networksetup -getadditionalroutes USB\ 10/100/1000\ LAN
# 单条添加(目标IP 目标IP的网络掩码 网关IP)
networksetup -setadditionalroutes USB\ 10/100/1000\ LAN 10.1.80.157 255.255.255.0 192.168.10.1
# 多条添加(空格隔开)
networksetup -setadditionalroutes USB\ 10/100/1000\ LAN 10.1.80.157 255.255.255.0 192.168.10.1 10.1.80.167 255.255.255.0 192.168.10.1 10.1.80.170 255.255.255.0 192.168.10.1 10.1.80.200 255.255.255.0 192.168.10.1
# 删除(直接设置为空即可)
networksetup -setadditionalroutes USB\ 10/100/1000\ LAN

致谢:彬彬😁

参考:

www.zhihu.com/question/58…

juejin.cn/post/701968…

www.jianshu.com/p/5117c493a…