Build one SPF TXT value from explicitly declared include domains and IP networks.
The frame below runs the same code as this page, in the reader's own browser. Nothing is sent to us, and nothing is sent to you.
Pick a dark background and the text and panels follow it, so the frame stays readable on a dark page.
The v=spf1 version term is followed by entered include, ip4, and ip6 mechanisms and exactly one all qualifier. A local count covers direct DNS-triggering mechanisms, while the result warns that RFC evaluation also counts lookups nested inside included policies.
Domain: example.com Custom includes: _spf.example.net Custom IPs: 192.0.2.0/24 Policy: -all
DNS TXT Record for example.com: Name: example.com Type: TXT Value: v=spf1 include:_spf.example.net ip4:192.0.2.0/24 -all Policy explanation: -all (fail): Emails from unauthorized senders should be rejected Direct DNS-triggering mechanisms: 1; RFC 7208 limits evaluation to 10 lookups, including lookups inside included records.
Domain migrations assemble outbound sources, DNS change reviews inspect TXT values, and incident response removes obsolete sending networks.