<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[The Network Tools Blog]]></title><description><![CDATA[The Network Tools Blog]]></description><link>https://thenetworktools.hashnode.dev</link><generator>RSS for Node</generator><lastBuildDate>Tue, 03 Nov 2026 05:33:34 GMT</lastBuildDate><atom:link href="https://thenetworktools.hashnode.dev/rss.xml" rel="self" type="application/rss+xml"/><language><![CDATA[en]]></language><ttl>60</ttl><item><title><![CDATA[NetworkTools: 39 DNS, email and domain tools that run without an account]]></title><description><![CDATA[If you work with DNS records, email deliverability or domain health, you probably keep a handful of different lookup sites bookmarked. I built NetworkTools…]]></description><link>https://thenetworktools.hashnode.dev/networktools-39-dns-email-and-domain-tools-that-run-without-an-account</link><guid isPermaLink="true">https://thenetworktools.hashnode.dev/networktools-39-dns-email-and-domain-tools-that-run-without-an-account</guid><category><![CDATA[dns]]></category><category><![CDATA[email]]></category><category><![CDATA[SaaS]]></category><category><![CDATA[tools]]></category><category><![CDATA[webdev]]></category><dc:creator><![CDATA[The Network Tools]]></dc:creator><pubDate>Sat, 31 Oct 2026 23:37:12 GMT</pubDate><content:encoded><![CDATA[<p>If you work with DNS records, email deliverability or domain health, you probably keep a handful of different lookup sites bookmarked. I built <a href="https://thenetworktools.com">NetworkTools</a> to put those everyday checks in one place, with a more modern interface.</p>
<h2>What is inside</h2>
<p>39 tools across five groups: Infrastructure, Domain &amp; Email, Generators, Security &amp; Web, and Local Utilities. Examples include:</p>
<ul>
<li><strong>SPF, DKIM and DMARC</strong> - analyzers to inspect your existing records, plus generators to create new ones correctly</li>
<li><strong>MX and blacklist lookups</strong> - the blacklist check queries 7 public DNS blocklists, and every result shows its source and what was not tested</li>
<li><strong>DNS propagation check</strong> - see how a record resolves from different locations</li>
<li><strong>Subdomain finder</strong> - list the subdomains of a domain</li>
<li><strong>SSL and WHOIS</strong> - certificate and registration details</li>
</ul>
<h2>No account needed</h2>
<p>Every check runs without signing in. You open the tool, enter a domain, and get the result.</p>
<p>A free account exists only for saving things: the free plan saves 3 domains with daily monitoring. A Pro plan ($29/month) covers 50 domains with 6-hour scans, alerts, API access and 12-month history.</p>
<h2>Why I built it</h2>
<p>The standard tools in this space work, but using them means jumping between several sites with dated interfaces. I wanted one calm place with the same kind of checks and a cleaner design, so I built it.</p>
<h2>What I would love feedback on</h2>
<ol>
<li>Is a better design enough of a reason to switch tools you already use?</li>
<li>Which tool is missing that would make you bookmark it - bulk checks, an API, something else?</li>
<li>If you work in a technical niche like this, what growth path has worked for you?</li>
</ol>
<p>It is early, and I am sure there are gaps I am too close to see. Try it here: <a href="https://thenetworktools.com">thenetworktools.com</a> - happy to answer anything in the comments.</p>
]]></content:encoded></item><item><title><![CDATA[How to debug SPF, DKIM and DMARC failures: a step-by-step checklist]]></title><description><![CDATA[Email that lands in spam, or bounces with "550 5.7.26 unauthenticated sender", is almost always an authentication problem. SPF, DKIM and DMARC are three…]]></description><link>https://thenetworktools.hashnode.dev/how-to-debug-spf-dkim-and-dmarc-failures-a-step-by-step-checklist</link><guid isPermaLink="true">https://thenetworktools.hashnode.dev/how-to-debug-spf-dkim-and-dmarc-failures-a-step-by-step-checklist</guid><dc:creator><![CDATA[The Network Tools]]></dc:creator><pubDate>Thu, 22 Oct 2026 14:24:14 GMT</pubDate><content:encoded><![CDATA[<p>Email that lands in spam, or bounces with "550 5.7.26 unauthenticated sender", is almost always an authentication problem. SPF, DKIM and DMARC are three separate checks, and each one fails in its own way. This is the order I use to debug them, with the commands to run.</p>
<h2>Step 1: Check SPF first</h2>
<p>SPF is a TXT record on your domain that lists which servers may send mail for it.</p>
<pre><code>dig +short TXT example.com | grep spf1
</code></pre>
<p>Common failures:</p>
<ul>
<li><strong>Two SPF records.</strong> A domain must have exactly one record starting with <code>v=spf1</code>. Two records gives a <code>permerror</code>. Merge them into one.</li>
<li><strong>More than 10 DNS lookups.</strong> <code>include</code>, <code>a</code>, <code>mx</code>, <code>ptr</code> and <code>redirect</code> each count, and nested includes count too. Past 10 you get a <code>permerror</code>. Remove unused includes or flatten them.</li>
<li><strong>The real sender is missing.</strong> If your newsletter tool or CRM sends as your domain, its include must be in the record.</li>
<li><strong>Wrong ending.</strong> <code>-all</code> rejects everything not listed, <code>~all</code> soft-fails. Use <code>~all</code> while you are still finding senders, then tighten it.</li>
</ul>
<p>Also remember that SPF checks the envelope sender (Return-Path), not the visible From address. That matters for DMARC alignment, below.</p>
<h2>Step 2: Check DKIM</h2>
<p>DKIM signs each message. The public key lives in DNS at <code>selector._domainkey.example.com</code>. You need the selector, which is in the <code>DKIM-Signature</code> header of a message you sent (<code>s=</code>).</p>
<pre><code>dig +short TXT selector1._domainkey.example.com
</code></pre>
<p>Common failures:</p>
<ul>
<li><strong>Wrong or missing selector record.</strong> The signature points at a selector that does not exist in DNS.</li>
<li><strong>Key split badly.</strong> Long keys are split into several quoted strings inside one TXT record. Some DNS panels break them or add stray spaces.</li>
<li><strong>Body changed after signing.</strong> Mailing list footers, link rewriting and disclaimers added after signing break the signature.</li>
<li><strong>Weak key.</strong> Use 2048-bit keys if your provider supports them.</li>
</ul>
<h2>Step 3: Check DMARC and alignment</h2>
<p>DMARC is a TXT record at <code>_dmarc.example.com</code>.</p>
<pre><code>dig +short TXT _dmarc.example.com
</code></pre>
<p>A starter record:</p>
<pre><code>v=DMARC1; p=none; rua=mailto:dmarc-reports@example.com
</code></pre>
<p>DMARC passes when SPF or DKIM passes <strong>and aligns</strong> with the From domain. Aligned means the domain that passed matches the From domain (exact match in strict mode, same organizational domain in relaxed mode, which is the default). This is the part people miss: SPF can pass for your email provider's bounce domain and DKIM can pass for the provider's own domain, and DMARC still fails because neither matches your From address. The fix is to set up a custom DKIM signing domain or custom return-path with your provider.</p>
<h2>Step 4: Read the headers of a failing message</h2>
<p>In Gmail, open the message, choose "Show original", and look at the Authentication-Results header:</p>
<pre><code>spf=pass smtp.mailfrom=bounce.provider.com
dkim=pass header.d=provider.com
dmarc=fail header.from=example.com
</code></pre>
<p>That example shows the alignment problem exactly: both pass, DMARC fails, because neither domain is example.com.</p>
<h2>Step 5: Roll out the DMARC policy slowly</h2>
<ol>
<li>Start with <code>p=none</code> and collect the <code>rua</code> aggregate reports for a couple of weeks.</li>
<li>Fix every legitimate sender that fails.</li>
<li>Move to <code>p=quarantine</code>, optionally with <code>pct=25</code> first.</li>
<li>Move to <code>p=reject</code> once reports are clean.</li>
</ol>
<p>Jumping straight to <code>p=reject</code> is how legitimate invoices end up bounced.</p>
<h2>Tools I use</h2>
<p><code>dig</code> and <code>nslookup</code> cover most of it. If you want a web page that runs the lookups and flags the common errors above (duplicate SPF, lookup count, missing selector, DMARC policy), I run <a href="https://thenetworktools.com">The Network Tools</a>, which has SPF, DKIM and DMARC analyzers along with MX, DNS propagation and blacklist checks. There is a free plan. MXToolbox and Google Admin Toolbox do similar jobs, so use whichever you prefer.</p>
<p>If you have a failure that does not match any of the above, paste the Authentication-Results header (with your own domain names removed if you like) in the comments.</p>
]]></content:encoded></item></channel></rss>