Hello.
I have MikroTik hAP ac² (ROS 6.45.3) and my ISP provides dynamic (I see that from the fact it changes when I manually renew the address) /56 IPv6 prefix to end user.
They use just DHCP for WAN connection establishment I guess since it requires to have zero setup. Provided IPv4 is behind NAT which is not unusual though.
So, my older OpenWRT router successfully gives me addresses both from link-local pool fe80::/16 and global prefix from ISP somewhere in 2000::/3.
hAP at first just ignored global prefix but did actually sent me link-local address. After that I manually configured ND and it started to push global address instead. After a while I tried to add link-local pool manually but now I only have only link-local address in all of the devices connected to hAP.
So, how should I configure just working IPv6 with either global and link-local addresses available with as little hardcoded settings as possible?
Here’s info from /ipv6 export which you will probably ask anyway. IPv6 firewall rules pretty much default.
/ipv6 dhcp-server
add address-pool=dhcp6-lan dhcp-option="" disabled=no interface=bridge lease-time=23h59m59s name=dhcp6-lan preference=255 rapid-commit=yes route-distance=1 use-radius=no
/ipv6 pool
add name=dhcp6-lan prefix=fe80::/16 prefix-length=64
/ipv6 dhcp-client
add add-default-route=yes default-route-distance=1 dhcp-options="" disabled=no interface=ether1 pool-name=dhcp6-pd pool-prefix-length=64 prefix-hint=::/0 request=address,prefix use-peer-dns=no
/ipv6 dhcp-relay
add delay-threshold=none dhcp-server=::%ether1 disabled=no interface=bridge link-address=:: name=dhcp6-pd
/ipv6 nd
set [ find default=yes ] advertise-dns=no advertise-mac-address=yes disabled=no hop-limit=unspecified interface=ether1 managed-address-configuration=no mtu=unspecified other-configuration=no ra-delay=3s ra-interval=3m20s-10m \
ra-lifetime=30m reachable-time=unspecified retransmit-interval=unspecified
add advertise-dns=yes advertise-mac-address=yes disabled=no hop-limit=unspecified interface=bridge managed-address-configuration=no mtu=unspecified other-configuration=no ra-delay=3s ra-interval=3m20s-10m ra-lifetime=30m \
reachable-time=unspecified retransmit-interval=unspecified
/ipv6 nd prefix default
set autonomous=yes preferred-lifetime=1w valid-lifetime=4w2d
/ipv6 settings
set accept-redirects=yes-if-forwarding-disabled accept-router-advertisements=yes-if-forwarding-disabled forward=yes max-neighbor-entries=8192
Edit: Since no one was able to help, I finally did it myself and SLAAC is working now. It is usable enough to not bother with manual dhcp setup.
So here is my configuration (except firewall):
/ipv6 address
add address=::1 from-pool=pool-v6 interface=bridge
/ipv6 dhcp-client
add add-default-route=yes interface=ether1 pool-name=pool-v6 request=address,prefix use-peer-dns=no
/ipv6 nd
set [ find default=yes ] advertise-dns=no hop-limit=64 other-configuration=yes ra-interval=20s-1m ra-lifetime=5m
/ipv6 nd prefix default
set preferred-lifetime=10m valid-lifetime=12m