I have had IPv6 working at my house for years now with various MikroTik routers connected directly to my cable modem. My router is getting a /56 from my ISP via DHCPv6 and that works fine. The router is given a list of DNS servers which all get populated into /ip dns (even though half are IPv6).
When I do SLAAC on this router with clients, everything works great with IPv6. No complaints. I can wireshark the IPv6 configuration process and I can see the router advertisement giving the client everything it needs, including a list of IPv6 DNS servers.
I have other MikroTik routers under my top router and I’m routing /64 networks to my other routers using a routing protocol and statically defined addresses from a /125 network I’m using from my /56. This all works just fine. Clients under these get a /64 prefix and also an IPv4 address. There are no IPv6 DNS servers defined on those clients from SLAAC. They only have an IPv4 DNS server defined. IPv6 seems to work only because the IPv4 DNS server that clients get is able to handle AAAA requests.
Under these “2nd tier” routers, I want SLAAC to work with clients and it doesn’t work because the IPv6 DNS server is not being advertised in the router advertisement. I have confirmed this with Wireshark. And there seems to be no way to control this, correct?
I’m doing this same thing at work with a Juniper router and I’m able to control what information gets passed along in the router advertisement. But I can’t control it on MikroTik manually. It only seems to work if the router gets it’s info using DHCPv6, then it will pass it along in SLAAC. Is this the case? Why?
I guess the problems you see are result of MT’s current IPv6 half-cooked implementation.
We can only hope that some early ROS v7 (possibly not 7.0 though) will come with decent IPv6 implementation. There is hope as v7 comes with IPv6 enabled by default and as part of basic package.
Ok, I’ve heard of v7 for years, didn’t even know there was anything known about it. I’ll look into it.
I’m hoping to go as IPv6 native as I can. I was also hoping to tunnel IPv4 over IPv6 for the heck of it so my top router is 100% IPv6 native. Every time I search on that I find tunneling IPv6 through IPv4 which is backwards I used to do that with Hurricane Electric before my ISP had a sane IPv6 setup.
Things are moving … there’s an early 7.0beta available from download pages … according to forum feedback it’s got quite a few edges but it seems to be in some working state.
Thanks. Just saw it’s ARM only. The only ARM device I have is my production top level router. It’s an RB450Gx4. All others are MIPS.
The reality is I could probably use just about anything as that router and get away with it, maybe I’ll move to another one and test v7 on the ARM. Or just get another ARM device.
(One time I made my mAP-lite my top level router using vlans and a cisco switch just for fun. It worked fine!)
Indeed it is really bad that you cannot select which IPv6 DNS servers are sent in router advertisement. The choice is only between “nothing” and “the IPv6 servers defined in IP->DNS” but there really should be the additional selection of “the local address of the router” at minimum, so you can advise the clients to use the local DNS resolver of the router.
Unfortunately that selection is not present.
It is possible to setup a DHVPv6 server that will hand out any user-defined DNS server on IPv6 but you need to manually setup the DHCP option.
And of course it will only work with clients that make a DHCPv6 request to obtain this information.
(remember you cannot use the MikroTik DHCPv6 server to assign addresses to clients, it cannot do that! it can only delegate prefixes, not single addresses!)