由于一些流量转发上的需求,我想要测试将一台linux服务器作为tailscale出口节点进行流量转发的效果。

参考官方文档:Exit Nodes (route all traffic) · Tailscale Docs

环境介绍

  • 作出口节点服务器:Debian 20

  • 客户端:Windows 10

  • tailscale版本:1.56.1

服务器端启用IP转发

  1. 打开sysctl.conf文件sudo nano /etc/sysctl.conf

  2. 向其中写入以下内容,用于ipv4和ipv6的转发,记得保存:

net.ipv4.ip_forward = 1
net.ipv6.conf.all.forwarding = 1
  1. 接下来启用新配置:sudo sysctl -p /etc/sysctl.conf

  2. 允许Masquerading(NAT),即将内部地址转换为外部地址(以ufw为例):

sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw reload
sudo ufw route allow in on tailscale0 out on eth0
# 注意这里提到的eth0根据你的实际网卡进行设置
  1. 重新运行tailscale并将其设为exit node:sudo tailscale up --advertise-exit-node

  2. 打开tailscale网页控制台,看到该设备的请求

over

接下来在其它设备上启用出口节点即可。