【Tailscale】DERPer中继从源码的搭建及Headscale导入

💡 原文中文,约7600字,阅读约需18分钟。
📝

内容提要

DERP是Tailscale的中继服务器,负责客户端连接信息的交换和流量中继。由于国内网络环境特殊,官方节点连接延迟和稳定性差,因此需要自行编译DERP。本文记录了DERP的编译、安装和运行过程,包括使用Tailscale客户端接入Tailnet和配置NGINX反向代理,最后检查DERP节点是否成功添加。

🎯

关键要点

  • DERP是Tailscale的中继服务器,负责客户端连接信息的交换和流量中继。
  • 由于国内网络环境特殊,官方节点连接延迟和稳定性差,需要自行编译DERP。
  • DERP程序是基于Go构建的二进制文件,官方未提供预编译包。
  • 编译DERP需要下载Go环境并使用Go命令构建derper二进制文件。
  • 安装Tailscale客户端以接入自己的Tailnet网络,防止DERP服务器被其他用户使用。
  • 在阿里云ECS上使用Tailscale时需注意MagicDNS地址与内网DNS冲突。
  • 运行DERPer时可以选择不同的命令配置,支持HTTPS和HTTP端口跳转。
  • 使用NGINX反向代理可以更好地隐藏服务特征,配置简单。
  • 在headscale的config.yaml中设置DERP列表,重启headscale服务以应用配置。
  • 使用tailscale netcheck检查DERP节点是否添加成功,并获得延迟信息。
➡️

继续阅读