IPv6 prefix assignment

My LAN interface is assigned an address of XXXX:XXXX:XXXX:1300::1/56. I use prefix delegation to my downstream cisco L3 switch and another virtual router. Is there a way to make the LAN interface use XXXX:XXXX:XXXX:13FF::1/56 instead so I can free up XXXX:XXXX:XXXX:1300::/64 for use downstream?


Sure is, try adding option ip6hint 'FF' to your LAN interface settings in /etc/config/network and then restart your network service.

Actually, I re-read your question. Did you really intend to have /56 assigned to your LAN or /64? With my answer, I assumed /64 since /56 would not be possible.

I have to assign the /56 to the interface so prefix delegation works. The interface ends up with a /64 in reality but it allows for the prefix to be delegated out downstream on that interface. It's confusing I know but it does work. The ip6hint does not work in this manner. Lets say I only wanted to assign a /64 with no prefix delegation, then the hint would work but it leaves me with no downstream IP space.

Yeah, I’m not sure how to go about doing what you’re aiming for there.

the typical advice I've heard is that only the biggest organizations (universities, Microsoft, etc) should do hierarchical routing, and the usual thing should be to hand out /64 at the edge for anyone smaller than say 100 buildings. Are you sure you really need to hierarchically route, or could you reorganize your network concept to push that downstream subnet to the edge on VLANs?

These are very good questions. I'm a network engineer believe it or not lol. I have a VMware cluster set up at home and probably about 200 devices connected on my lan. Probably going to end up doing a network redesign but I don't think there is going to be any easy way out of prefix delegation because I need the layer 3 switch behind my openwrt router. I used Cisco routers in the past but they are no where near as flexible as openwrt.

Does it have to be :1300 ?? why not just request a /64 prefix and then use whatever you get from OpenWrt?

actually, I think what you want is to assign a /64 to LAN and use the ipv6 hint, and then the downstream router should do a PD request, and the openwrt will give it a different /64

I am not a network engineer. I also have not done what I think you are trying to do.

Setting aside those facts and what I suspect is the better advice from the other posters above, have you looked at wide-dhcpv6-server?

I use wide-dhcpv6-client on a DIY ubuntu router for prefix delegation but from the wide-dhcp documentation the server variant might do what you want. I don't see wide-dhcp as an openwrt package but a google search indicates others might have packaged it in the past. You would have to reproduce that and integrate it into openwrt yourself.

Before taking those steps, setting up an linux router to play with isn't too difficult and might be a better option just to see if you can get what you want. Then look at adapting something for openwrt (or look at pfsense).

Regardless, the above will be a bit of work but might be fun if your interested in it.


Wide was what I attempted to use first actually prior to openwrt. The wide implementation of dhcpv6 was bugged with my ISP. It would work after a reboot then around 24 hours out it just dropped all IPv6 address except for the WAN. Openwrt has ran solid nonstop for a couple years now. I'm fiddling around with requesting multiple /64 blocks from the openwrt router instead of a single /60 from the pool. As soon as the wife gets out of her raid, I'm gonna test it.


LOL, right on! :rofl:

Well back to the drawing board. I'm sending multiple hints from the switch but only getting a single /64 back. Hard to say if its the switch or openwrt.

  Prefixes sent as hint: