{
    "ok": true,
    "domain": "nvwa.nl",
    "generated_at": "2026-08-12T12:58:10-05:00",
    "cache": {
        "hit": true,
        "ttl": 0
    },
    "score": {
        "total": 93,
        "label": "Excellent",
        "categories": {
            "dns": 100,
            "mail": 90,
            "security": 92,
            "network": 70,
            "availability": 100
        },
        "category_weights": {
            "dns": 25,
            "mail": 20,
            "security": 25,
            "network": 10,
            "availability": 20
        },
        "items": [
            {
                "category": "dns",
                "title": "IPv4 (A)",
                "max_points": 30,
                "earned_points": 30,
                "lost_points": 0,
                "detail": "4 IPv4 address(es) detected."
            },
            {
                "category": "dns",
                "title": "IPv6 (AAAA)",
                "max_points": 10,
                "earned_points": 10,
                "lost_points": 0,
                "detail": "4 IPv6 address(es) detected."
            },
            {
                "category": "dns",
                "title": "Name server redundancy",
                "max_points": 20,
                "earned_points": 20,
                "lost_points": 0,
                "detail": "4 NS record(s); 2 or more required."
            },
            {
                "category": "dns",
                "title": "SOA record",
                "max_points": 10,
                "earned_points": 10,
                "lost_points": 0,
                "detail": "Authoritative zone record."
            },
            {
                "category": "dns",
                "title": "DNSSEC chain",
                "max_points": 15,
                "earned_points": 15,
                "lost_points": 0,
                "detail": "DS and DNSKEY detected."
            },
            {
                "category": "dns",
                "title": "CAA policy",
                "max_points": 5,
                "earned_points": 5,
                "lost_points": 0,
                "detail": "Certificate authority restriction."
            },
            {
                "category": "dns",
                "title": "DNS propagation",
                "max_points": 10,
                "earned_points": 10,
                "lost_points": 0,
                "detail": "Agreement between public resolvers."
            },
            {
                "category": "mail",
                "title": "MX records",
                "max_points": 20,
                "earned_points": 20,
                "lost_points": 0,
                "detail": "4 MX record(s)."
            },
            {
                "category": "mail",
                "title": "SPF",
                "max_points": 25,
                "earned_points": 25,
                "lost_points": 0,
                "detail": "SPF policy published."
            },
            {
                "category": "mail",
                "title": "DMARC",
                "max_points": 25,
                "earned_points": 25,
                "lost_points": 0,
                "detail": "DMARC policy published."
            },
            {
                "category": "mail",
                "title": "DKIM",
                "max_points": 20,
                "earned_points": 20,
                "lost_points": 0,
                "detail": "A DKIM selector was verified."
            },
            {
                "category": "mail",
                "title": "MTA-STS",
                "max_points": 5,
                "earned_points": 0,
                "lost_points": 5,
                "detail": "Mail transport policy."
            },
            {
                "category": "mail",
                "title": "TLS-RPT",
                "max_points": 5,
                "earned_points": 0,
                "lost_points": 5,
                "detail": "TLS reporting policy."
            },
            {
                "category": "security",
                "title": "Valid TLS certificate",
                "max_points": 55,
                "earned_points": 55,
                "lost_points": 0,
                "detail": "144 day(s) remaining."
            },
            {
                "category": "security",
                "title": "Certificate lifetime",
                "max_points": 10,
                "earned_points": 10,
                "lost_points": 0,
                "detail": "Full points require at least 30 days remaining."
            },
            {
                "category": "security",
                "title": "HTTP security headers",
                "max_points": 35,
                "earned_points": 27,
                "lost_points": 8,
                "detail": "7 of 9 evaluated headers detected."
            },
            {
                "category": "network",
                "title": "PTR reverse DNS",
                "max_points": 30,
                "earned_points": 0,
                "lost_points": 30,
                "detail": "PTR not detected."
            },
            {
                "category": "network",
                "title": "IPv4 diversity",
                "max_points": 35,
                "earned_points": 35,
                "lost_points": 0,
                "detail": "Two or more IPv4 addresses receive full points."
            },
            {
                "category": "network",
                "title": "IPv6 connectivity",
                "max_points": 35,
                "earned_points": 35,
                "lost_points": 0,
                "detail": "AAAA availability."
            },
            {
                "category": "availability",
                "title": "DNS resolution",
                "max_points": 40,
                "earned_points": 40,
                "lost_points": 0,
                "detail": "At least one address family must resolve."
            },
            {
                "category": "availability",
                "title": "HTTP response",
                "max_points": 40,
                "earned_points": 40,
                "lost_points": 0,
                "detail": "HTTP/2 200 "
            },
            {
                "category": "availability",
                "title": "HTTPS final URL",
                "max_points": 20,
                "earned_points": 20,
                "lost_points": 0,
                "detail": "Final URL uses HTTPS."
            }
        ],
        "methodology": "Each category is normalized to 100. The total is the weighted sum: DNS 25%, Email 20%, Security 25%, Network 10%, Availability 20%.",
        "diagnostics": [
            {
                "level": "ok",
                "title": "IPv4 (A)",
                "detail": "4 IPv4 address(es) detected.",
                "category": "dns",
                "max_points": 30,
                "earned_points": 30,
                "lost_points": 0
            },
            {
                "level": "ok",
                "title": "IPv6 (AAAA)",
                "detail": "4 IPv6 address(es) detected.",
                "category": "dns",
                "max_points": 10,
                "earned_points": 10,
                "lost_points": 0
            },
            {
                "level": "ok",
                "title": "Name server redundancy",
                "detail": "4 NS record(s); 2 or more required.",
                "category": "dns",
                "max_points": 20,
                "earned_points": 20,
                "lost_points": 0
            },
            {
                "level": "ok",
                "title": "SOA record",
                "detail": "Authoritative zone record.",
                "category": "dns",
                "max_points": 10,
                "earned_points": 10,
                "lost_points": 0
            },
            {
                "level": "ok",
                "title": "DNSSEC chain",
                "detail": "DS and DNSKEY detected.",
                "category": "dns",
                "max_points": 15,
                "earned_points": 15,
                "lost_points": 0
            },
            {
                "level": "ok",
                "title": "CAA policy",
                "detail": "Certificate authority restriction.",
                "category": "dns",
                "max_points": 5,
                "earned_points": 5,
                "lost_points": 0
            },
            {
                "level": "ok",
                "title": "DNS propagation",
                "detail": "Agreement between public resolvers.",
                "category": "dns",
                "max_points": 10,
                "earned_points": 10,
                "lost_points": 0
            },
            {
                "level": "ok",
                "title": "MX records",
                "detail": "4 MX record(s).",
                "category": "mail",
                "max_points": 20,
                "earned_points": 20,
                "lost_points": 0
            },
            {
                "level": "ok",
                "title": "SPF",
                "detail": "SPF policy published.",
                "category": "mail",
                "max_points": 25,
                "earned_points": 25,
                "lost_points": 0
            },
            {
                "level": "ok",
                "title": "DMARC",
                "detail": "DMARC policy published.",
                "category": "mail",
                "max_points": 25,
                "earned_points": 25,
                "lost_points": 0
            },
            {
                "level": "ok",
                "title": "DKIM",
                "detail": "A DKIM selector was verified.",
                "category": "mail",
                "max_points": 20,
                "earned_points": 20,
                "lost_points": 0
            },
            {
                "level": "error",
                "title": "MTA-STS",
                "detail": "Mail transport policy.",
                "category": "mail",
                "max_points": 5,
                "earned_points": 0,
                "lost_points": 5
            },
            {
                "level": "error",
                "title": "TLS-RPT",
                "detail": "TLS reporting policy.",
                "category": "mail",
                "max_points": 5,
                "earned_points": 0,
                "lost_points": 5
            },
            {
                "level": "ok",
                "title": "Valid TLS certificate",
                "detail": "144 day(s) remaining.",
                "category": "security",
                "max_points": 55,
                "earned_points": 55,
                "lost_points": 0
            },
            {
                "level": "ok",
                "title": "Certificate lifetime",
                "detail": "Full points require at least 30 days remaining.",
                "category": "security",
                "max_points": 10,
                "earned_points": 10,
                "lost_points": 0
            },
            {
                "level": "warning",
                "title": "HTTP security headers",
                "detail": "7 of 9 evaluated headers detected.",
                "category": "security",
                "max_points": 35,
                "earned_points": 27,
                "lost_points": 8
            },
            {
                "level": "error",
                "title": "PTR reverse DNS",
                "detail": "PTR not detected.",
                "category": "network",
                "max_points": 30,
                "earned_points": 0,
                "lost_points": 30
            },
            {
                "level": "ok",
                "title": "IPv4 diversity",
                "detail": "Two or more IPv4 addresses receive full points.",
                "category": "network",
                "max_points": 35,
                "earned_points": 35,
                "lost_points": 0
            },
            {
                "level": "ok",
                "title": "IPv6 connectivity",
                "detail": "AAAA availability.",
                "category": "network",
                "max_points": 35,
                "earned_points": 35,
                "lost_points": 0
            },
            {
                "level": "ok",
                "title": "DNS resolution",
                "detail": "At least one address family must resolve.",
                "category": "availability",
                "max_points": 40,
                "earned_points": 40,
                "lost_points": 0
            },
            {
                "level": "ok",
                "title": "HTTP response",
                "detail": "HTTP/2 200 ",
                "category": "availability",
                "max_points": 40,
                "earned_points": 40,
                "lost_points": 0
            },
            {
                "level": "ok",
                "title": "HTTPS final URL",
                "detail": "Final URL uses HTTPS.",
                "category": "availability",
                "max_points": 20,
                "earned_points": 20,
                "lost_points": 0
            }
        ]
    },
    "dns": {
        "records": {
            "A": [
                "178.22.85.8",
                "178.22.85.11",
                "178.22.85.9",
                "178.22.85.10"
            ],
            "AAAA": [
                "2a00:d00:3:2::5",
                "2a00:d00:3:2::6",
                "2a00:d00:3:2::4",
                "2a00:d00:3:2::3"
            ],
            "CNAME": [],
            "MX": [
                "10 mail02.dictu.nl.",
                "10 mail03.dictu.nl.",
                "10 mail04.dictu.nl.",
                "10 mail01.dictu.nl."
            ],
            "TXT": [
                "\"google-site-verification=Ua5eRFsHfIY1JiYz81bNKMzDu7BI8_IAYDn0Yt6Pguc\"",
                "\"adobe-idp-site-verification=91ded5902cb284fe37e0d66aec42f7b5e023d7b1405ce846b8cd03cc04f85c94\"",
                "\"cisco-ci-domain-verification=ed65e8e04e578bb60ca00c6233ebb0b26c0ce0de0a89ff01c6c693e5852fc1f\"",
                "\"v=spf1 include:_spf.dictu.nl include:spf.anachron.com ~all exp=explain-dictu._spf.dictu.nl\""
            ],
            "NS": [
                "ns2.rijksoverheidnl.eu.",
                "ns3.rijksoverheidnl.org.",
                "ns1.rijksoverheidnl.nl.",
                "ns0.rijksoverheidnl.com."
            ],
            "SOA": [
                "ns1.rijksoverheidnl.nl. domeinnaam.minaz.nl. 2026080601 10800 3600 604800 86400"
            ],
            "CAA": [
                "0 issue \"digicert.com\"",
                "0 iodef \"mailto:dictucertificaatbeheer@dictu.nl\"",
                "0 issue \"letsencrypt.org\"",
                "0 issuewild \";\""
            ],
            "DS": [
                "21771 13 2 D122D3CF0AAAF937BC88E38B1F128439D00F76430218D84881751C80 46727538"
            ],
            "DNSKEY": [
                "257 3 13 gvLqo2AC07qAuI5blSNj0C0MoCBmuEV+jLaqQZ21Zt7OVS/VjhYmTxXk +xAOxVQ9tGvZnWOE75nCJHOGu6n5rA=="
            ],
            "RRSIG": [
                "TXT 13 2 10800 20260820000000 20260730000000 21771 nvwa.nl. jDNUOwI2mca+m6T1fKhJWQIX63+5kMwqGd1i7AxgK2Y13aUO05yktAoK bB7yGEUl4lPvtQyFcJhay/aOuiqvDg==",
                "A 13 2 10800 20260820000000 20260730000000 21771 nvwa.nl. sPunoEUQqD869tczkskx922qWkpCo71q3mRo+SqVopJj5Yy4IiO/iVCx kyNyd3R4UVSm8B3ExTBNsQXQXpdJaw==",
                "DNSKEY 13 2 86400 20260820000000 20260730000000 21771 nvwa.nl. 2jTIcgHLK/3uxc0Ouu0fJFRyke+GALSD9v7fTYoPr8ugyrFU7R/zSgU6 MPad3fHxkWAn+2QOUpGOKj8roRkVqQ==",
                "NS 13 2 10800 20260820000000 20260730000000 21771 nvwa.nl. rCFn+o46r3xX9fnFtZZ8J0ONcGIAEzEmGWi44gG6ii94Th9bHFJ81wVj OUz6KbsOzs0BOiNUJRRVizWMBNt3KQ==",
                "AAAA 13 2 10800 20260820000000 20260730000000 21771 nvwa.nl. aw2tLF2rZ4K72fTKrKwXN/wmnnm3aP0uN0YXl4RI3xQIQPY4189IJ+FQ YSY+B3hYEdhRaMVCB5D59O6Wt7FN1A==",
                "DS 13 2 3600 20260905145837 20260808220922 467 nl. HlgS4VH35GqGO7vOKXAIUq6i/0lLQpoCRgjRxfvw3YjJndCySQ5fXRAK RWeS63+0xkF5swdNrOhhyZZ0p+tcGw=="
            ],
            "NSEC": [],
            "NSEC3": [],
            "SRV": [],
            "NAPTR": [],
            "TLSA": [],
            "SSHFP": []
        },
        "ipv4": [
            "178.22.85.8",
            "178.22.85.11",
            "178.22.85.9",
            "178.22.85.10"
        ],
        "ipv6": [
            "2a00:d00:3:2::5",
            "2a00:d00:3:2::6",
            "2a00:d00:3:2::4",
            "2a00:d00:3:2::3"
        ]
    },
    "mail": {
        "spf": "v=spf1 include:_spf.dictu.nl include:spf.anachron.com ~all exp=explain-dictu._spf.dictu.nl",
        "dmarc": "v=DMARC1; p=reject; rua=mailto:dmarc@dictu.nl",
        "dkim_selector": "selector1",
        "dkim_host": "selector1._domainkey.nvwa.nl",
        "dkim": "v=DKIM1; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAtGhqVNpXgXMzHsjRAp1a67bJHzC9jNlQU2xcELVP7Hg1jDYgMCWUzNWvLv5vukdyoPeKIw8xufw6IyNrBtHPNkp7feqBUM6wh1qu8fTirA3rVDy2gtiApI9OhK5gGQydPxIWYXOp1PvNBc1MLDIrQ6HYWJEX5RfEXDEW6rpNuJ/3by/HVAqVKXXN3udouAw/3XmOKHxeZXyfgTnN5W/0FnQGitEUlYZH417vQfbKCjbEN9OXcnIivcjhobeJBb1kOMSVBroEGQhR9Nsoal6by9EyJCSIs3X+LNUlsv9WI1+JE736LnnnrCGds7Lc0Ek8bfS4K7pXj1G4kCqajxtw3wIDAQAB;",
        "spf_analysis": {
            "valid": true,
            "lookups": 2,
            "final": "~all",
            "message": "Within the estimated limit"
        },
        "dmarc_analysis": {
            "valid": true,
            "policy": "reject"
        },
        "bimi": "",
        "mta_sts": "",
        "tls_rpt": ""
    },
    "advanced": {
        "ptr": "",
        "propagation": {
            "consistent": true,
            "results": [
                {
                    "provider": "Google",
                    "server": "8.8.8.8",
                    "result": [
                        "178.22.85.10",
                        "178.22.85.11",
                        "178.22.85.8",
                        "178.22.85.9"
                    ],
                    "time_ms": 200.81
                },
                {
                    "provider": "Cloudflare",
                    "server": "1.1.1.1",
                    "result": [
                        "178.22.85.10",
                        "178.22.85.11",
                        "178.22.85.8",
                        "178.22.85.9"
                    ],
                    "time_ms": 242.85
                },
                {
                    "provider": "Quad9",
                    "server": "9.9.9.9",
                    "result": [
                        "178.22.85.10",
                        "178.22.85.11",
                        "178.22.85.8",
                        "178.22.85.9"
                    ],
                    "time_ms": 50.31
                },
                {
                    "provider": "OpenDNS",
                    "server": "208.67.222.222",
                    "result": [
                        "178.22.85.10",
                        "178.22.85.11",
                        "178.22.85.8",
                        "178.22.85.9"
                    ],
                    "time_ms": 221.52
                },
                {
                    "provider": "AdGuard",
                    "server": "94.140.14.14",
                    "result": [
                        "178.22.85.10",
                        "178.22.85.11",
                        "178.22.85.8",
                        "178.22.85.9"
                    ],
                    "time_ms": 144.92
                }
            ]
        }
    },
    "ssl": {
        "available": true,
        "issuer": "DigiCert Ireland Limited",
        "subject": "nvwa.nl",
        "valid_from": "2026-06-18T19:00:00-05:00",
        "valid_to": "2027-01-03T17:59:59-06:00",
        "days_remaining": 144,
        "san": [
            "nvwa.nl"
        ],
        "protocol": "TLSv1.3",
        "cipher": "TLS_CHACHA20_POLY1305_SHA256"
    },
    "http": {
        "url": "https://www.nvwa.nl/",
        "status": "HTTP/2 200 ",
        "http_version": "3",
        "headers": {
            "server": "nginx",
            "date": "Wed, 12 Aug 2026 17:58:01 GMT",
            "content-type": "text/html; charset=utf-8",
            "content-length": "162",
            "location": "https://www.nvwa.nl/",
            "x-content-type-options": "nosniff",
            "x-xss-protection": "1; mode=block",
            "x-frame-options": "deny",
            "content-security-policy": "default-src 'self'; img-src 'self' data: blob: https://statistiek.rijksoverheid.nl https://*.rovid.nl https://*.rijksoverheidsvideo.nl https://d3oiud1b8fohdw.cloudfront.net https://www.toegankelijkheidsverklaring.nl www.rovid.nl nvwa.origin.p25e.nl www.nvwa.nl; object-src 'none'; frame-ancestors 'self'; form-action 'self' https://*.rijksoverheid.nl https://*.contenttoolsrijksoverheid.nl; style-src 'self' 'unsafe-inline' https://statistiek.rijksoverheid.nl https://*.contenttoolsrijksoverheid.nl; style-src-elem 'self' 'unsafe-inline' https://statistiek.rijksoverheid.nl https://*.contenttoolsrijksoverheid.nl; style-src-attr 'unsafe-inline'; font-src 'self' data: https://statistiek.rijksoverheid.nl; connect-src 'self' https://*.rijksoverheid.nl https://*.platformrijksoverheid.nl https://*.contenttoolsrijksoverheid.nl https://statistiek.rijksoverheid.nl https://*.rovid.nl https://*.rijksoverheidsvideo.nl https://export.highcharts.com https://static.nederlandwereldwijd.nl https://*.p1o.nl https://api1.abonneren.platformrijksoverheidonline.nl/ https://*.nvwa.nl; script-src 'self' 'nonce-MjdjMWU0NDUtNjZmYS00Mjg2LThjN2ItYTQ1MzMxOGJlOTli' https://statistiek.rijksoverheid.nl https://*.rijksoverheid.nl https://*.platformrijksoverheid.nl https://*.contenttoolsrijksoverheid.nl; media-src 'self' https://*.rovid.nl https://*.rijksoverheidsvideo.nl; base-uri 'self'; upgrade-insecure-requests;",
            "referrer-policy": "strict-origin-when-cross-origin",
            "strict-transport-security": "max-age=31536000 ; includeSubDomains",
            "permissions-policy": "accelerometer=(), autoplay=(), camera=(), document-domain=(), geolocation=(), gyroscope=(), magnetometer=(), microphone=(), midi=(), payment=(), picture-in-picture=self, publickey-credentials-get=(), sync-xhr=(), usb=(), xr-spatial-tracking=()",
            "x-permitted-cross-domain-policies": "none",
            "link": "</_next/static/chunks/3u8c3bgzhqg2m.css>; rel=preload; as=\"style\"; nonce=\"MjdjMWU0NDUtNjZmYS00Mjg2LThjN2ItYTQ1MzMxOGJlOTli\", </_next/static/chunks/0yp-wpm5p97z2.css>; rel=preload; as=\"style\"; nonce=\"MjdjMWU0NDUtNjZmYS00Mjg2LThjN2ItYTQ1MzMxOGJlOTli\", </_next/static/chunks/0plvngwk4jlym.css>; rel=preload; as=\"style\"; nonce=\"MjdjMWU0NDUtNjZmYS00Mjg2LThjN2ItYTQ1MzMxOGJlOTli\"",
            "cross-origin-opener-policy": "same-origin",
            "cache-control": "must-revalidate, max-age=60",
            "alt-svc": "h3=\":443\"; ma=93600"
        },
        "security_checks": {
            "strict-transport-security": true,
            "content-security-policy": true,
            "x-content-type-options": true,
            "x-frame-options": true,
            "referrer-policy": true,
            "permissions-policy": true,
            "cross-origin-opener-policy": true,
            "cross-origin-embedder-policy": false,
            "cross-origin-resource-policy": false
        },
        "server": "nginx",
        "powered_by": ""
    },
    "webpage": {
        "url": "https://www.nvwa.nl/",
        "title": "Home | NVWA",
        "description": "De NVWA brengt vertrouwen in de veiligheid van voedsel en gebruiksartikelen, de gezondheid en het welzijn van dieren, en het veilig terugdringen van plantenziekten en plagen. We controleren aanbieders, en informeren burgers en ondernemers bij risico's.",
        "success": true,
        "error": "",
        "status": 206
    },
    "network": {
        "178.22.85.8": {
            "success": false,
            "country": "",
            "region": "",
            "city": "",
            "asn": "",
            "organization": "",
            "isp": ""
        },
        "178.22.85.11": {
            "success": false,
            "country": "",
            "region": "",
            "city": "",
            "asn": "",
            "organization": "",
            "isp": ""
        },
        "178.22.85.9": {
            "success": false,
            "country": "",
            "region": "",
            "city": "",
            "asn": "",
            "organization": "",
            "isp": ""
        },
        "178.22.85.10": {
            "success": false,
            "country": "",
            "region": "",
            "city": "",
            "asn": "",
            "organization": "",
            "isp": ""
        }
    },
    "smtp": {
        "host": "mail02.dictu.nl",
        "ports": [
            {
                "port": 25,
                "open": false,
                "time_ms": 107.9,
                "banner": "",
                "error": "Network is unreachable"
            },
            {
                "port": 465,
                "open": false,
                "time_ms": 4122.8,
                "banner": "",
                "error": "Connection timed out"
            },
            {
                "port": 587,
                "open": false,
                "time_ms": 4019.4,
                "banner": "",
                "error": "Connection timed out"
            }
        ]
    },
    "visitor": {
        "ip": "216.73.216.220",
        "reverse": "",
        "country": "",
        "country_code": "",
        "region": "",
        "city": "",
        "latitude": null,
        "longitude": null,
        "isp": "",
        "organization": "",
        "asn": "",
        "timezone": "",
        "browser": "Other",
        "os": "Other",
        "language": "",
        "user_agent": "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)",
        "is_bot": true,
        "cloudflare": false
    },
    "analysis_time_ms": 116.42
}