This is just my experience running Pi-hole with the Sky Q router, as I’ve seen some closed questions on this in the Help forum. I’ve gotten it working and just wanted to save others some time if possible.
Router: Sky Q Hub Model: ER110 Firmware: 2.08.2405.R
Raspberry Pi 3 Model B+
Raspbian GNU/Linux 9.6 (stretch) lite version
Pi-hole Version v4.1.1
I mostly used this guide to install Pi-hole.
Down to business, the Sky Q Hub is pretty restricted, you cannot change it’s DNS server configuration. Ideally you don’t want to have to change the DNS setting of every device (for those that it’s possible to do so), so that leaves using Pi-hole as the DHCP server.
The Sky Q Hub allows you to turn off DHCP via it’s web interface: Advanced -> LAN IP Setup -> Use Router as DHCP Server uncheck this option, and restart the router.
I turned on the DHCP server in Pi-hole via it’s web interface: Settings -> DHCP -> DHCP server enabled.
To be safe I restarted my Pi and devices.
I found that nothing was being blocked on my Win10 laptop or my S8 phone. In the Pi-hole web interface I could see DHCP leases for my devices.
However my devices could not resolve: http://pi.hole/admin/ and the ads were not blocked on the test block page: [Mod Edit: Link no longer available]
Looking at the Pi-hole dashboard I could see some IPv6 clients. It looked like Pi-hole was not being used for IPv6.
Similar to IPv4 I found I could turn off DHCP for IPv6 in my Sky router: Advanced -> LAN IP Setup -> Enable IPv6 DHCP Server uncheck this option, and restart the router.
I turned on IPv6 DHCP on the Pi-hole: Settings -> DHCP -> Enable IPv6 support (SLAAC + RA).
I also checked the 2 IPv6 checkboxes in my Google Upstream DNS server (you may have chosen a different server) under: Settings -> DNS. Again to be safe I restarted my Pi and devices.
Once I did this I could now see the ad blocking was working and could resolve http://pi.hole/admin/ on my Laptop and also on an iPad.
However my Android S8 was showing ads, it seems to be ignoring the Pi-hole. I found several online instructions about flushing the DNS cache in Chrome, forgetting the WiFi network settings, clearing the App Storage Cache, but nothing worked. There were suggestions to download an app to manually change the DNS server, but that was contrary to what I wanted to achieve, and I didn’t want to have to do this for all my devices etc.
After some head scratching I decided to turn off IPv6 on my Sky router: Advanced -> LAN IP Setup -> Enable IPv6 on LAN side. After restarting the router, Pi-hole and devices again, I found that ads were now being blocked as expected on all devices. I could now resolve http://pi.hole/admin/ and the test ad page was blocked on my S8 phone as expected.
Note I haven’t turned off any IPv6 setting on the Pi-hole yet, I may try this later, but as everything seems to be working now, I’m going to take a break. Hope this helps someone.