通过 Mikrotik 路由器上的 IP 地址将 Netflix 和 Youtube 流量重定向到另一个网关

通过 Mikrotik 路由器上的 IP 地址将 Netflix 和 Youtube 流量重定向到另一个网关

我帮助一位朋友管理几栋有公寓出租的大楼的网络。

节日期间,所有公寓都已订满,这意味着我们有 40-60 位客人。有 18 个智能电视盒,可观看 Netflix、Youtube 等。

我们目前有 4 个互联网提供商连接,它们的稳定性和速度都一般,因为房子在山里,没有光纤链路,我们必须使用 1 个无线电链路(还不错)和 3 个 LTE 连接(假期时情况相当糟糕,因为附近有很多游客和酒店,LTE 基础设施有时无法正常处理所有设备)。

我正在尝试负载平衡(多个 WAN,带有数据包标记),但是当我们在假期期间遇到 LTE 稳定性问题时,一切都无法正常工作,因此我放弃了分割流量并将所有切换到最佳网关,这样我就实现了最佳稳定性(但速度很慢)。

现在我想将 Netflix 和 Youtube 的默认路由设置为速度较慢/可靠性较低的网关,并将最佳连接留给其他互联网连接。

我正在使用相对低成本的 Mikrotik 路由器(RB760),我想避免复杂的配置,因为这会占用大量的 CPU 时间,这就是为什么我想使用简单的路由来完成这项任务。

我的问题是:

Youtube 和 netflix 是否提供任何 IP 地址列表,可用于通过选定的网关创建到它们的默认路由?

到目前为止,我发现了有关 Netflix 的以下文章:关联Youtube 上的这篇文章:关联但我不确定这些地址是否适合我想要实现的流量控制。

我还想听听大家对这个想法的总体看法。

答案1

我已经这样做了,步骤如下:

  1. 将您的 Mikrotik 路由器设置为客户端的 DNS 服务器
  2. 每 10 秒左右运行以下脚本,在 DNS 表中查找所有 netflix 条目,并将它们放入列表(地址列表)中
  3. 设置 mangle 规则来为所有发往该列表(即 Netflix)的数据包标记特定的路由标记。
  4. 为所有如上标记的包裹添加一条到您的特殊旅游门户的路线。
  5. 喝杯咖啡

脚本

:global ajouteIP do={
  :if ([:len [/ip firewall address-list find address="$nouvelleIP" and list="netflix"]] = 0) do={
    /ip firewall address-list add list="netflix" address=$nouvelleIP timeout=02:00:00
  }
}

:local myServers { "nflx";"nflximg";"unodns";"uno";"netfl"}
/ip dns cache all {
  :foreach i in=$myServers do={
    :foreach j in=[find where (name~$i)] do={
      :local myName [get $j name]
      :local myType [get $j type]
      :local myData [get $j data]
      :if ($myType = "A") do={
        $ajouteIP nouvelleIP=$myData
       }

      :if ($myType = "CNAME") do={
        :local ipResolue [:resolve "$myData"];
         $ajouteIP nouvelleIP=$ipResolue
      }
    }
  }
}

粉碎规则

/ip firewall mangle
add action=mark-routing chain=prerouting comment="Sortie Netflix" dst-address-list=netflix new-routing-mark=via-sortie-netflix passthrough=yes protocol=tcp src-address=[your clients IP addresses]

路由规则

/ip route
add distance=1 gateway=[Tourist gateway IP] routing-mark=via-sortie-netflix

相关内容