Zend certified PHP/Magento developer

Pihole in a IPv6 setup: How to reliable distinguish certain clients for them to be grouped?

In my local home network, I want to have IPv4 and IPv6.

I want to use my pihole as primary DNS.

I furthermore want to group clients so that certain devices can bypass the blocklist and issue their requests upstream. (As in: friends who don’t like google ads links being broken).

I don’t want to configure an alternative DNS server on each client itself.
I don’t want to disable IPv6 and just use IPv4.

How can I achieve that?


What I am trying to achieve is very straight forward for me in IPv4 world:

In an IPv4 world, I:

  • assign each of my clients a static IPv4 address within my network due to their mac address
  • have a pihole running with a static IPv4 address issued by my server
  • have my DHCP server announce the pihole address as DNS server to each client
  • within pihole configuration, I can now add clients to certain groups

Now, I also want to allow IPv6 traffic and here I am mainly confused.

Static IPv6 addresses suddenly aren’t really a thing. Everything is autoconfig. That is fine. I handled it so that DHCPv6 server announces the ULA of my pihole, which I hope won’t change, as DNS server and each clients that issues their DNS requests at my pihole.

Yet in my router, I cannot assign clients to a specific IPv6 address.

My router isn’t even in charge of issuing out IPv6 addresses, it merely announces the prefix of all the networks, and each client now makes up their own IPv6 addresses (plural), and those temporary ones really make everything else a mess. As how can I reliable determine which IPv6 address belong to which client?

How can I group clients for my pihole in a IPv6 setup? Is there an IPv6 way of achieving this?