How I set up ipv6 for two LAN bridge with one WAN

here is my current config

I created br-pve with lan1, but ipv6 not working as usual as the default bridge br-lan, client not received any valid wan ipv6 address from dhcp and no router to wan ipv6.
It's there anyway to diagnosis this problem? thanks.

interfaces config

Please post the output of cat /etc/config/network and cat /etc/config/dhcp on your router.

Its also worth noting that Proxmox VE (the host) doesn't do DHCPv6 out of the box. You have to install a DHCPv6 client first. I usually install dhcpcd and configure it to listen only on the desired interface and only request IPv6 addresses.
You can skip that if your PVE host doesn't require IPv6 connectivity. The guests (VMs and LXCs) will do IPv6 just fine, regardless of the host having an IPv6-address or not.

thank you for your reply

here is the network config:

config interface 'loopback'
        option device 'lo'
        option proto 'static'
        option ipaddr '127.0.0.1'
        option netmask '255.0.0.0'

config globals 'globals'
        option packet_steering '1'
        option ula_prefix 'fd19:b372:1c1c::/48'

config device
        option name 'br-lan'
        option type 'bridge'
        list ports 'lan1'
        list ports 'lan2'

config interface 'lan'
        option device 'br-lan'
        option proto 'static'
        option ipaddr '192.168.1.1'
        option netmask '255.255.255.0'
        option ip6assign '60'

config interface 'wan'
        option device 'wan'
        option proto 'pppoe'
        option username 'pppoe_username'
        option password 'pppoe_password'
        option ipv6 'auto'

config interface 'wan6'
        option device 'wan'
        option proto 'dhcpv6'

config device
        option name 'lan3'

config device
        option name 'lan3'

config device
        option name 'lan3'

config device
        option type 'bridge'
        option name 'pve'
        list ports 'lan3'

config interface 'eth_pve'
        option device 'pve'
        option proto 'static'
        option ipaddr '192.168.0.1'
        option netmask '255.255.255.0'
        option ip6assign '64'
        list ip6class 'wan_6'

dhcp config

config dnsmasq
        option domainneeded '1'
        option boguspriv '1'
        option filterwin2k '0'
        option localise_queries '1'
        option rebind_protection '1'
        option rebind_localhost '1'
        option local '/lan/'
        option domain 'lan'
        option expandhosts '1'
        option nonegcache '0'
        option authoritative '1'
        option readethers '1'
        option leasefile '/tmp/dhcp.leases'
        option resolvfile '/tmp/resolv.conf.d/resolv.conf.auto'
        option nonwildcard '1'
        option localservice '1'
        option ednspacket_max '1232'

config dhcp 'lan'
        option interface 'lan'
        option start '100'
        option limit '150'
        option leasetime '12h'
        option dhcpv4 'server'
        option dhcpv6 'server'
        option ra 'server'
        option ra_slaac '1'
        list ra_flags 'managed-config'
        list ra_flags 'other-config'

config dhcp 'wan'
        option interface 'wan'
        option ignore '1'

config odhcpd 'odhcpd'
        option maindhcp '0'
        option leasefile '/tmp/hosts/odhcpd'
        option leasetrigger '/usr/sbin/odhcpd-update'
        option loglevel '4'

config dhcp 'eth_pve'
        option interface 'eth_pve'
        option leasetime '12h'
        option start '50'
        option limit '100'
        option dhcpv4 'server'
        option ra 'server'
        option dhcpv6 'server'
        list ra_flags 'managed-config'
        list ra_flags 'other-config'

Seems I was wrong, LAN1-2 is for br-lan and connected to my PC and other devices, and LAN3 is for br-pve and only connected to my PVE host, the image in the thread is wrong, and I have updated image in thread.

Its also worth noting that Proxmox VE (the host) doesn't do DHCPv6 out of the box. You have to install a DHCPv6 client first. I usually install dhcpcd and configure it to listen only on the desired interface and only request IPv6 addresses.
You can skip that if your PVE host doesn't require IPv6 connectivity. The guests (VMs and LXCs) will do IPv6 just fine, regardless of the host having an IPv6-address or not.

My PVE host doesn't need IPv6 connectivity, I just need IPv6 to connect my LXC containers.

here is my PVE CT network config, the IPv6 was set to DHCP

  1. remove the redundant wan6 interface. pppoe-wan already spawned wan_6 automatically for you.
  2. I don't know how you created the three lan3 device entries, but I guess they can be removed. If you only use lan3 you don't need to create a bridge. Just use the lan3 device with your eth_pve interface directly.

I remove two useless lan3 device entries (I think it's generated by Luci by mistake) and remove br_pve, just configure static address for lan3, but ipv6 also doesn't work well.

/etc/config/dhcpd

config dnsmasq                                                                                                                                                             
        option domainneeded '1'                                                                                                                                            
        option boguspriv '1'                                                                                                                                               
        option filterwin2k '0'                                                                                                                                             
        option localise_queries '1'                                                                                                                                        
        option rebind_protection '1'                                                                                                                                       
        option rebind_localhost '1'                                                                                                                                        
        option local '/lan/'                                                                                                                                               
        option domain 'lan'                                                                                                                                                
        option expandhosts '1'                                                                                                                                             
        option nonegcache '0'                                                                                                                                              
        option authoritative '1'                                                                                                                                           
        option readethers '1'                                                                                                                                              
        option leasefile '/tmp/dhcp.leases'                                                                                                                                
        option resolvfile '/tmp/resolv.conf.d/resolv.conf.auto'                                                                                                            
        option nonwildcard '1'                                                                                                                                             
        option localservice '1'                                                                                                                                            
        option ednspacket_max '1232'                                                                                                                                       
                                                                                                                                                                           
config dhcp 'lan'                                                                                                                                                          
        option interface 'lan'                                                                                                                                             
        option start '100'                                                                                                                                                 
        option limit '150'                                                                                                                                                 
        option leasetime '12h'                                                                                                                                             
        option dhcpv4 'server'                                                                                                                                             
        option dhcpv6 'server'                                                                                                                                             
        option ra 'server'                                                                                                                                                 
        option ra_slaac '1'                                                                                                                                                
        list ra_flags 'managed-config'                                                                                                                                     
        list ra_flags 'other-config'                                                                                                                                       
                                                                                                                                                                           
config dhcp 'wan'                                                                                                                                                          
        option interface 'wan'                                                                                                                                             
        option ignore '1'                                                                                                                                                  
                                                                                                                                                                           
config odhcpd 'odhcpd'                                                                                                                                                     
        option maindhcp '0'                                                                                                                                                
        option leasefile '/tmp/hosts/odhcpd'                                                                                                                               
        option leasetrigger '/usr/sbin/odhcpd-update'     
        option loglevel '4'                                                                                                                                                
                                                                                                                                                                           
config dhcp 'pve'                                                                                                                                                          
        option interface 'pve'                                                                                                                                             
        option start '100'                                                                                                                                                 
        option limit '150'                                                                                                                                                 
        option leasetime '12h'                                                                                                                                             
        option ra 'server'                                                                                                                                                 
        list ra_flags 'managed-config'                                                                                                                                     
        list ra_flags 'other-config'                                                                                                                                       
        option dhcpv6 'server'          

/etc/config/network


config interface 'loopback'
        option device 'lo'
        option proto 'static'
        option ipaddr '127.0.0.1'
        option netmask '255.0.0.0'

config globals 'globals'
        option packet_steering '1'
        option ula_prefix 'fd19:b372:1c1c::/48'

config device
        option name 'br-lan'
        option type 'bridge'
        list ports 'lan1'
        list ports 'lan2'

config interface 'lan'
        option device 'br-lan'
        option proto 'static'
        option ipaddr '192.168.1.1'
        option netmask '255.255.255.0'
        option ip6assign '60'

config interface 'wan'
        option device 'wan'
        option proto 'pppoe'
        option username ''
        option password ''
        option ipv6 'auto'

config device
        option name 'lan3'

config interface 'pve'
        option proto 'static'
        option device 'lan3'
        option ipaddr '192.168.0.1'
        option netmask '255.255.255.0'
        list ip6class 'wan_6'

You need to assign a prefix to your pve interface:

option ip6assign 64

Otherwise the config looks fine now.
The wiki has a section about that: https://openwrt.org/docs/guide-user/network/ipv6/configuration#downstream_configuration_for_lan_interfaces

thank for your help, but after I set ip6assign to 64 LAN3 got the wrong ipv6 address

IPv6 address starts with fd51 is not my WAN IPv6 address got by IPv6-PD, the right WAN IPv6 address is starts with 2409, how I configure it to that?

You only seem to get an address from your ULA-prefix. I never used the ip6class option myself, so I don't know how it works exactly. Try again with removing the line

list ip6class 'wan_6'

from pve. That way you should get both a local and a global address.

I assumed that ip6class 'wan_6' would give you only a global address, but that doesn't seem to be the case. Maybe you have to use just wan, since wan_6 is only a virtual interface.