虽然搭建了私有 DERP 节点,但实际使用过程中,还是会存在公共节点延迟比私有节点延迟低,自动切换到公共节点。但切换到公共节点反而是使得连接更加不稳定,为了解决这个问题,只能考虑怎么仅使用私有 DERP 节点,或禁用部分公共节点。

仅使用私有 DERP 节点

可以在 Access Controls 中配置 derpMap.OmitDefaultRegionstrue ,使 tailscale 只使用私有 DERP 节点。

{
  "DERPMap": {
    "OmitDefaultRegions": true,
    "Regions": {
      // ...
    }
  }
}

禁用部分公共节点

根据自定义 DERP 服务器中的资料把公共节点的区域设置为 null 即可,例如根据 https://login.tailscale.com/derpmap/defaulthttps://controlplane.tailscale.com/derpmap/default 得知纽约的区域 ID 为 1,且需要禁用纽约的公共节点,则可以参加如下配置。

但是根据默认的 DERP ,我并没有找到香港的区域 ID,而我需要禁用的是香港区域,这就有点蛋疼了。
{
  "DERPMap": {
    "Regions": {
      "1": null
    }
  }
}

标签: none

添加新评论