前置步骤

首先确认路由器支持ipv6,可以参考如何给家用wifi开启ipv6

1. PVE网桥通过SLAAC配置公网ipv6地址

Proxmox安装后默认没有通过SLAAC配置公网ipv6地址,使用debian/ubuntu的方法配置ipv6提示错误不支持的方法auto。 iface vmbr0 inet6 auto 原来Proxmox使用的是ifupdown2,非debian/ubuntu使用ifupdown。 查看内核也已经开启ipv6自动配置:

cat /proc/sys/net/ipv6/conf/vmbr0/accept_ra
1
cat /proc/sys/net/ipv6/conf/vmbr0/autoconf
1

查看已开启ipv6转发:

cat /proc/sys/net/ipv6/conf/vmbr0/forwarding
1

需要将accept_ra值改成2才能自动配置SLAAC ipv6地址: vim /etc/sysctl.conf

net.ipv6.conf.all.accept_ra=2
net.ipv6.conf.default.accept_ra=2
net.ipv6.conf.vmbr0.accept_ra=2
net.ipv6.conf.all.autoconf=1
net.ipv6.conf.default.autoconf=1
net.ipv6.conf.vmbr0.autoconf=1

sysctl -p生效

2. 配置lxc容器

修改系统配置

查了下资料,网上都是在/etc/sysctl.conf内新增:

net.ipv6.conf.all.accept_ra=2  
net.ipv6.conf.default.accept_ra=2  
net.ipv6.conf.vmbr0.accept_ra=2  
net.ipv6.conf.all.autoconf=1  
net.ipv6.conf.default.autoconf=1  
net.ipv6.conf.vmbr0.autoconf=1

然后执行sysctl -p生效。 但是我的lxc容器没有vmbr0这个网卡,会报错找不到对应的文件,所以把上述内容中的vmbr0改成我有的eth0即可:

net.ipv6.conf.all.accept_ra=2  
net.ipv6.conf.default.accept_ra=2  
net.ipv6.conf.eth0.accept_ra=2  
net.ipv6.conf.all.autoconf=1  
net.ipv6.conf.default.autoconf=1  
net.ipv6.conf.eth0.autoconf=1

执行sysctl -p生效。

更改lxc容器配置

网络-双击网卡,将ipv6配置改成SLAAC

过一会执行ifconfig能看到ipv6地址,就能在路由器看到ipv6终端了。接下来可以进行ddns配置:ikuai安装和ddns配置实现域名映射ipv6访问。