PVE LXC设置openrc服务及启用tun
LXC启用TUN
适用于无特权容器
无特权容器在配置文件
/etc/pve/lxc/.conf中有unprivileged: 1
修改配置文件的方法已经过时,PVE8.1及以后可以直接在web面板里的resources设置设备直通

对应到配置文件中只有简单的一行:
dev0: /dev/net/tun
重启后检查容器内是否存在/dev/net/tun,存在则成功
容器启用RC服务
Alpine默认使用openrc而不是systemd。
在/etc/init.d/下创建服务文件,并授予x权限, $RC_SVCNAME就是服务文件名
#!/sbin/openrc-run
name="$RC_SVCNAME"
description="A network service"
command="/usr/bin/$RC_SVCNAME"
command_args="-d /etc/$RC_SVCNAME"
pidfile="/run/$SVCNAME.pid"
command_background=true
output_log="/var/log/$SVCNAME.log"
error_log="/var/log/$SVCNAME.err"
depend(){
need net
}
然后就可以设置自动启动了
rc-update add <service>
启用流量转发
echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf
echo "net.ipv6.conf.all.forwarding = 1" >> /etc/sysctl.conf
sysctl -p

浙公网安备 33010602011771号