Hi there,
My network topology as below:
ISP optic modem (bridged)---WAN---openwrt router 21.02 snapshot ---LAN2 trunk vlan57 ---Linux box running docker containers
ISP only assigns a /64 prefix for me, there is PD available, so with the modem bridged my lan clients behind openwrt router can obtain v6 addresses.
I have some docker containers running on a small Linux box, my intention: Separate these containers from my LAN network with vlan and setup separate firewall zones for security reason, while obtaining ipv6 addresses for them so they can have global ipv6 addresses.
I have created trunk ports on LAN2 and the Linux box successfully, docker containers can work on macvlan57 created, everything is OK for ipv4. However I cannot get ipv6 working. My normal LAN clients on br-lan can obtain ipv6 addresses, and if I switch the docker container to use untagged network, it can also have ipv6 network (manually assigned v6 address, docker is not very smart on this).
If I setup the LANWX (vlan57) interface with the same setting of my br-lan and reboot, then LANWX can get a /64 address but my br-lan loses ipv6 access. I completely understand this is because I only have /64 prefix and with that I can only have one subnet of ipv6.
So my question for you geniuses is: can I achieve my goal with merely a /64 prefix? I just want ipv6 access for containers while separating them from the main network
My knowledge on network is not much, maybe using NDP? Or subdividing a /64 subnet against the standard? I am aware this will break SLAAC ipv6 on android devices but that is trivial right now.
My network and dhcp config attached (sensitive filtered, no firewall rules ATM, I can figure that out later):
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'
config device
option name 'br-lan'
option type 'bridge'
list ports 'lan2'
list ports 'lan3'
list ports 'lan1'
config interface 'lan'
option device 'br-lan'
option proto 'static'
option netmask '255.255.255.0'
option ipaddr '192.168.66.218'
option ip6ifaceid 'eui64'
option ip6assign '64'
config interface 'wan'
option device 'wan'
option proto 'pppoe'
option username 'namehere'
option password 'passhere'
option ipv6 'auto'
config interface 'wan6'
option device 'wan'
option proto 'dhcpv6'
option reqaddress 'try'
option reqprefix 'auto'
config device
option type '8021q'
option ifname 'lan2'
option vid '57'
option name 'lan2.57'
config interface 'LANex'
option proto 'static'
option device 'lan2.57'
option ipaddr '192.168.57.99'
option netmask '255.255.255.0'
list dns '1.2.3.4'
config dnsmasq
option domainneeded '1'
option localise_queries '1'
option rebind_protection '1'
option rebind_localhost '1'
option local '/lan/'
option domain 'lan'
option expandhosts '1'
option readethers '1'
option leasefile '/tmp/dhcp.leases'
option resolvfile '/tmp/resolv.conf.d/resolv.conf.auto'
option localservice '1'
option dns_redirect '1'
option ednspacket_max '1232'
option authoritative '1'
config dhcp 'lan'
option interface 'lan'
option start '100'
option limit '150'
option leasetime '12h'
option dhcpv4 'server'
option ra_management '1'
option ra 'server'
list ra_flags 'managed-config'
list ra_flags 'other-config'
option dhcpv6 'server'
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 'LANex'
option interface 'LANex'
option start '100'
option limit '150'
option leasetime '12h'
list ra_flags 'none'
option ndp 'relay'
option ndproxy_slave '1'