SPF max IPv4 & IPv6  [SOLVED]

For topics beyond KeyHelp. / Für Themen jenseits von KeyHelp.
tab-kh
Posts: 564
Joined: Thu 22. Apr 2021, 23:06

Re: SPF max IPv4 & IPv6

Post by tab-kh »

Ich gehe auch davon aus, dass hier an irgendeiner Stelle eines Skripts der SPF-Record falsch verarbeitet wird. Immerhin scheinen die Checks das richtig zu machen, ansonsten würde das verwaiste "i" am Ende des einen Teilstrings und das "p6" am Anfang des nächsten ja zum Ergebnis führen, dass der SPF-Record nicht valide ist. Anyway ... Das sind Bugs, auf die man zumindest auf fremden Systemen keinen Einfluss hat.

Insofern ist den "flattened" SPF String zwar valide, aber das nutzt dir erst mal nichts. Deswegen ja der Alternativvorschlag von Tobi, das mit includes aufzuteilen in Strings, die nicht mehr als 255 Charakters beinhalten. Auch das ist absolut valide, da verstehe ich das Problem bisher noch nicht. Wenn du das so auf include Domains aufteilst, welcher Check oder welches Skript kommt jetzt damit wieder nicht zurecht? Ist ja irgendwie zum Auswachsen.

Ich mag mir ungern vorstellen, dass eine Mail-Koryphäe wie Peer Heinlein von Mailbox.org ein solches Problem nicht kennt oder die Folgen einfach achselzuckend in Kauf nimmt.

Auch von einem Hoster wie netcup sollte man eigentlich einen validen, funktionierenden SPF-Record erwarten dürfen. Und die haben ja sogar beide möglichen Problemfälle in ihrem SPF-Record. SPF-Record String durch includes verkürzt/aufgeteilt und dann doch noch mehrere Teilstrings in den einzelnen includes gebraucht. Ich glaube, ich frage da einfach mal im Forum nach, vielleicht kommt ja eine erhellende Antwort :) . Um den Support per Ticket ins Boot zu holen müsste ich erst mal so einen Fall mit der netcup E-Mail Adresse und deren vorgegebenem SPF-Record reproduzieren und offiziell von einem anderen Hoster um die Ohren geschlagen bekommen :roll:. Naja, vielleicht bekomme ich das ja irgendwie hin ;) .
User avatar
Ralph
Posts: 1245
Joined: Mon 30. Mar 2020, 16:14

Re: SPF max IPv4 & IPv6

Post by Ralph »

tab-kh wrote: Sun 6. Oct 2024, 23:02 Insofern ist den "flattened" SPF String zwar valide, aber das nutzt dir erst mal nichts. Deswegen ja der Alternativvorschlag von Tobi, das mit includes aufzuteilen in Strings, die nicht mehr als 255 Charakters beinhalten. Auch das ist absolut valide, da verstehe ich das Problem bisher noch nicht. Wenn du das so auf include Domains aufteilst, welcher Check oder welches Skript kommt jetzt damit wieder nicht zurecht? Ist ja irgendwie zum Auswachsen.
Spricht denn etwas gegen die Verwendung von flattened SPF records?
Bei netcup haben die nur 1 include der wieder auf einen anderen TXT verweist include:_spf.hostedemail.com ... ist auch OK, aber die würden sicherlich auch keinen include setzen wenn es nur mit IP Adressen möglich wäre.
Was mir hierbei auffällt, die haben nur 1 x eine IPv6 drin:
v=spf1 ip4:212.123.34.96/28 ip4:212.123.36.25 ip4:188.65.77.204 ip6:2a03:4000:0:1::e1aa mx ip4:212.123.41.224/28 ip4:45.132.63.68 include:_spf.hostedemail.com -all
_spf.hostedemail.com zeigt:
id: 12673
opcode: QUERY
status: NOERROR
flags: QR RD RA CD
;; QUESTION SECTION:
;_spf.hostedemail.com. IN TXT
;; ANSWER SECTION:
_spf.hostedemail.com. 41 IN TXT "v=spf1 ip4:216.40.44.0/24 ip4:216.40.42.17 ip4:216.40.42.19 ip4:216.40.42.27 ip4:216.40.42.28/31 ip4:64.98.42.0/24 ip4:64.98.36.17 ip4:64.98.36.19 ip4:64.98.36.27 ip4:64.98.36.28/31 ip4:64.98.47.0/24 ip4:64.98.36.30 ip4:216.40.34.9 ~all"
Die internen SPF rejects wollte ich ja einfach whitelisten, hab dann am Wochenende nur schnell die IP Adressen eingesetzt und mich dann gewundert warum das SPF whitelisting nicht greift :mrgreen:
Das CIDR Format habe ich dabei nicht beachtet, Einzel IP Adressen (IP4, IP6) müssten demnach dann folgendermaßen eingebaut werden:

Code: Select all

Whitelist = xx.xx.xxx.xxx/32,xxxx:xxx:xxx:xxxx::1/128
damit funktionierte es dann:
X-Comment: SPF skipped for whitelisted relay
In meinem SPF record sind auch einige interne Systeme mit drin die nur über mstmp senden (backup server, NS & monitoring etc.) die könnte ich jetzt quasi aus dem SPF String entfernen (whitelisted SPF) und dann müsste es von der Länge her passen ....
User avatar
Ralph
Posts: 1245
Joined: Mon 30. Mar 2020, 16:14

Re: SPF max IPv4 & IPv6

Post by Ralph »

Habe vorhin aber nochmal mit den includes getestet dabei komme ich bei allen Versuchen über das lookup limit ...
Hier ist ein Raw Check SPF Record Validator wobei der komplette String eingegeben und geprüft wird:
https://easydmarc.com/tools/spf-record- ... k-validate
User avatar
Tobi
Community Moderator
Posts: 3230
Joined: Thu 5. Jan 2017, 13:24

Re: SPF max IPv4 & IPv6

Post by Tobi »

Ralph wrote: Mon 7. Oct 2024, 09:44 Habe vorhin aber nochmal mit den includes getestet dabei komme ich bei allen Versuchen über das lookup limit ...
Wie denn das?
Du setzt einmal deine IPV4 Records in einen SPF Record und in den zweiten die IPV6 Records.
Diese beiden SPF Records bindest du mit include in den Stamm-SPF Record ein.

Somit sollte es zwei nested Lookups geben.
Zusätzlich vielleicht nochmal zwei für "a" und "mx" im Stamm-SPF Record.

Aber wenn du 10 Lookups sprengst, dann machst du was verkehrt...
Sorry. :mrgreen:
Gruß,
Tobi


-----------------------------
wewoco.de
Das Forum für Reseller, Digital-Agenturen, Bildschirmarbeiter und Mäuseschubser
User avatar
Ralph
Posts: 1245
Joined: Mon 30. Mar 2020, 16:14

Re: SPF max IPv4 & IPv6

Post by Ralph »

Tobi wrote: Mon 7. Oct 2024, 10:58 Du setzt einmal deine IPV4 Records in einen SPF Record und in den zweiten die IPV6 Records.
Diese beiden SPF Records bindest du mit include in den Stamm-SPF Record ein.
Somit sollte es zwei nested Lookups geben.
Zusätzlich vielleicht nochmal zwei für "a" und "mx" im Stamm-SPF Record.
OK, jetzt hab ich deinen Plan verstanden - sorry lange Leitung :lol:
quasi in etwa so wie netcup das im Post vorher macht include: _spf.hostedemail.com
dann müssten allerdings noch CNAME records für die include domains gesetzt werden, bei diesem System verwende ich keine Wildcard records.
Ralph wrote: Mon 7. Oct 2024, 09:44 Aber wenn du 10 Lookups sprengst, dann machst du was verkehrt...
Sorry. :mrgreen:
Die sind ja so nicht online, das war nur ein raw Check mit IP4 + IP6 + 6 MX entries per include ...
User avatar
Tobi
Community Moderator
Posts: 3230
Joined: Thu 5. Jan 2017, 13:24

Re: SPF max IPv4 & IPv6

Post by Tobi »

Nope. Keine CNAMEs nötig.
Der SPF Record reicht.
Sobald dieser gesetzt ist kannst du ihn per include einbinden.
Gruß,
Tobi


-----------------------------
wewoco.de
Das Forum für Reseller, Digital-Agenturen, Bildschirmarbeiter und Mäuseschubser
User avatar
Ralph
Posts: 1245
Joined: Mon 30. Mar 2020, 16:14

Re: SPF max IPv4 & IPv6

Post by Ralph »

Tobi wrote: Mon 7. Oct 2024, 13:58 Nope. Keine CNAMEs nötig.
Der SPF Record reicht.
Sobald dieser gesetzt ist kannst du ihn per include einbinden.
Danke Tobi, ich meinte nur auf diese included records z.b.
ipv4.mydomain.tld -> TXT oder über cname darauf verweisen vor dem include
ipv6.mydomain.tld -> TXT oder über cname darauf verweisen vor dem include

Ich nehme mal an so in etwa sollte der SPF record dann nach deinem Vorschlag her aussehen?

Code: Select all

v=spf1 a mx ip4:xxx.xx.xxx.xxx ip6:xxxx:xxx:xxx:xxxx::1 include:ipv4.mydomain.tld include:ipv6.mydomain.tld ~all
müssen diese dann nicht von extern auflösen können als included domain bzw. sub domain?
User avatar
Tobi
Community Moderator
Posts: 3230
Joined: Thu 5. Jan 2017, 13:24

Re: SPF max IPv4 & IPv6

Post by Tobi »

Ralph wrote: Mon 7. Oct 2024, 14:47 müssen diese dann nicht von extern auflösen können als included domain bzw. sub domain?
Durch das Anlegen im DNS entsteht ja bereits die "Sub-Domain".

Da bekanntlich ein Bild mehr sagt als 1000 Worte.
Bitteschön!
Hier die DNS Einstellungen in KeyHelp für die fiktive Domain ralph.de
ralphs-dns2.png
Alle in diesem Bild verwendeten IPs sind FAKE!
Gruß,
Tobi


-----------------------------
wewoco.de
Das Forum für Reseller, Digital-Agenturen, Bildschirmarbeiter und Mäuseschubser
User avatar
Ralph
Posts: 1245
Joined: Mon 30. Mar 2020, 16:14

Re: SPF max IPv4 & IPv6

Post by Ralph »

Tobi wrote: Mon 7. Oct 2024, 18:15 Da bekanntlich ein Bild mehr sagt als 1000 Worte.
Bitteschön!
Danke Tobi, das Bild sagt mir definitiv mehr als 1000 Worte :D
Werde es morgen (hoffentlich) mal so nachbauen und testen!
Ich bin seit 3 Tagen pausenlos nur Mega Attacken am abwehren und hier nur halbwegs bei der Sache, ist total Krass momentan (jedenfalls bei mir).
User avatar
Tobi
Community Moderator
Posts: 3230
Joined: Thu 5. Jan 2017, 13:24

Re: SPF max IPv4 & IPv6  [SOLVED]

Post by Tobi »

Viel Erfolg!

BTW:
Herzlichen Glückwunsch zum 1000sten!
Weiter so!
Gruß,
Tobi


-----------------------------
wewoco.de
Das Forum für Reseller, Digital-Agenturen, Bildschirmarbeiter und Mäuseschubser
User avatar
Ralph
Posts: 1245
Joined: Mon 30. Mar 2020, 16:14

Re: SPF max IPv4 & IPv6

Post by Ralph »

hmm, es geht doch ohne include nur mit mx, a und 2 Quell System IPs ... da muß ich mich aber bei euch entschuldigen!
Dieser spektakuläre SPF Generator hat mir die Augen geöffnet :lol: habe jetzt insgesamt 17 IPs drin (ip4/ip6) mit Lookup count 8 von 10:
https://www.spf-record.de/generator

Code: Select all

v=spf1 a mx a:host1.domain.tld2 mx:host1.domain.tld mx:host2.domain.tld mx:host3.domain.tld mx:host4.domain.tld mx:host5.domain.tld ip4:xxx.xxx.xx.xxx ip6:xxxx:xxx:xxxx:xxxx::1 ~all
Insgesamt wurde(n) 17 IP-Adresse(n) durch den SPF-Record zum Senden von E-Mails berechtigt.
Syntax-Prüfung bestanden: 0 Fehler
Record Status
Valid
Lookup count
8/10
User avatar
24unix
Posts: 2037
Joined: Sun 21. Jun 2020, 17:16
Location: Kollmar
Contact:

Re: SPF max IPv4 & IPv6

Post by 24unix »

24unix wrote: Sat 5. Oct 2024, 19:57 eMail ist nicht so meine Stärke, aber kannst Du nicht einfach MX als Eintrag setzen?
Was bekommst Du, wenn Du nur den MX setzt?
Cheers Micha
--
A Windows user reinstalls software every few weeks.
A Linux user reinstalls software every few weeks.
The difference is with Linux the version numbers change.
User avatar
Ralph
Posts: 1245
Joined: Mon 30. Mar 2020, 16:14

Re: SPF max IPv4 & IPv6

Post by Ralph »

24unix wrote: Sun 20. Oct 2024, 23:03
24unix wrote: Sat 5. Oct 2024, 19:57 eMail ist nicht so meine Stärke, aber kannst Du nicht einfach MX als Eintrag setzen?
Was bekommst Du, wenn Du nur den MX setzt?

Ja, funktioniert. Der SPF oben war zum testen gedacht (wieviel geht).

Bei mir ist eine zweite Domain (tld2) dabei, die mußte ich als a einbinden also:

Code: Select all

v=spf1 a a:host1.domain.tld2 mx:host1.domain.tld mx:host2.domain.tld mx:host3.domain.tld mx:host4.domain.tld mx:host5.domain.tld -all
Was denkt ihr, kann der so bleiben?
User avatar
Ralph
Posts: 1245
Joined: Mon 30. Mar 2020, 16:14

Re: SPF max IPv4 & IPv6

Post by Ralph »

24unix wrote: Sun 20. Oct 2024, 23:03 eMail ist nicht so meine Stärke, aber kannst Du nicht einfach MX als Eintrag setzen?
Ich hab da wohl anfangs lookup Time und lookup Count durcheinander gebracht, nur die Anzahl der lookups ist für valide SPF records relevant (max. 10).
Diese "flattened" SPF records machen doch Probleme z.b bei manchen DNSBL die für lookup checks u.a. dig verwenden ...
Na ja, es gibt viele Möglichkeiten ... für lange Strings ist die flattened Methode jedoch nicht wirklich die beste Wahl.
User avatar
Ralph
Posts: 1245
Joined: Mon 30. Mar 2020, 16:14

Re: SPF max IPv4 & IPv6

Post by Ralph »

OK, ich hab mir heute mal richtig Zeit genommen um alle validen Methoden zu testen und zu vergleichen.

Funktionieren tun sie alle ... aber der Vorschlag von Tobi erzielt das beste Ergebnis und hat dabei noch Luft nach oben für weitere IPs.
2 DNS queries / Lookup count
14 IP Adressen

Code: Select all

_spf4  TXT  "v=spf1 +ip4:xxx.xxx.xx.xxx +ip4:xxx.xxx.xx.xxx -all"
_spf6  TXT  "v=spf1 +ip6:xxxx:xxx:xxx:xxxx::1 +ip6:xxxx:xxx:xxx:xxxx::1 -all"
# SPF: 
"v=spf1 include:_spf4.domain.tld include:_spf6.domain.tld -all"
So bleibt es jetzt auch :mrgreen:

Danke an alle, für eure Vorschläge!
Post Reply