更改 SSLVPN 推送的 DNS 服务器(在 macOS Catalina 上使用 FortiClient)

更改 SSLVPN 推送的 DNS 服务器(在 macOS Catalina 上使用 FortiClient)

我想更改 SSLVPN(macOS 上的 FortiClient)推送的默认 DNS 服务器。我将使用 IP 地址通过 VPN 访问网络资源。显然,即使我有兴趣使用不同的 DNS 服务器,我也不希望路由表发生更改,以便通过 VPN 隧道正确路由到正确的目标/子网的流量。

注意,我发现了一个旧帖这似乎回答了这个问题,但我无法弄清楚在 macOS Catalina 上该怎么做。

当 VPN 已连接时,如果我scutil --dns在 Mac 上的终端中运行,我会得到以下输出

解析器 #1
  搜索域[0]:mycompanyFQDN.com
  名称服务器[0] : 10.1.2.3
  名称服务器[1] : 10.4.5.6
  名称服务器[2]:192.168.1.1
  标志:补充,请求 A 记录
  到达:0x00000002(可到达)
  订单:100000

解析器 #2
  名称服务器[0] : 10.1.2.3
  名称服务器[1] : 10.4.5.6
  名称服务器[2]:192.168.1.1
  flags :请求 A 记录
  到达:0x00000002(可到达)
  订单:200000

以及其他一些 ip6(选项:mdns)解析器

VPN 未连接时,如果我scutil --dns在 Mac 上的终端中运行,我会得到以下输出

解析器 #1
  名称服务器[0]:192.168.1.1
  flags :请求 A 记录
  到达:0x00020002(可到达,可直接到达的地址)

解析器 #2
  域:本地
  选项:mdns
  超时:5
  flags :请求 A 记录
  到达:0x00000000(无法到达)
  订单:300000

以及其他一些 ip6(选项:mdns)解析器

总而言之,我的问题是,每当 VPN 连接时,如何将 DNS 服务器更改为 192.168.1.1。我希望我可以通过 shell 脚本或类似方法自动执行此操作。

提前致谢。

编辑(2020/12/22):总结一下我按照我的评论尝试过的方法:打开我的 VPN 后,我通过运行 scutil 然后输入以下内容找到了主服务 ID列表在下一行。然后我在终端中尝试了以下命令(以 sudo 身份运行 scutil 后)

获取状态:/网络/服务/forticlientsslvpn/DNS
d.添加服务器地址 * 192.168.1.1 192.168.1.2
设置状态:/网络/服务/forticlientsslvpn/DNS

但是,成功运行上述命令且没有任何错误后,当我运行 scutil --dns 时,我仍然看到相同的旧 DNS 服务器。即使在清除 DNS 缓存后也是如此。我原本希望看到 192.168.1.1 192.168.1.2,但我仍然看到 FortiClient VPN 推送的 DNS。

相关内容