DNS report
yiff.expert
Complete DNS, mail, web and security analysis.
Cached report
Report created: 2026-10-22 13:09:09 EDT
3 h 38 min ago
Refresh report
DNS cache tools
If you have recently made DNS changes and they are not yet reflected in the report, you can try to flush the DNS cache of these public resolvers: The domain name will be copied to your clipboard automatically when clicking on a button
Category Status Test Details
WHOIS0.2 ms
Domain Status
Source: RDAP (registry API)
RegistrarSquarespace Domains II LLC
Name Serversns1.us25.tmd.cloud
ns2.us25.tmd.cloud
WHOIS NS match DNS
Updated Date2026-08-14 22:05:10.864
Creation Date2018-08-24 14:42:27.743
Registry Expiry Date✅ 2027-08-24 14:42:27.743
Domain Statusclient delete prohibited
client transfer prohibited
Registrar lock enabled
The domain exposes a transfer lock status, such as clientTransferProhibited or serverTransferProhibited.
PARENT0.0 ms
Domain NS records
Nameserver records returned by the parent servers are:

ns1.us25.tmd.cloud [13.248.158.180] (NO GLUE) [TTL=3600]
ns2.us25.tmd.cloud [13.248.158.180] (NO GLUE) [TTL=3600]

v0n0.nic.expert was kind enough to give us that information.
TLD Parent Check
v0n0.nic.expert has information for your TLD.
This is a good thing as there are some other domain extensions like "co.us" for example that are missing a direct check.
Your nameservers are listed
v0n0.nic.expert has your nameservers listed.
This is a must if you want to be found as anyone that does not know your DNS servers will first ask the parent nameservers.
DNS Parent sent Glue
0 of 2 nameservers sent GLUE.

The parent nameserver a.gtld-servers.net is not sending out GLUE for every nameserver listed, meaning it is sending your nameserver hostnames without their corresponding A records. This is acceptable, but it requires an extra A record lookup, which may slightly delay DNS resolution. This often occurs when nameservers are on a different TLD (e.g., domain.com with nameserver ns.otherdomain.com).
Nameservers A records
Every nameserver listed has A records.
This is a must if you want to be found.
NS4529.3 ms
NS records from your NameServers
NS records returned by the currently delegated nameservers are:

Hostname IP TTL Latency Last SOA change Last WHOIS change
ns1.us25.tmd.cloud 13.248.158.180 86400 138 ms 2026-09-04 2026-08-14 22:05:10.864
ns2.us25.tmd.cloud 13.248.158.180 86400 50 ms 2026-09-04 2026-08-14 22:05:10.864

All NS records have the same TTL: 86400 seconds.

Public Resolver
🌐 Cloudflare (GLOBAL)
1.1.1.1
🌐 Google DNS (GLOBAL)
8.8.8.8
🌐 Quad9 (GLOBAL)
9.9.9.9
OpenDNS (US)
208.67.222.222
CIRA Canadian Shield (CA)
149.112.121.10
CleanBrowsing (EU)
185.228.168.9
Quad9 (MX)
149.112.112.112
OpenDNS (ZA)
208.67.220.220
AdGuard DNS (EU)
94.140.14.14
ControlD (EU)
76.76.2.0
Yandex (RU)
77.88.8.8
114DNS (CN)
114.114.114.114
Mismatched NS records
The NS records at all your nameservers are identical to those listed by the parent.
DNS servers responded
All nameservers listed at the parent server responded.
Name of nameservers are valid
All of the NS records that your nameservers report seem valid.
Multiple Nameservers
You have 2 nameservers. This is acceptable, but having 3 or more is recommended according to RFC2182 section 5.
Having 2 nameservers is ok by me.
Missing nameservers reported by parent
All NS records are the same at the parent and at your nameservers.
Missing nameservers reported by your nameservers
All nameservers returned by the parent server are the same as the ones reported by your nameservers.
Domain CNAMEs
OK. RFC1912 2.4 and RFC2181 10.3 state that there should be no CNAMEs if an NS (or any other) record is present.
NSs CNAME check
OK. RFC1912 2.4 and RFC2181 10.3 state that there should be no CNAMEs if an NS (or any other) record is present.
Different subnets
All nameservers are on the same subnet (can be a risk).
Recursive Queries
ns1.us25.tmd.cloud → ❌ This DNS server allows recursion, which may pose a security risk (it responds to out-of-zone queries).
ns2.us25.tmd.cloud → ❌ This DNS server allows recursion, which may pose a security risk (it responds to out-of-zone queries).
Same Glue
The A records (GLUE) from the parent zone match the A records returned by your nameservers. OK.
NS Self-IP Consistency
All nameservers return consistent IP addresses with what they declare in the zone.
Glue for NS records
GLUE was not sent when I asked your nameservers for your NS records.
This is ok but you should know that in this case an extra A record lookup is required.
The nameservers without glue are:
    13.248.158.180
    13.248.158.180
You can fix this by adding A records to your nameservers.
Nameservers are lame
All the nameservers listed at the parent servers answer authoritatively for your domain.
IPs of nameservers are public
Ok. Looks like the IP addresses of your nameservers are public.
This is a good thing because it will prevent DNS delays and other problems.
DNS servers allow TCP connection
OK. Seems all your DNS servers allow TCP connections.
This is a good thing and useful even if UDP connections are used by default.
Different autonomous systems
All authoritative name servers appear to be in the same autonomous system: AS16509.
Using a single AS reduces resiliency and increases the blast radius of network incidents.
Consider hosting your NS records across multiple autonomous systems.


WARNING: Single point of failure.
Stealth NS records sent
Ok. No stealth NS records are sent
DNSSEC544.4 ms
Zone signed
DNSSEC: Unsigned
No RRSIG record found. The zone is not signed with DNSSEC.
DNSKEY records
No DNSKEY records found.
DS record in parent
No DS record found in the parent zone.
NSEC/NSEC3 record
No NSEC or NSEC3 record found when querying a non-existent subdomain.
This may indicate a misconfiguration or lack of proper DNSSEC denial-of-existence support.
SOA0.1 ms
SOA Record
The SOA (Start of Authority) record is:
    Primary nameserver: ns1.us25.tmd.cloud
    Hostmaster E-mail address: servers@mysecurecloudhost@com
    Serial #: 2026090400
    Refresh: 3600
    Retry: 1800
    Expire: 1209600
    Default TTL: 86400
NSs have same SOA serial
OK. All your nameservers agree that your SOA serial number is 2026090400.
SOA MNAME entry
OK. ns1.us25.tmd.cloud is listed at the parent servers.
SOA Serial
Your SOA serial number is: 2026090400. This appears to follow the recommended YYYYMMDDnn format.
SOA REFRESH
Your SOA REFRESH interval is: 3600. OK.
SOA RETRY
Your SOA RETRY value is: 1800. OK.
SOA EXPIRE
Your SOA EXPIRE number is: 1209600. Looks OK.
SOA MINIMUM TTL
Your SOA MINIMUM TTL is: 86400. This is fine
MX
...
MX Records
TXT0.1 ms
TXT Records
Host Type Value Size TTL
yiff.expert TXT "v=spf1 ip4:185.181.254.90 include:spf.mysecurecloudhost.com +a +mx +ip4:184.154.139.166 +ip4:184.154.73.98 +ip4:108.178.0.170 ~all" 130 900
SPF
...
SPF Analysis
DMARC91.5 ms
DMARC Record
No valid DMARC record was found at _dmarc.yiff.expert.
MTA-STS / TLS-RPT171.9 ms
Mail TLS security
TXT _mta-stsNot found
Policy URLhttps://mta-sts.yiff.expert/.well-known/mta-sts.txt (HTTP 0, policy missing)
Modenot set
Authorized MXnot set
max_agenot set
Policy fileNo valid MTA-STS policy file was fetched.
TXT _smtp._tlsNot found
MTA-STS score 0/5
Recommendations:
  • Publish an _mta-sts TXT record containing v=STSv1; id=. Change id whenever the HTTPS policy changes.
  • Publish the MTA-STS policy at https://mta-sts.yiff.expert/.well-known/mta-sts.txt with version: STSv1, mode, mx, and max_age.
  • Use mode: enforce to prevent delivery to MX hosts that do not satisfy the TLS policy.
  • Add at least one mx: line matching the domain's legitimate MX hosts.
  • Set max_age to at least 604800 seconds once the policy is stable.
  • Publish an _smtp._tls TXT record with v=TLSRPTv1; rua=mailto:tlsrpt@yourdomain to receive TLS reports.
DKIM
...
DKIM Records Detected
BIMI83.2 ms
BIMI Record
No BIMI record found at: default._bimi.yiff.expert.
SSL
...
SSL Certificate Summary
CAA
...
CAA Records
HSTS
...
HSTS
HTTPS
...
HTTPS
HTTPS (DNS)
...
HTTPS DNS record
WWW
...
A Record
AXFR
(Zone Transfer)105.7 ms
AXFR status for the zone
AXFR test could not be determined for yiff.expert.
Nameservers tested:
    ns1.us25.tmd.cloud, ns2.us25.tmd.cloud
Security note
Zone transfers (AXFR) should be disabled in production unless explicitly required and restricted.
Leaving AXFR open allows anyone to enumerate your entire DNS zone (subdomains, MX, TXT, internal hosts, etc.).
PORTS
...
Open ports detected (185.181.254.94)
REPUTATION
...
IP in blacklists (185.181.254.94)
DNS found
...
Test Details
Website Preview0.0 ms
Snapshot is generated through DNSprobe's rendering proxy and may be served from a short cache.
Security Headers515.4 ms
Score: 24/100 (F)
Failing, very weak or absent security headers

HeaderValue
HTTP/2
HTTP/2 200
HTTP version reported by the server.
set-cookie
PHPSESSID=dfb7a0543b09ec1116ccae03ace8d236; path=/; HttpOnly; secure
Session cookies should include the Secure attribute to ensure they are never sent over unencrypted connections.
Missing SameSite attribute.
expires
Thu, 19 Nov 1981 08:52:00 GMT
Legacy caching header. Prefer Cache-Control.
cache-control
no-store, no-cache, must-revalidate
Controls caching. For sensitive pages consider 'no-store'.
pragma
no-cache
Legacy HTTP/1.0 directive. Prefer Cache-Control.
content-type
text/html; charset=utf-8
Declares MIME type; pair with X-Content-Type-Options: nosniff.
content-encoding
br
Compression used for the response (gzip, br…).
vary
Accept-Encoding,User-Agent
Tells caches which request headers affect the response.
date
Thu, 22 Oct 2026 17:09:20 GMT
Origin date of the response.
age
None
Indicates how long the response has been cached.
x-powered-by
Not defined
May reveal framework/version. Removing lowers fingerprinting.
strict-transport-security
Not defined
Enforces HTTPS for a period, strengthening TLS.
Enable HTTP Strict Transport Security (HSTS) to enforce secure connections.
x-xss-protection
Not defined
Deprecated. X-XSS-Protection sets the configuration for the legacy XSS Auditor in older browsers.
The recommended value used to be "X-XSS-Protection: 1; mode=block" but you should now look at Content Security Policy instead.
x-content-type-options
Not defined
Stops MIME sniffing. Only valid value: 'nosniff'.
Use X-Content-Type-Options: nosniff.
x-permitted-cross-domain-policies
Not defined
Controls Flash/Adobe cross-domain policies. Use 'none'.
Prefer X-Permitted-Cross-Domain-Policies: none.
referrer-policy
Not defined
Controls referrer information sent on navigation.
Recommended: strict-origin-when-cross-origin.
permissions-policy
Not defined
Restricts powerful features (camera, mic, geolocation…).
Add a Permissions-Policy to restrict powerful features.
expect-ct
Not defined
Deprecated control, should be removed if present.
x-frame-options
Not defined
Protects against clickjacking. Prefer CSP frame-ancestors today.
Add frame-ancestors (CSP) or X-Frame-Options.
content-security-policy
Not defined
CSP limits content sources to mitigate XSS.
No CSP detected; add one to mitigate XSS.
cross-origin-embedder-policy
Not defined
COEP is part of cross-origin isolation (with COOP).
cross-origin-embedder-policy-report-only
Not defined
COEP in report-only mode (not enforced).
cross-origin-opener-policy
Not defined
COOP isolates browsing context groups when set to same-origin.
cross-origin-opener-policy-report-only
Not defined
COOP in report-only mode (not enforced).
cross-origin-resource-policy
Not defined
CORP restricts who can load this resource.
access-control-allow-origin
Not defined
CORS: which origins are allowed to read this response.
access-control-allow-methods
Not defined
CORS: which methods are allowed.
access-control-allow-headers
Not defined
CORS: which request headers are allowed.
alt-svc
h3=":443"; ma=2592000, h3-29=":443"; ma=2592000
Advertises alternative services (e.g., HTTP/3 via QUIC).
Other detected headers
Additional headers returned by the server. Shown for information only and not included in the score.
HeaderValue
serverLiteSpeed
Recommended starter configuration (.htaccess)
Starter configuration to copy and adapt. CSP, CORS and cookie rewriting are intentionally commented because they can break some sites if enabled blindly.


#BEGIN SECURITY HEADERS

# -------------------------------------------------------
# Safe baseline
# -------------------------------------------------------
<IfModule mod_rewrite.c>
  RewriteEngine On
  RewriteCond %{HTTPS} !=on
  RewriteCond %{HTTP:X-Forwarded-Proto} !https [NC]
  RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
</IfModule>

Options -Indexes

<IfModule mod_headers.c>
  # Reduce fingerprinting
  # The Server header usually cannot be removed from .htaccess; configure it at the web server level if needed.
  Header always unset X-Powered-By
  Header always unset X-Redirect-By

  # TLS / transport security (only when HTTPS)
  Header always set Strict-Transport-Security "max-age=63072000; includeSubDomains; preload" env=HTTPS

  # MIME sniffing protection
  Header always set X-Content-Type-Options "nosniff"

  # Referrer policy
  Header always set Referrer-Policy "strict-origin-when-cross-origin"

  # Adobe cross-domain policy
  Header always set X-Permitted-Cross-Domain-Policies "none"

  # Clickjacking protection (consistent with CSP frame-ancestors 'self')
  Header always set X-Frame-Options "SAMEORIGIN"

  # Cross-Origin isolation headers (sane defaults)
  Header always set Cross-Origin-Opener-Policy "same-origin"
  Header always set Cross-Origin-Resource-Policy "same-origin"
  # COEP is powerful but can break third-party embeds/resources if not CORP/CORS-enabled.
  # Header always set Cross-Origin-Embedder-Policy "require-corp"

  # Deprecated header; modern browsers rely on CSP instead, but some scanners still like to see it.
  Header always set X-XSS-Protection "0"

  # Permissions-Policy (balanced: blocks sensitive features, allows reasonable ones on self)
  Header always set Permissions-Policy "accelerometer=(), camera=(), geolocation=(), gyroscope=(), magnetometer=(), microphone=(), midi=(), payment=(), usb=(), display-capture=(), autoplay=(self), encrypted-media=(self), fullscreen=(self), picture-in-picture=(self), clipboard-write=(self), publickey-credentials-get=(self)"

  # Vary (keep small; don’t add Referer/User-Agent unless you truly vary by them)
  Header always merge Vary "Accept-Encoding"
</IfModule>

# -------------------------------------------------------
# Cache-Control (HTML pages)
# -------------------------------------------------------
<IfModule mod_headers.c>
  # Apply to HTML responses (works for WordPress permalinks too). Requires Apache 2.4+ expressions.
  # If you do not use a page cache (LiteSpeed Cache, cache plugins, etc.), you can uncomment the line below. Keep it commented if a page cache is active.
  # Header always set Cache-Control "private, no-cache, must-revalidate" "expr=%{CONTENT_TYPE} =~ m#^text/html#"
  # Header always unset Pragma "expr=%{CONTENT_TYPE} =~ m#^text/html#"
  # Header always unset Expires "expr=%{CONTENT_TYPE} =~ m#^text/html#"
</IfModule>

# -------------------------------------------------------
# CSP - Content Security Policy (minimal safe baseline)
# -------------------------------------------------------
<IfModule mod_headers.c>
  # (Keeps your current intent; strengthen later with default-src/script-src/etc.)
  # Adjust img-src, script-src, style-src, font-src, connect-src as needed (e.g., add trusted CDNs).
  # Header always set Content-Security-Policy "default-src 'self'; base-uri 'self'; object-src 'none'; frame-ancestors 'self'; img-src 'self' data: https:; script-src 'self'; style-src 'self'; font-src 'self' data:; connect-src 'self'; form-action 'self'; upgrade-insecure-requests"
</IfModule>

# -------------------------------------------------------
# CORS - Cross-Origin Ressource Sharing (optional; keep commented unless needed)
# -------------------------------------------------------
<IfModule mod_headers.c>
  # IMPORTANT:
  # - Do NOT enable global CORS unless you have a real API need.
  # If you need CORS, uncomment and set a fixed allowlist.
  # SetEnvIf Origin "^https?://(yiff\.expert|www\.yiff\.expert)(:\d{1,5})?$" CORS_ALLOW_ORIGIN=$0
  # Header always set Access-Control-Allow-Origin "%{CORS_ALLOW_ORIGIN}e" env=CORS_ALLOW_ORIGIN
  # Header always merge Vary "Origin" env=CORS_ALLOW_ORIGIN
  # Header always set Access-Control-Allow-Methods "GET, POST, OPTIONS" env=CORS_ALLOW_ORIGIN
  # Header always set Access-Control-Allow-Headers "Content-Type, Authorization" env=CORS_ALLOW_ORIGIN
  # Header always set Access-Control-Max-Age "86400" env=CORS_ALLOW_ORIGIN
</IfModule>

# -------------------------------------------------------
# Cookies hardening (optional)
# -------------------------------------------------------
<IfModule mod_headers.c>
  # Apache only: uses Header edit/edit* to append Secure/HttpOnly/SameSite when missing. Not valid / not supported reliably on LiteSpeed/OpenLiteSpeed.
  # Header always edit* Set-Cookie "(?i)^((?:(?!;\s*Secure).)+)$" "$1; Secure" env=HTTPS
  # Header always edit* Set-Cookie "(?i)^((?:(?!;\s*HttpOnly).)+)$" "$1; HttpOnly"
  # Header always edit* Set-Cookie "(?i)^((?:(?!;\s*SameSite=).)+)$" "$1; SameSite=Lax"
</IfModule>

# -------------------------------------------------------
# Reporting headers (optional)
# -------------------------------------------------------
<IfModule mod_headers.c>
  # Header always set Reporting-Endpoints "default=\"https://yiff.expert/reporting\""
  # Header always set Cross-Origin-Opener-Policy-Report-Only "same-origin"
  # Header always set Cross-Origin-Embedder-Policy-Report-Only "require-corp"
</IfModule>

#END SECURITY HEADERS
WHOIS0.1 ms
Source: RDAP (registry API)
WHOIS Summary
Domain Name: YIFF.EXPERT
Registry Expiry Date:✅ 2027-08-24 14:42:27.743
Creation Date: 2018-08-24 14:42:27.743
Updated Date: 2026-08-14 22:05:10.864
Updated Date: 2026-10-22 17:09:11.876
Domain Status: client delete prohibited
Domain Status: client transfer prohibited
Name Server: ns1.us25.tmd.cloud
Name Server: ns2.us25.tmd.cloud
Registrar: Squarespace Domains II LLC
Registrar IANA ID: 895
Registrar URL: https://rdap.identitydigital.services/rdap/entity/895
DNSSEC: unsigned

You like this tool?

Buy Me A Coffee

Processed in 0.009 seconds.
Made with with PHP and a bit of JS.
Lines of code: 20,304

⚙️ Configuration
(Check / Uncheck All)