Ipv6 - O inimigo agora é outro - Como configura um DNS local para ipv6?

Recomendo alterar a configuração substituindo o endereço 0.0.0.0 por 127.0.0.1, a fim de garantir a comunicação correta entre o Unbound e o Pihole. O endereço 127.0.0.1 representa o loopback da máquina local, permitindo a comunicação direta entre serviços no mesmo dispositivo. Em contraste, 0.0.0.0 não define um endpoint específico, sendo mais apropriado para situações em que um serviço deve escutar em todas as interfaces de rede. Assim, ao configurar o Pihole para utilizar o Unbound como DNS recursivo, o endereço correto a ser utilizado nas configurações é 127.0.0.1.

Aqui um exemplo de como pode configurar:

server:
    verbosity: 0
    interface: 127.0.0.1
    port: 5335
    do-ip4: yes
    do-udp: yes
    do-tcp: yes
    do-ip6: yes
    prefer-ip6: no
    harden-glue: yes
    harden-dnssec-stripped: yes
    use-caps-for-id: no
    edns-buffer-size: 1232
    prefetch: no
    num-threads: 1
    so-rcvbuf: 1m
    
    # Ensure privacy of local IP ranges
    private-address: 192.168.0.0/16
    private-address: 169.254.0.0/16
    private-address: 172.16.0.0/12
    private-address: 10.0.0.0/8
    private-address: fd00::/8
    private-address: fe80::/10

    # TLS CERTIFICATE
    tls-port: 853
    tcp-upstream: yes
    tls-upstream: yes
    tls-cert-bundle: "/etc/ssl/certs/ca-certificates.crt"

    # FORWARDERS CLOUDFLARE
    forward-zone:
    	name: "."
    	forward-tls-upstream: yes
    	forward-addr: 1.1.1.1@853#cloudflare-dns.com
    	forward-addr: 1.0.0.1@853#cloudflare-dns.com 
    	forward-addr: 2606:4700:4700::1111@853#cloudflare-dns.com
    	forward-addr: 2606:4700:4700::1001@853#cloudflare-dns.com

Caso utilize firewall lembre de permitir as portas: 80(HTTP), 53(DNS), 443(HTTPS), 67(DHCP), 123(NTP), 547(DHCPv6)

Configuração do Pihole:

Configurando IP:

Para configurar sua interface de rede pode seguir com o exemplo que utilizo no meu servidor debian que roda em um Raspberry Pi 5 sem interface gráfica, aqui é apenas como está configurado os ips estáticos, basta mudar para os ips de sua rede:

sudo emacs /etc/network/interfaces
# Location: /etc/network/interfaces
# Please modify network settings via: dietpi-config
# Or create your own drop-ins in: /etc/network/interfaces.d/

# Drop-in configs
source interfaces.d/*

# Ethernet
allow-hotplug eth0
iface eth0 inet static
address 192.168.1.20
netmask 255.255.255.0
gateway 192.168.1.1
dns-nameservers 127.0.0.1

# Ethernet IPV6
iface eth0 inet6 static
address fdfd:xxxx:xxxx::20
netmask 64
gateway fdfd:xxxx:xxxx::1
dns-nameservers ::1

OBS: Caso queira pode configurar via netplan editando o arquivo /etc/netplan/01-netcfg.yaml e depois aplicar a configuração com sudo netplan apply.

Configurando DNS nos dispositivos

Depois basta nos computadores da rede, configurar o DNS via NetworkManager ou manualmente de acordo com o exemplo:


Configurando DNS no roteador

Caso queira por no roteador, alguns roteadores só aceitam o IPV6 completo e não de forma abreviada, mas basta testar:

Abreviado: fdfd:xxxx:xxxx::20

Simplificado: fdfd:xxxx:xxxx:0:0:0:0:20

Completo: fdfd:xxxx:xxxx:0000:0000:0000:0000:0020

Depois de tudo configurado basta verificar usando dig, em SERVER veja se aparece o servidor DNS que você configurou.

Espero que os exemplos sejam úteis. Não coloquei fotos do roteador pois varia muito a interface de cada modelo e eu utilizo o OpenWrt. Tenho utilizado o IPv6 de forma simples, assim como o IPv4, e a chave está em compreender seu funcionamento.

2 curtidas