PVE下使用Alpine的LXC容器配置Tailscale
配置ipv6
首先宿主机查看当前的配置
1 | sysctl -a | grep net.ipv6.conf.all.accept_ra |
确认为以下值
1 | net.ipv6.conf.all.accept_ra=2 |
不是的话
1 | sysctl -w net.ipv6.conf.all.accept_ra=2 |
然后执行sysctl -p
使配置生效
在创建LXC容器时,网络,ipv6获取方式选择SLAAC
添加设备
创建号LXC容器后,首先为容器添加tun设备
在PVE宿主机上查看设备号
1 | ls -l /dev/net/tun |
一般都是
root@pve:~# ls -l /dev/net/tun
crw-rw-rw- 1 root root 10, 200 May 1 01:16 /dev/net/tun
所以在 指定LXC容器的配置文件中新增两行
1 | lxc.cgroup2.devices.allow: c 10:200 rwm |
比如我的容器ID是102
1 | vim /etc/pve/lxc/102.conf |
启用 IP 转发
1 | echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf |
立即生效
1 | sysctl -p /etc/sysctl.conf |
配置sysctl服务的开机启动,使上述配置重启也可以生效
1 | rc-update add sysctl default |
安装
首先更换软件源为清华源
1 | sed -i 's/dl-cdn.alpinelinux.org/mirrors.tuna.tsinghua.edu.cn/g' /etc/apk/repositories |
增加一条源,该存储库包含了一些较新的社区维护软件包。
1 | echo "http://mirrors.tuna.tsinghua.edu.cn/alpine/edge/community" >> /etc/apk/repositories |
安装ip6tables
1 | apk add --no-cache ip6tables |
使用 dhcpcd 代替默认的 udhcpc,并设置开机启动
1 | apk add --no-cache dhcpcd |
安装Tailscale
1 | apk add --no-cache tailscale |
设置开机启动,并启动 tailscale
1 | rc-update add tailscale default |
配置
如果不配置子网路由,则执行
1 | tailscale up |
如果需要配置子网路由(自行修改IP段:192.168.31.0
)
1 | tailscale up --advertise-routes=192.168.31.0/24 |
本文采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 ShiGuang
评论