EDNS0 funktioniert nicht

Hallo,

ich weis nicht ob es möglich ist, aber ich habe es so gelesen das wenn edns0 an ist die IP Adresse des ursprünglich anfragenden übermittelt wird.

Ich habe folgenden Netzaufbau:

3x Subnet über Wireguard durch Fritzbox verbunden.

Ich liefere im Moment im Hauptnetz per DHCP die IP vom Pihole als DNS-Server an die Clients. Bei den zwei anderen Subnetzen habe ich den Pihole als DNS-Server nur in der Fritzbox eingetragen als DNS-Server vom Internetanbieter. Der Vorteil liegt darin falls mein Hauptnetzwerk nicht erreichbar ist macht die Fritzbox einen Failover zu einem öffentlichen DNS. Leider bekomme ich mit dieser Lösung nur die IP der jeweiligen Fritzbox im Pihole angezeigt. Jetzt habe ich in der Fritzbox EDNS0 aktiviert und habe es so verstanden das wenn ich dieses auch in Pihole aktiviere die IP Adressen (oder zumindest Mac Adressen) der bei der Fritzbox anfragenden Geräte angezeigt werden. Dies ist aber leider nicht der Fall.

Ein Log sieht so aus:

2024-12-05 08:57:34.341 CET [231M] DEBUG_EDNS0: requestor's UDP payload size: 1232 bytes
2024-12-05 08:57:36.042 CET [231M] DEBUG_EDNS0: pheader: 00 00 29 04 D0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00>
2024-12-05 08:57:36.042 CET [231M] DEBUG_EDNS0: requestor's UDP payload size: 1232 bytes
2024-12-05 08:57:36.044 CET [231M] DEBUG_EDNS0: pheader: 00 00 29 04 D0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00>
2024-12-05 08:57:36.044 CET [231M] DEBUG_EDNS0: requestor's UDP payload size: 1232 bytes
2024-12-05 08:57:40.600 CET [231M] DEBUG_EDNS0: No EDNS(0) pheader found
2024-12-05 08:57:40.600 CET [231M] DEBUG_EDNS0: No EDNS(0) pheader found
2024-12-05 08:57:40.983 CET [231M] DEBUG_EDNS0: No EDNS(0) pheader found
2024-12-05 08:57:40.983 CET [231M] DEBUG_EDNS0: pheader: 00 00 29 04 D0 00 00 80 00 00 00  (11 bytes)
2024-12-05 08:57:40.983 CET [231M] DEBUG_EDNS0: requestor's UDP payload size: 1232 bytes
2024-12-05 08:57:48.356 CET [231M] DEBUG_EDNS0: No EDNS(0) pheader found
2024-12-05 08:57:48.360 CET [231M] DEBUG_EDNS0: pheader: 00 00 29 04 D0 00 00 80 00 00 00  (11 bytes)
2024-12-05 08:57:48.360 CET [231M] DEBUG_EDNS0: requestor's UDP payload size: 1232 bytes
2024-12-05 08:57:48.428 CET [231M] DEBUG_EDNS0: No EDNS(0) pheader found
2024-12-05 08:57:48.429 CET [231M] DEBUG_EDNS0: pheader: 00 00 29 04 D0 00 00 80 00 00 00  (11 bytes)
2024-12-05 08:57:48.429 CET [231M] DEBUG_EDNS0: requestor's UDP payload size: 1232 bytes
2024-12-05 08:57:48.474 CET [231M] DEBUG_EDNS0: No EDNS(0) pheader found

Fehlt eine Einstellung?
add-mac und add-subnet=32,128 habe ich auch eingetragen in dnsmasq

Was mir auch aufgefallen ist: Wenn ich in der Fritzbox EDNS aktiviere und einen externen DNS eintrage wird in der Fritzbox bei verwendeter DNS-Server in Klammern EDNS angezeigt. Wenn ich die IP vom PiHole eintrage steht kein EDNS in Klammern...

Mein pihole läuft auf Beta6 letzte Version.

Wo genau hast Du das eingetragen?

Beim pihole in /etc/dnsmasq.d/10-pihole-extra.conf

Bei der Fritzbox kann ich ja leider nichts eintragen.

Oh... soll es nach /etc/pihole/pihole-FTL.conf ?
Habe ich soeben versucht, hat sich aber nichts geändert...

Damit konfigurierst Du, dass Pi-hole über EDNS0 client-spezifische Informationen an seine Upstreams weitergibt.
Das solltest Du wieder herausnehmen, da so sonst die MAC-Adressen sowie IPv4- und IPv6-Adressen Deiner Geräte vollständig an einen öffentlichen DNS-Server weitergegeben werden.

Pi-hole würde zur Identifikation des anfragenden Clients dessen IP-Adresse benötigen.

Möglicherweise liefert die Fritzbox nicht die dafür von Pi-hole benötigen EDNS0-Extended-Client-Subnet(ÈCS)-Informationen.

Laut FritzBox sollen bei Aktivierung von EDNS0 stattdessen Namen übertragen werden:

Deine Log-Einträge zeigen, dass die von Pi-hole empfangenen pheader keine EDNS0/ECS-Informationen enthalten (der Optioncode für ECS ist 00 08):


Screenshot 2024-12-05 121416
Der Fritzbox scheint irgend was zu fehlen um es zu akzeptieren.
192.168.178.1 ist mein Hybridrouter der vor der Fritzbox ist.

Schade... Ich dachte so eine Möglichkeit gefunden zu haben das ich die Clients auflösen kann die an den externen Fritzboxen die über Wireguard über die Fritzbox mit meinem Netzwerk verbunden sind.

Gibt es noch eine andere Möglichkeit?
Ich will vermeiden das falls mein Netzwerk down ist die externen Clients kein Netzwerk haben.

Ich hab 4 Standorte die alle über Wireguard über die jeweiligen Fritzboxen verbunden sind.
In meinem Netzwerk liefere ich die IP des Piholes über DHCP aus.
Bei den externen Standorten lasse ich den DHCP der Fritzbox und verteile als DNS-Server die IP der jeweiligen Fritzbox. In der jeweiligen Fritzbox ist als Upstream-DNS die IP meines PiHoles mit einem Failover zu öffentlichen DNS-Servern falls mein Pihole nicht erreichbar.
Dies möchte ich so beibehalten aber es wäre schön wenn ich die Clients auflösen könnte.

This topic was automatically closed 21 days after the last reply. New replies are no longer allowed.