I used ubuntu as Host OS for my virtual machines.and One of them is my openwrt router server. One day after I update the system and rebooted.I can not obtian publc IPv6 address In my router.
- first I suspect ISP made some changes to my modem, so I try different settings of the modem,but nothing changed except I barely lost connect to the modem.
- during try the modem I used another computer instead of my server,the later computer can get IPv6 address.
- then I give up try to tweak settings and using backup plan. use a physical AP as main router instead the virtual soft router.
- other devices outside the server can get IPv6 successfully. but the vms still can not obtian IPv6 address.
- after change to physical router the server left a spare ethernet port.I use that ethernet port as physical port to one vm instead of bridge network. that vm can successfully obtian IPv6 address.
- so the problem become more clear.something between libvirt and vm prevent guest obtian IPv6 address.so I googled about "libvirt ipv6" get no answer.so I google libvirt setup guide.
- in this article I noticed the sysctl settings about bridge.and this libvirt document told the details.
- first I tried direct change sysctl values.IPv6 get in vms.but after host restart the sysctl
bridgesetting will reset.I tried libvirt document but not work.I had to make the bridge module loaded to keep the bridge sysctl settings. - everything fixed.but I do not understand why the recently update made the IPv6 changes.
- and I think I used a linux desktop as I host machine has some benifit. like I can debug and search internet without another computer because the desktop can run browser.I had no hardware to try proxmox,but I will try proxmox later.