公司内Mac内外网同时访问

利用shell脚本来实现, 用到route命令

如果你的公司也跟我一样网线可以访问内网, WIFI可以访问外网, 总是来回切, 那就用这个方法只需配置一次, 就能同时能访问内外网了

首先修改网卡优先级

  1. 打开Mac中的 网络偏好设置

  2. 点击可以访问外网的连接, 我这里以WIFI为例, 点击WiFi, 点击下方的按钮设定服务顺序, 吧WiFi拖动到第一位.

    image-20210116213208205
    image-20210116213406844

执行脚本

以内网网段为192.168.0.0为例, 如果有多个网段, 重复执行即可

# 删除对应网段的配置
sudo route -n delete 192.168.0.0
# 添加内网访问 x.x.x.x 代表内网的DNS地址, 也就是路由器地址
sudo route -n add -net 192.168.0.0 -netmask 255.255.0.0 x.x.x.x

用<Automator(自动操作)>来配置开机启动

由于路由配置每次开机都会恢复默认值, 所以需要配置开机自启动

  1. 打开Automator, 新建应用程序 搜索运行AppleScript

  2. 在右侧窗口中填入以下代码, 替换当中对应的账户名, 密码和DNS地址

    on run {input, parameters}
     do shell script "route -n delete 192.168.0.0" user name "YOUR COMPUTER NAME" password "YOUR COMPUTER PASSWORD" with administrator privileges
     do shell script "route -n add -net 192.168.0.0 -netmask 255.255.0.0 X.X.X.X" user name "YOUR COMPUTER NAME" password "YOUR COMPUTER PASSWORD" with administrator privileges
     return input
    end run
    
  3. 保存为.app, 然后在设置-用户与群组-登录项中添加刚才的app即可

推荐阅读更多精彩内容