How-To: Using Pi-Hole with Telekom Speedport routers

Hi everybody,

I'm a new member of the Pi-Hole gang and it me some time to actually get Pi-Hole running on my network since I'm using this crappy Telekom Speedport router which doesn't allow you to really do anything.

Please be aware that the Speedport is not FULLY supporting the Pi Hole scenario. See my remarks below!

On top of that, I'm using a TP-Link router which is connected to the Speedport as an WiFi AP but this will not be covered here. If you want to know how this works, let me know.

This tutorial is valid for everyone who is looking for the following scenario:

  • Using Pi Hole as an ad-blocker and using a Telekom Speedport as a router and modem.

My hardware:

  • Raspberry Pi Zero WH with an USB OTG adapter to connect via Ethernet
  • Telekom Speedport W724V Type A

The connectivity is very simple:

Public Internet --> Speedport W724V --> WiFi, LAN devices & Pi Hole

The Raspberry Pi Zero is connected to the USB and Ethernet ports of the Speedport. This allows the best Ping times and you don't need an extra power supply.

Pi Hole Installation

  1. Set up the Raspberry Pi Zero W or WH by using this tutorial for example: Headless Raspberry Pi Zero W Setup. Make sure that you have SSH access to the Pi.

  2. Install Pi Hole on the router by using any tutorial out there. For example: Block ads at home using Pi-hole and a Raspberry Pi

  3. While running through the set-up, you are asked if you want to keep the IP of the RPi the same. Make sure you set up this IP as you wish and note it down. You will need the IP all the time from now on!

  4. Once the Pi Hole installation is finished, let the Pi Hole reboot and you should be able to access the webinterface at http:///admin (replace with your Pi Hole's IP -> e.g. http://192.168.178.1/admin).

Speedport & Pi Hole Configuration

We now have to turn off the DHCP of the Speedport router and set up the Custom DNS. We also have to activate IPv6 ULA to successfully block ads in IPv6 scenarios. You will need your Telekom credentials (Zugangsdaten) for this!

  1. Open the Speedport configuration page (usually http://speedport.ip/) and go to Internet -> Access data. Select the Other provider option and enter the following information:

Name of the provider: Telekom Deutschland GmbH

Username: Here you will have to enter a string matching this pattern:
Anschlusskennung+T-Online Nummer+0001@t-online.de -> e.g. 002342342300550234323430001@t-online.de

Password: Enter the "Persönliches Kennwort" here.

Dynamic IP address: yes

Fixed DNS server address: Enter the IP of the Pi Hole in here for two times.

See the screenshot below for reference:

Save and let the router reconnect to the Internet. This will happen automatically.

  1. Open a new tab, log into the Admin console of Pi Hole and go to Settings on the left. Go to DNS and unmark all DNS servers on the left. Enter the IP of your router into both IPv4 fields. See screenshot below:


    Then click on Save.

  2. Go to the DHCP tab. Activate DHCP and define your desired DHCP range. Make sure to active the IPv6 support as well. See screenshot below for reference.


    Then click on Save.

  3. Go back to the tab where your Speedport Configuration page is opened and go to Home Network -> Home Network (LAN) -> DHCP. Turn the DHCP off.


    Then click on Save.

  4. Stay on the same page and open the Name and address of the router tab. Activate the setting Use local IPv6 address (ULA). Also copy the Local IPv6 address (the one in the red frame) into a text document as you will need later.
    image
    Then click on Save. The router will now reboot which will take some time. Use the time to reboot the Pi Zero W as well!

We will now have to change the IPv6 address of the Pi Hole before we can proceed. Unfortunately, this can be only done via CLI.

  1. Once the router and Raspberry Pi are back, you should now get your DHCP IP from Pi Hole and not the router anymore. Open any SSH tool and connect to the Pi Hole. Run the following command:
ip -6 address | grep 'global'

This should return two addresses:
image
Copy the address which starts with the fd01 prefix (the same prefix like the ULA address from step 9). In the screenshot it's the first address. Don't copy the "/64" as we don't need it.

  1. Now open nano by using the following command:
sudo nano /etc/pihole/setupVars.conf

Go to the line which looks like this

IPV6_ADDRESS=A:B:C

Remove the existing IPV6 and paste the IPv6 address you just extracted in step 10. Press Ctrl + X on your keyboard and then confirm by pressing Y and ENTER on your keyboard.

Then reboot the Pi Hole by entering:

sudo reboot
  1. Once the Pi Hole is back, go to the Web Interface of the Pi Hole. Open the Settings tab and check if your new IPv6 address is shown in the Overview.

image

  1. Go to the DNS tab and paste the IPv6 ULA address which you got in step 9 (!) into the fields Custom 3 (IPv6) and Custom 4 (IPv6). Make sure that there are no spaces in the IPv6 address, otherwise you get errors.

  2. Now reboot the Pi Hole one last time and voilà - your Pi Hole is your new DHCP and advertises itself as DNS to your devices.

Remarks / Known Issues:

  • Unfortunately, the Speedport is just a crappy device and won't let you turn off the IPv6 DHCP. This may lead to the problem that your devices get three DNS servers when connecting to the WiFi. Unfortunately, you can't avoid this but in my case, ads are usually blocked.

Have fun and let me know if the tutorial worked for you!

3 Likes

Not the Speedport is crappy but the Deutsche Telekom. They made the rules for this router.

Thank you!!! I made an account here just to tell you that. My god, I would have never figured that out myself. Can confirm that my Pi-Hole is now finally working with my crappy SpeedPort Hybrid router. Thank you again!

Hi WarHole, many thanks for your explanation. Workes quite well for me and my Speedport Hybrid (very scrappy...). I was very close to buy a FritzBox and dispense the really cool LTE feature of the SPH.

Finally i am able to set specific static IP addresses AND have the ad-Blocker. :star_struck:

Hi,
I registered to thank you for this wonderful step by step guide - this saved me so much time figuring out the correct configuration. Working fine for me!

However, I have two questions I'm not 100% sure and I want to understand. Please excuse before hand if these are noobish or sound stupid, I'm tinkering with these topics since some weeks and am by no means a professional.

  1. Is it necessary to set DNS provider as seen in step 5? Since we deactivated DHCP and set it to the raspberry, this shouldn't come into effect should it? For IP V6 where we can't deactivate DHCP, it won't work anyway. Reason I'm asking is a posting I found in the german forums, stating no change is necessary there.
  2. Is there anything specific on the speedport requiring it as the upstream DNS or was this done due to performance reasons? Planning to test Unbound and wanting to check if this is possible at all or Speedport is necessary due to some weird reasons.
1 Like

I think so too... Haven't changed the Telekom DNS-servers and doublechecked via nslookup, Pi-Hole resolved all requests, without using to the router's DNS-servers. As far as I can see, the clients (Pi-Hole DHCP) don't know anything about the DNS server on the Speedport and therefore don't use it either...

Thank you so much for sharing this - actually tried it out myself in the meantime and can confirm. Working like a charm with Unbound. So for everyone doing the setup itself:

  • Step 5 is optional if you want to deactivate the "Telekom Auto Support"
  • Step 6 is optional if you want to use your Speedport as Upstream DNS only (feel free to use whatever you want)

Hey thanks for the guide. I reached till step 10 but now I unfortunately can't connect to the pi hole via SSH, Putty can't finde the network. What do I have to do to fix that problem?

Regards

The issue I am facing:

I want to install a Pi hole with my Speedport Hybrid Router(Telekom)

Details about my system:
Pi Zero v1.3

I was following this guide: [How-To: Using Pi-Hole with Telekom Speedport routers] I did everything exactly like in the guide and reached till step 10. Now I want to conect via SSH to my pi hole but unfortunately putty tells me that it can't establish a connection:" Network not found" what did I have to do, to fix that problem?

I moved your comment back to the original thread. Please continue p the discussion there.

Hi @Pac, this might sound self-evident but are you sure the two devices actually are in the same network? You should see the ip-adress both devices when you login into your router. If they aren't, we could research potential causes

I could only Login into my router by the address speedport.ip. the router says the pi hole has the same "old" IPV4 Adress. But I still can't connect to him my ssh or the admin webpage

Hi,
can you ping your routers ivp4 via cmd? If not, please check your router ip adress in the speedport config whether it's the same range as your other devices.

Heya, got the same issue. pretty much consistently when i move from step 9 to 10 i lose the pi in my network, i tried pinging it and it wont. cant open pihole or ssh into the pi. when i undo those steps, its fine again. Not really sure what i am doing wrong, i got a pi3 & a speedport 3. If you got an idea what im doing wrong, id appreciate it, can also dig up some logs

@OtherDennis , this happens if the Pi-hole host doesnt have a static IP configured (not the same as a static DHCP reservation).
Most routers re-initialise their network connection(s) when changing network settings causing all the clients to try acquire a new DHCP lease again.
Including the Pi-hole host if it doesnt have a static IP configured.
Create a new help thread and post details like HW, OS/release and if its running virtual/container or bare-metal?
And dont forget to post the debug token if want a mod or dev to have a look!

Unfortunately, I haven't been able to reach my goal for hours.

Everything worked up to point 10. Then the RPi was no longer found after restarting the router and the RPi. After I switched the DHCP on the router back on and limited the range to that of the RPi, it was found again.
However, I cannot find an IP6 address under point 11.

If it is due to the static IP, how can I set it?

I have the Speedport Smart 4 with an RPi Zero 2 with RP Lite OS.
(PN in German would probably make it easier for me)

https://tricorder.pi-hole.net/LcYSS7p8/

As said, Speedport routers from Telekom are not working with PiHole properly. The IPv6 DNS is FIXED and not changeable. This is a limitation by Telekom and should ensure IP telephone services.
Your network clients will always find a backdoor by IPv6 DNS to bypass and present the ads to your screens.

Final solution: Disconnect router, open a window, throw out the router and buy a new one except Speedport.
Alternatively look for a different branded firmware as the Speedport router are Arcadian routers.

Unfortunately, I had to take a Speedport Route for the 5G/LTE hybrid connection. I still have a fritzbox 7590, with which pihole has worked for years without any problems.

I'm now looking for a relatively good solution, even if it doesn't work 100% perfectly.

The 7590 opens the Game again.
You can use the WAN port as uplink to the Speedport router an configure your network and pihole on the 7590.

Many devices but a possible solution.

1 Like

I will try it out tomorrow.
However, Telekom said that I can't use the Speedport as a pure modem if it is operated in hybrid mode.