Configure a VLAN for IPv6 ONLY

I have Starlink internet and it gives me a /56 IPv6 prefix in addition to a CG-NET IPv4 address. I normally use IPv4 for everything, mainly because almost all of my traffic goes through a privacy VPN with WireGuard.

But I'd like to set up a VLAN strictly for my XBox (or other future game consoles) that only uses IPv6 which should hopefully provide better connectivity for online multiplayer. This VLAN will bypass the VPN.

I've read everything I can find in the documentation and from searching the forums, and every example I can find always shows IPv6-capable VLANs set up as "static address" with an IPv4 address assigned.

Is this really necessary? How do I configure the "interface" for the VLAN if I only want it to use IPv6, never IPv4?

Please explain based on configuring with LuCI. Too many of the config options do not directly or intuitively translate to how LuCI shows them.

I think I have a handle on how to do everything else related to this, I just don't understand the "interface" setup.

Thank you for your help.

You can set this up on the OpenWrt side, just leaving out the IPv4 specific configuration - however, quite a few clients don't really like the total absence of IPv4 availability, you can only test that yourself.

But do I set up the VLAN interface as "static address" (leaving all addresses blank) or "DHCPv6 client", and do I need to enable the DHCPv6 server on it in either case?

By trial and error, it appears you can set this up as a "static address" interface type and simply not fill in any of the addresses. On the Advanced tab, enable "IPv6 assignment length" (64 was the only option shown for me).

Then enable the DHCP server on that interface, but leave the "ignore interface" box checked (I assume that means "don't serve IPv4 DHCP, but do serve/relay/RA IPv6", which is immensely confusing and should absolutely be made more clear in LuCI). In the IPv6 tab, I set RA-Service and DHCPv6-Service to "server mode" and left the rest alone. In the IPv6 RA tab, I set the RA Flags to "managed + other" and left everything else alone.

Configured this way, connected devices were being allocated public IPv6 addresses properly (as far as I could see) but not getting any IPv4 information.

However, as I was warned by @slh, but chose to ignore, my XBox One S refuses to go online with only IPv6 connectivity. Apparently Microsoft's bold marketing of "XBox on IPv6 will be the best XBox!" didn't mean jack because 10 years later, they still haven't upgraded the XBox infrastructure to support full IPv6. The vast majority of features still require IPv4, including basic sign-in, etc. Deeply annoying.

You can configure the IPv4 interface with proto none, and configure the ipv6 interface i.e. with proto static.

This would have to be done via config/uci, right? There's no way to a) split type, and b) choose "none" from the LuCI interface?

In any case, I'll end up providing IPv4 on this VLAN anyway because my XBox insists on it. I always thought IPv6 was "the future" but apparently that's literal, not just figurative. 20+ years in and it's still impossible to go IPv6 only, if you wanted to.

I don't use Luci so I can not answer that. But I guess that you should be able to select proto none somehow, otherwise it's a big in a sense of missing feature.

Regarding IPv6 only and still providing IPv4 access: if every address the Xbox is using is actually a DNS name then you can use dns64 and nat64, but yes, the router at least would still need to be dual stack.
IMHO IPv6 is the future and many applications just work fine but many large networks still struggle to implement it properly. One reason often is that network equipment is planed to be used 10 or even more years so a full refresh cycle in large networks could take a looking time. And of course large cooperation with huge ipv4 address space don't have to rush to implement IPv6 because they still have many many addresses.

But from my personal experience, steam on the other hand just uses IPv6 all the time.