之前有配置好headscale+tailscale+derp,当时的需求是要组建自己的虚拟局域网。
最近在查资料的时候,还可以将headscale的某个节点配置为出口路由,这样可以供局域网内所有的设备走这台节点访问网络。具体是什么就很清楚了。
配置Headscale Exit Nodes(出口节点)
你可以将接入到Headscale网络内的任意节点(设备)设置为Exit Nodes(出口节点)。
这有什么用呢?打个最简单的比方,假设你的Headscale网络内接入了一台境外的VPS,你把这台境外的VPS设置为Exit Nodes,之后你所有接入到Headscale网络内的节点(设备)都可以直接翻墙。
也就是说如果我把自己的这台甲骨文ARM设置为Exit Nodes,那么我之前接入的Windows10、iPhone等设备就可以通过这台甲骨文ARM来翻墙了。下面简单演示一下。
设置Exit Nodes的机器要开启IP转发:
echo 'net.ipv4.ip\_forward = 1' | tee \-a /etc/sysctl.d/99\-tailscale.conf
echo 'net.ipv6.conf.all.forwarding = 1' | tee \-a /etc/sysctl.d/99\-tailscale.conf
sysctl \-p /etc/sysctl.d/99\-tailscale.conf
宣告自己想成为Exit Nodes:
tailscale set \--advertise\-exit\-node
回到Headscale控制服务器,执行如下命令:
headscale routes list
可以看到有两条路由但还没有启用:
ID | Machine | Prefix | Advertised | Enabled | Primary
1 | moonbridge | ::/0 | true | false | -
2 | moonbridge | 0.0.0.0/0 | true | false | -
再通过执行如下命令来启用这两条路由:
headscale routes enable \-r 1 headscale routes enable \-r 2
再次查看路由就是启用的状态了:
ID | Machine | Prefix | Advertised | Enabled | Primary
1 | moonbridge | ::/0 | true | true | -
2 | moonbridge | 0.0.0.0/0 | true | true | -
现在我们就可以配置客户端来使用这个出口节点了.
本文由 admin 创作,采用 知识共享署名4.0 国际许可协议进行许可。
本站文章除注明转载/出处外,均为本站原创或翻译,转载前请务必署名。