As promised - Edgerouter configuration for @mentalinc with a small bonus for PiHole owners.
On your Edgerouter - you're needing to do this via the CLI under "configure" - this is assuming that you've got your WAN interface as PPPoE on eth0:
Clean up your old configuration first:
delete interface eth0 pppoe 0 dhcpv6-pd
delete interface eth0 pppoe 0 ipv6
delete interface eth1 ipv6
commit
save
Then set dhcpv6-pd up on your WAN interface (eth0 pppoe 0):
set interfaces ethernet eth0 pppoe 0 ipv6 enable
edit interfaces ethernet eth0 pppoe 0 dhcpv6-pd pd 0
set prefix-length /60
set interface eth1 host-address ::1
set interface eth1 prefix-id :0
set interface eth1 service slaac
top
commit
If you're wanting eth2 also then basically repeat with "eth2 prefix-id :2" and so-on. If you've got your own internal DNS you're wanting to use you'll need to run "set no-dns" above also.
Set a default route:
set protocols static interface-route6 ::/0 next-hop-interface pppoe0
commit
save
For Firewalling since I don't want to make a massive post the firewall configuration I use is available on https://murfy.nz/files/er_v6.txt - Don't just copy and paste this, ensure it is going to work for you before using it. I personally use a little bit of a different configuration since I have different needs however this configuration will just enable a basic firewall that drops all incoming except related and allows ICMPv6 (ping). You'll need to reboot your Edgerouter after configuration. I've found it doesn't quite behave as expected until a reboot with IPv6.
If you're running a PiHole then you essentially need to enable IPv6 on it. I personally did this by running "pihole -r" from the command prompt but before doing this it is best to configure a static IPv6 address (note since BigPipe issue "sticky" addresses your address shouldn't change, but if it does then you'll need to manually update the address on your PiHole).
From the CLI edit /etc/dhcpcd.conf adding "denyinterfaces eth0" (without quotes) to the end of the configuration and comment out anything related to your eth0 interface + slaac like this: https://img.murfy.nz/pYbGA
Next, edit /etc/network/interfaces and set your IPv6 up replacing your existing eth0 configuration (don't copy and paste this, use it as an example and edit for your needs. /64 is the internal prefix):
auto eth0
iface eth0 inet static
address 192.168.2.4
netmask 255.255.255.0
gateway 192.168.2.1
iface eth0 inet6 static
address 2403:9800:c048:xx::2
gateway 2403:9800:c048:xx::1
netmask 64
From this point you're pretty safe to just reboot your Pi. It should start responding over your IPv6 address as well as IPv4. Run "pihole -r" to reconfigure your Pi for IPv6. Go to your PiHole admin page and set your IPv6 DNS like so https://img.murfy.nz/u2SS4. It'll start responding over IPv6 now and should block ads over IPv6 also. I personally don't use the IPv6 address internally (it is more for the web server) but your PiHole will talk to BigPipe's IPv6 nameservers for most requests (neat!).
Hope this helps.