Enable IPv6 after install?

Just did a fresh pihole install starting with a reimaging of the SD card. So everything from the previous install was removed. It does not seem like IPv6 blocking is enabled with the new install. I've run pihole -r twice now and get this same final screen.

┌─────────────────────┤ Installation Complete! ├──────────────────────┐
│ Configure your devices to use the Pi-hole as their DNS server       │
│ using:                                                              │
│                                                                     │
│ IPv4:        192.168.0.14                                           │
│ IPv6:        Not Configured                                         │
│                                                                     │
│ If you set a new IP address, you should restart the Pi.             │
│                                                                     │
│ The install log is in /etc/pihole.                                  │
│                                                                     │
│ View the web interface at http://pi.hole/admin or                   │
│ http://192.168.0.14/admin                                           │
│                                                                     │
│ Your Admin Webpage login password is NOT SET                        │
│                               <Ok>                                  │
└─────────────────────────────────────────────────────────────────────┘

But I'm seeing what looks to be blocking on IPv6 in the query log:
2017-03-04 EST 11:42:17 A www.google-analytics.com fe80::3582:5140:c5b5:228f Pi-holed (exact)

I'm kind of confused, It does not seem like IPv6 blocking is enabled but the logs say it is?

My previous wiped out install of pihole did list out an IPv6 address. That now obsolete address is still entered in as the DNS Server address for the IPv6 adapter.

Can anyone make sense of what is going on ?

Here is pihole -r that I've repeated twice. I'm telling it to enable IPv6

pi@raspberrypi:~ $ pihole -r

┌─────────────────────────────────────────────────────────────────────┐
│ Select Protocols (press space to select)                            │
│                                                                     │
│    [*] IPv4  Block ads over IPv4                                    │
│    [*] IPv6  Block ads over IPv6                                    │
│                                                                     │
│                  <Ok>                      <Cancel>                 │
└─────────────────────────────────────────────────────────────────────┘

┌────────────────────────┤ Static IP Address ├────────────────────────┐
│                                                                     │
│ Do you want to use your current network settings as a static        │
│ address?                                                            │
│           IP address:    192.168.0.14/24                            │
│           Gateway:       192.168.0.1                                │
│                                                                     │
│                  <Yes>                     <No>                     │
└─────────────────────────────────────────────────────────────────────┘

┌─────────────────────────────────────────────────────────────────────┐
│ Do you wish to install the web admin interface?                     │
│                                                                     │
│    (*) On (Recommended)                                             │
│    ( ) Off                                                          │
│                                                                     │
│                  <Ok>                      <Cancel>                 │
└─────────────────────────────────────────────────────────────────────┘

┌─────────────────────────────────────────────────────────────────────┐
│ Do you want to log queries?                                         │
│  (Disabling will render graphs on the Admin page useless):          │
│                                                                     │
│    (*) On (Recommended)                                             │
│    ( ) Off                                                          │
│                                                                     │
│                  <Ok>                      <Cancel>                 │
│─────────────────────────────────────────────────────────────────────┘

┌─────────────────────┤ Installation Complete! ├──────────────────────┐
│ Configure your devices to use the Pi-hole as their DNS server       │
│ using:                                                              │
│                                                                     │
│ IPv4:        192.168.0.14                                           │
│ IPv6:        Not Configured                                         │
│                                                                     │
│ If you set a new IP address, you should restart the Pi.             │
│                                                                     │
│ The install log is in /etc/pihole.                                  │
│                                                                     │
│ View the web interface at http://pi.hole/admin or                   │
│ http://192.168.0.14/admin                                           │
│                                                                     │
│ Your Admin Webpage login password is NOT SET                        │
│                               <Ok>                                  │
└─────────────────────────────────────────────────────────────────────┘

Thank you.

Do you have IPv6 connectivity to the WWW? Could your run a debug log (pihole -d) and provide the token?

Oooh, I want to know as well. For some reason it didn't enable on my fresh install last time as well.

::: Finshed debugging!
::: The debug log can be uploaded to tricorder.pi-hole.net for sharing with developers only.
::: Debug script running in automated mode, uploading log to tricorder...
::: ---=== Your debug token is : ho2b7trq82 Please make a note of it. ===---
::: Contact the Pi-hole team with your token for assistance.
::: Thank you.
::: A local copy of the Debug log can be found at : /var/log/pihole_debug.log

Kind of confused about this token thing. If we run the above debug then the log is automatically uploaded to tricorder.pi-hole.net? And only certain people can see what is uploaded there? I went through some grief thinking I had to manually upload it myself and was frustrated because tricorder.pi-hole.net was a dead end and I spent a bunch of time trying to figure out how I was supposed to upload to it. Wish the wording of the message could be worded more clearly about what the process is. Sorry.. I know allot of the help here is volunteer so complaints are not going to fly too well.. but maybe something could be done about the wording?

Yes, I see you used our new web-based debugger. There is a checkbox about the big button you clicked, which is labeled

Upload debug log and provide token once finished

Apparently, this box was enabled (which is the default) when you clicked the button, hence the log was automatically uploaded.

Yes, Tricorder is shielded from anyone except the small group of us developers. See also here.

We are open for any suggestions!


Back to your original question: No, you don't have IPv6 connectivity to the world, this is also the reason why the installer said that IPv6 is not configured. In the past, we allowed link-local addresses (fe80:...) to be used as addresses but that caused a number of issues, so we removed that possibility. However, that does not mean that we opened a possibility for ads to sneak in via IPv6, since ads cannot even be downloaded via IPv6 (as you don't have upstream IPv6 connectivity).

What you were seeing

2017-03-04 EST 11:42:17	A	www.google-analytics.com	fe80::3582:5140:c5b5:228f	Pi-holed (exact)

means that you have (at least) one client set up with the IPv6 link-local address of your Pi-hole configured as DNS server. Hence, this network device can use the internal IPv6 route to ask the Pi-hole for the IPv4 address (type A query) of www.google-analytics.com .

Summary: IPv6 blocking is not enabled because there is nothing that has to be enabled. Your devices in your local network can use either IPv4 or IPv6 to query your Pi-hole DNS Server, but since there is no IPv6 Internet connectivity, there is nothing that would have to be blocked.

Oooh, I want to know as well. For some reason it didn't enable on my fresh install last time as well.

I think it will be similar / identical in your case.

Thank you kindly for the explanations.

It sounds like IPv6 all depends on whether or not an ISP provides it. If they don't there is no point to having my pi hole configured to run as an add blocking IPv6 dns server. The prior version of pi hole let me configure IPv6, or gave the appearance if it, even though it was not possible to actually use it.

A few minutes ago I went into the TCP/IPv6 configuration for my Ethernet NIC and removed the IPv6 Dns entry. The number I removed was the old IPv6 number given from the old pi hole installer when I selected both IPv4 and IPv6 during the old install. Now when I check the Query Log only IPv4 addresses are showing up which I believe is the more correct view of what is really happening. So I think everything is now in order (and making sense). No more IPv6 showing in the Query logs.

Yes. That summarizes it very well. I had some hard time to convince my ISP (Deutsche Telekom) to provide me IPv6 and it ended up in having had to renew my contract (I now also have a VDSL 50MBit connection, so that was Okay).

No. It gave the experience, but you were also able to use it. It just didn't made any difference.

As I said, there is no harm to use IPv6 internally even if you don't have an upstream connection. You can leave it like you want. It only controls if you use IPv4 or IPv6 protocol to connect to your DNS server. There is hardly any difference to it in your local network.

That explains everything quite nicely. Thanks again. I marked this as having provided the solution.