There are a lot of variables is probably why Mikrotik doesn’t. I have an example, or a copy pasta, below you can start with. What it is is the default ipv6 firewall rules, with ether1 being the WAN requesting through DHCPv6 an address and a prefix for local networks. It adds that received prefix to pool ISPv6, assigns the bridge a eui64 address from that pool and advertises it as a router using googles IPv6 DNS addresses.
I do not advocate copy and pasting code/configs off the internet, but this will get you going and perhaps give the basic understanding of what happens.
I think it comes down to feature set and potential complexity. I agree with you on the need for something for SOHO, just tack on what i sent you to the QuickSet and call it a day. What the prior doesn’t account for is multiple VLANS, hardware features and so on.
Most (if not all) of config posted by @cfikes is default IPv6 config. So devices that come with default config (SOHO devices) will have it enabled if IPv6 is installed/enabled when device is reset to defaults. This is true with ROS v7 (has IPv6 enabled by default) but not with ROS v6 because IPv6 is not installed by default. If IPv6 package is installed at later time, it’s default config will not be applied … but will be shown in /system default-configuration print never the less.
Interface lists know nothing of higher level protocols, they can be used in IPv4 and/or IPv6 firewall rules.
For info: DHCPv6 has no mechanism to obtain or provide a default gateway. The Mikrotik DHCPv6 client add-default-route=yes is a hacky bodge, it uses the address of the DHCPv6 server from which the address/prefix/other information was received - this works if the DHCPv6 server and the default gateway have the same link-local address, but otherwise fails.
If the WAN connection is IPoE the correct method is to use received router advertisments (RA) which unfortunately are not displayed by RouterOS, as discussed in other forum posts, and was completely broken in early releases of RouterOS v7. The default IPv6 settings include forward=yes and accept-router-advertisements=yes-if-forwarding-disabled, and as you are using forwarding between WAN and LAN you need to set accept-router-advertisements=yes. It would be nice if Mikrotik implemented RFC7084/RFC9096.
Requesting an IPv6 WAN address is usually not necessary. On receiving a router advertisment containing prefix information (they all should) and the autonomous address-configuration flag set the WAN interface will automatically be assigned a GUA formed from the prefix and EUI-64 address generated from the interface MAC address, in just the same way non-router endpoints such as PCs would. Note this RA prefix is not the same as that obtained through DHCPv6 prefix delegation.
The more “everyday feature” IPv6 gets, the more common knowledge there will be. Lets compare IPv4 and IPv6 standard configurations and not special cases:
IPv4: get IPv4 ADDRESS for router using DHCPv4 client, share internal IPs and network configuration using DHCPv4 server, filter, NAT filter internal traffic using FIREWALL
IPv6: get IPv6 PREFIX for router using DHCPv6 client, share (external) addresses from prefix using ND, filter traffic using FIREWALL (ALLOW/DENY), NATing is not mandatory.
Main things to replace in mind with IPv6:
a) first half of IPv6 address is network, second half is device
b) subnets of different sizes of aka prefixes are shared to clients. If ISP gives you /56, then you have 64-56=8 → 2^8 subnets available for you for splitting.
c) public addresses for internal clients are OK, for firewall it’s easier to ALLOW/DENY than to SRC-NAT(masquerade) or DST-NAT (portforward).
d) don’t keep the static internal addresses mindset in IPv6, it’s possible in IPv6, but not with Mikrotik, also there are clients (Android) that only support autoconfiguration, so you can’t get rid of SLAAC.
e) it’s client devices, not router, that decides how many addresses to use, how to use them and how often to change them. DNS for internal devices is currently harder part in Mikrotik
f) there are tons of IPv6 addresses for you in every prefix, so get and set different IPv6-address for every service in your router/device, so you can easily enable/disable them in FIREWALL
In ROSv6 you have to enable ipv6 module and reset configuration to get standard firewall rules, in ROSv7 IPv6 is built-in, so you already get standard firewall rules with reset configuration.
Simple example:
get prefix from ISP and put into prefix pool. From prefix pool you can split it further to your needs using DHCPv6 server, but DHCPv6 server is not needed if you do not need to split prefix.
get subnet from pool and get set address from it to the bridge. In IPv6 network’s min and max addresses are not reserved, so you may get prefix:: aka prefix::0 for the bridge
One can disagree with MT’s policy but I can understand that the most powerful devices come without default config. MT somehow expects those devices to be configured by networking pros who are supposed to know things better. If a non-pro is faced with configuring such devices … then she’s in trouble, neh? It is expected that those pro devices will be used in very different use cases and including default config (which would cover only a fraction of use cases) is simply not necessary.
IMO posting default config can be helpful but also bad at the same time because the will often not be motivated to learn (enough) ROS. And one of skills that comes very handy on non-pro devices is knowledge about how to retreive and read default configuration.