Headscale 组网搭建
约 334 字大约 1 分钟
2024-10-26
部署 Headscale
1.创建docker-compose.yaml
version: '3'
services:
headscale:
container_name: headscale
# image: headscale/headscale:latest
image: headscale/headscale:v0.23.0
restart: unless-stopped
volumes:
- ./config:/etc/headscale
- ./data:/var/lib/headscale
entrypoint: headscale serve
networks:
headscale-network:
networks:
headscale-network:
external: true
2.创建网络和config、data文件夹
sudo docker network create headscale-network # 创建网络
sudo mkdir config data
3.创建配置文件(config/config.yaml)
config-example.yaml文件下载 变更 config.yaml 的部分配置(其他都不变)
# 修改成自己的域名
server_url: https://hijh.top
ip_prefixes:
- 100.64.0.0/10
- fd7a:115c:a1e0::/48
listen_addr: 0.0.0.0:8080
# listen_addr: 127.0.0.1:8080
4.启动 headscale 服务
sudo docker-compose up -d
5.利用代理工具将域名或者ip代理到http://127.0.0.1:8080
可以访问http://ip/apple 即配置成功
目录结构
- config
- config.yaml
- data
- docker-compose.yaml
Headscale 管理节点
添加节点
1.创建用户
sudo docker exec headscale headscale users ls
sudo docker exec headscale headscale users create username
2.创建用户 preauthkey
sudo docker exec headscale headscale preauthkeys create --user username
3.添加节点
sudo tailscale up --authkey=021176f6b5012f41d9ef6b0e546d40a60e74a637e2eddcfe --accept-dns=false --login-server=http://ip
常用命令
查看当前 headscale 管理的节点
docker exec headscale headscale machines list
Tailscale常用命令
# 申请加入服务端,并且将本地网络加入路由
tailscale up --login-server=https://ip --advertise-routes=10.0.0.0/24 --accept-dns=false --accept-routes
# 申请加入服务端(单机)
tailscale up --login-server=https://ip --accept-dns=false --accept-routes