在 RouterOS 中,您可以使用以下脚本来自动设置 DNS 服务器,根据网络连接状况选择最佳 DNS 地址,提升网络访问速度。

:local currentDns [/ip dns get [find] servers]

:if ([/ping 1.1.1.1 count=1] = 0) do={
   :if ($currentDns != '223.5.5.5,119.29.29.29,223.6.6.6') do={
      /ip dns set servers=223.5.5.5,119.29.29.29,223.6.6.6
      /ip dns cache flush
   }
} else={
   :if ($currentDns != '10.0.0.1') do={
      /ip dns set servers=10.0.0.1
      /ip dns cache flush
   }
}

脚本解析:

  1. currentDns: 获取当前设置的 DNS 服务器地址。
  2. ping 1.1.1.1: 检查是否能够 ping 通 Google 公共 DNS 服务器。
  3. if 语句:
    • 如果能 ping 通 1.1.1.1,则检查当前 DNS 是否为 10.0.0.1,如果不是则设置为 10.0.0.1 并清空 DNS 缓存。
    • 如果不能 ping 通 1.1.1.1,则检查当前 DNS 是否为 223.5.5.5,119.29.29.29,223.6.6.6,如果不是则设置为这些地址并清空 DNS 缓存。

使用方法:

  1. 将脚本复制到 RouterOS 的终端或脚本编辑器中。
  2. 运行脚本。

注意事项:

  • 运行此脚本可能会导致网络中断,因为会更改 DNS 服务器设置。
  • 在执行脚本前,请备份您的配置,以防意外情况发生。
  • 脚本中的 DNS 地址可以根据您的网络环境进行修改。

通过使用此脚本,您可以根据网络连接状况选择最佳 DNS 地址,提高网络访问速度。


原文地址: http://www.cveoy.top/t/topic/bzVT 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录