{
    "ok": true,
    "domain": "duke.edu",
    "generated_at": "2026-08-08T18:49:22-05:00",
    "cache": {
        "hit": true,
        "ttl": 0
    },
    "score": {
        "total": 79,
        "label": "Good",
        "categories": {
            "dns": 70,
            "mail": 90,
            "security": 65,
            "network": 65,
            "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": "2 IPv4 address(es) detected."
            },
            {
                "category": "dns",
                "title": "IPv6 (AAAA)",
                "max_points": 10,
                "earned_points": 0,
                "lost_points": 10,
                "detail": "0 IPv6 address(es) detected."
            },
            {
                "category": "dns",
                "title": "Name server redundancy",
                "max_points": 20,
                "earned_points": 20,
                "lost_points": 0,
                "detail": "3 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": 0,
                "lost_points": 15,
                "detail": "Both DS and DNSKEY are required."
            },
            {
                "category": "dns",
                "title": "CAA policy",
                "max_points": 5,
                "earned_points": 0,
                "lost_points": 5,
                "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": "1 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": "90 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": 0,
                "lost_points": 35,
                "detail": "0 of 9 evaluated headers detected."
            },
            {
                "category": "network",
                "title": "PTR reverse DNS",
                "max_points": 30,
                "earned_points": 30,
                "lost_points": 0,
                "detail": "PTR: www-duke-fitz.oit.duke.edu"
            },
            {
                "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": 0,
                "lost_points": 35,
                "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/1.1 200 OK"
            },
            {
                "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": "2 IPv4 address(es) detected.",
                "category": "dns",
                "max_points": 30,
                "earned_points": 30,
                "lost_points": 0
            },
            {
                "level": "error",
                "title": "IPv6 (AAAA)",
                "detail": "0 IPv6 address(es) detected.",
                "category": "dns",
                "max_points": 10,
                "earned_points": 0,
                "lost_points": 10
            },
            {
                "level": "ok",
                "title": "Name server redundancy",
                "detail": "3 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": "error",
                "title": "DNSSEC chain",
                "detail": "Both DS and DNSKEY are required.",
                "category": "dns",
                "max_points": 15,
                "earned_points": 0,
                "lost_points": 15
            },
            {
                "level": "error",
                "title": "CAA policy",
                "detail": "Certificate authority restriction.",
                "category": "dns",
                "max_points": 5,
                "earned_points": 0,
                "lost_points": 5
            },
            {
                "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": "1 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": "90 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": "error",
                "title": "HTTP security headers",
                "detail": "0 of 9 evaluated headers detected.",
                "category": "security",
                "max_points": 35,
                "earned_points": 0,
                "lost_points": 35
            },
            {
                "level": "ok",
                "title": "PTR reverse DNS",
                "detail": "PTR: www-duke-fitz.oit.duke.edu",
                "category": "network",
                "max_points": 30,
                "earned_points": 30,
                "lost_points": 0
            },
            {
                "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": "error",
                "title": "IPv6 connectivity",
                "detail": "AAAA availability.",
                "category": "network",
                "max_points": 35,
                "earned_points": 0,
                "lost_points": 35
            },
            {
                "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/1.1 200 OK",
                "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": [
                "152.3.72.243",
                "152.3.70.87"
            ],
            "AAAA": [],
            "CNAME": [],
            "MX": [
                "10 duke-edu.mail.protection.outlook.com."
            ],
            "TXT": [
                "\"e2ma-verification=ru6fb\"",
                "\"atlassian-sending-domain-verification=3e62be3c-15a0-4c29-b220-9228dccda4d6\"",
                "\"airtable-verification=7d15715bf3281d4f6ab41a64ff551dd6\"",
                "\"adobe-sign-verification=8c1cf31e238f6042bd9a6e8424ecd7af\"",
                "\"iContact1742283\"",
                "\"webexdomainverification.DW7A=3d54276f-7c3e-4b36-82cb-f9283bd66232\"",
                "\"jamf-site-verification=2LbyJCbxBoCYL2FzaVVnoA\"",
                "\"1password-site-verification=Y3VALDXXNFEVBGZLI56XBT6MKY\"",
                "\"iContact1567195\"",
                "\"e2ma-verification=qqqfb\"",
                "\"e2ma-verification=rhq\"",
                "\"iContact1053803\"",
                "\"facebook-domain-verification=z3gz759ai6md22t5oavjekfy06n11r\"",
                "\"e2ma-verification=vsg\"",
                "\"e2ma-verification=d3hfb\"",
                "\"e2ma-verification=9bjib\"",
                "\"e2ma-verification=yq0fb\"",
                "\"e2ma-verification=984fb\"",
                "\"e2ma-verification=chxfb\"",
                "\"00D1I000000nhfJ=1TBcx00000002bK\"",
                "\"e2ma-verification=khq\"",
                "\"e2ma-verification=fu4\"",
                "\"VqIKTw/sDnE4e+9lXPalJqYaTtomECjG0+6XKvd2Nhfkaw8aAfgvcZjlAshHEjspbTHBtw4hhkk5X1ITTvdWxw==\"",
                "\"e2ma-verification=fbqeb\"",
                "\"91TR4AEZ87EVJCSEOKTFQJ1KGWHDG7PQ4T52XL7YQ\"",
                "\"ciscocidomainverification=2d1dd96a4eb257ed827359fa052171ab2c46910868187a2bc9365f496904b651\"",
                "\"e2ma-verification=0dhfb\"",
                "\"MS=ms29427067\"",
                "\"e2ma-verification=tqqfb\"",
                "\"adobe-idp-site-verification=76438831-136f-42eb-8467-627bcd13bec6\"",
                "\"airtable-verification=776ba9943f279be2814d0f5b7bf99b5c\"",
                "\"airtable-verification=979478a7fc8cd2102187835add26f443\"",
                "\"e2ma-verification=wc0fb\"",
                "\"d365mktkey=9UxytuxfXT7fQ5X2Wqo5UgHrC9MfXzESiUXsydjgVbkx\"",
                "\"atlassian-domain-verification=JNWA1j8qak7X8iJmucR4XqAsQOwMPSakfcNzpTn0Jc7b8aFxXcjK9cJay68Xqn9b\"",
                "\"webexdomainverification.DW7B=b34c0222-460e-4621-bb5b-7ce6ee15ead2\"",
                "\"e2ma-verification=spmfb\"",
                "\"v=spf1 include:%{i}._ip.%{h}._ehlo.%{d}._spf.vali.email ~all\"",
                "\"iContact1673295\"",
                "\"d365mktkey=DVSS3DGKRQNGACvj4bqW577P8t7hrVqGDWyDQzJFAtwx\"",
                "\"yahoo-verification-key=m1mvmfsoVrobVlqVWZx2Cp3YBfQa4w4jqe7f1pXZsdg=\"",
                "\"google-site-verification=fohuGSMCupMBfLvJ-OqvhaNOUrd4-VJzOA_hUjfM0GQ\"",
                "\"google-site-verification=VxNOqXRiTfBZEja2TbHMcwM3i0FcGUitTMxTa9CdXAg\"",
                "\"anthropic-domain-verification-z8t79x=2ToUeCCwAOnrDzSEM9VxiJHeX\"",
                "\"google-site-verification=5TXsU4v41p3-uJbMWepQdYbg8ydDm7pZqZpyL43nBec\"",
                "\"88n3v2rofr6e5as8nu1tfnq6mg\"",
                "\"asv=f0db2381d25189259bae9b4f5b96470a\"",
                "\"e2ma-verification=jv3cb\"",
                "\"google-site-verification=WyhytImncSxgmBWxa1o1_nGcNS2LuzeYvzApLAE2qVA\"",
                "\"e2ma-verification=sqqfb\"",
                "\"e2ma-verification=e8qeb\"",
                "\"google-site-verification=Cx538Bo1iba_0Qw1ca-yfo2f0E50HuiB5AzF1oasBOc\"",
                "\"iContact1788229\"",
                "\"coursera-domain-verification=dOLNWQ6sTftvfDnosc2HzaPlo9Fq2JKvoTNk0TrDuQdAoJlCqcvFEumPwWJgHVfn\"",
                "\"amazonses:kvjwShx2VuYQZKM31gjyJ9z5IWLmFmkF2BSfMHV5j2I=\"",
                "\"google-site-verification=VTUhJp3AMqjMfqUIY6tdlBsNKZLr-E_D0oN0Z96EW_E\"",
                "\"iContact1560489\""
            ],
            "NS": [
                "dns-auth-01.oit.duke.edu.",
                "dns-nc1-01.oit.duke.edu.",
                "dns-auth-02.oit.duke.edu."
            ],
            "SOA": [
                "dns-auth-01.oit.duke.edu. datacom-hostmaster.duke.edu. 755460798 1200 180 1209600 3600"
            ],
            "CAA": [],
            "DS": [],
            "DNSKEY": [],
            "RRSIG": [],
            "NSEC": [],
            "NSEC3": [],
            "SRV": [],
            "NAPTR": [],
            "TLSA": [],
            "SSHFP": []
        },
        "ipv4": [
            "152.3.72.243",
            "152.3.70.87"
        ],
        "ipv6": []
    },
    "mail": {
        "spf": "v=spf1 include:%{i}._ip.%{h}._ehlo.%{d}._spf.vali.email ~all",
        "dmarc": "v=DMARC1; p=quarantine; pct=100; adkim=r; aspf=r; rua=mailto:dmarc_agg@vali.email,mailto:dmarc-rua@duke.edu",
        "dkim_selector": "selector1",
        "dkim_host": "selector1._domainkey.duke.edu",
        "dkim": "v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEApd4LlLyegDg0rzqjs6M7VTlguOHB5D8YH2IPYpoqzmQfjYpZ0sc/S/v/mXNSdcLti2h8KRLUqZumjwdArVlyp5PWdUtHtsQ8SqZ052lw90vQr5R/j3rbHaaVEW0GZpdLFr1mqeXJorkRhEuxCpHO/m6mKmA7x4Sn6Lw6oblFhzUTRWWluUjw5TLrcUf3QXpbgef1f67FBS3YSic8uatNvOTtkVt1MUdcZPR9B4FcaKFEVtMNy+mePg9td2X+MBn4MdXEQLMWeiaIqwy/e0KLVrFFLDBMrYATmkxI8ni+jRN/EtS53zXnd53AM/L871DgsHrv/JzSAO0ltJUxwy8SSQIDAQAB;",
        "spf_analysis": {
            "valid": true,
            "lookups": 1,
            "final": "~all",
            "message": "Within the estimated limit"
        },
        "dmarc_analysis": {
            "valid": true,
            "policy": "quarantine"
        },
        "bimi": "",
        "mta_sts": "",
        "tls_rpt": ""
    },
    "advanced": {
        "ptr": "www-duke-fitz.oit.duke.edu",
        "propagation": {
            "consistent": true,
            "results": [
                {
                    "provider": "Google",
                    "server": "8.8.8.8",
                    "result": [
                        "152.3.70.87",
                        "152.3.72.243"
                    ],
                    "time_ms": 34.66
                },
                {
                    "provider": "Cloudflare",
                    "server": "1.1.1.1",
                    "result": [
                        "152.3.70.87",
                        "152.3.72.243"
                    ],
                    "time_ms": 56.69
                },
                {
                    "provider": "Quad9",
                    "server": "9.9.9.9",
                    "result": [
                        "152.3.70.87",
                        "152.3.72.243"
                    ],
                    "time_ms": 61.68
                },
                {
                    "provider": "OpenDNS",
                    "server": "208.67.222.222",
                    "result": [
                        "152.3.70.87",
                        "152.3.72.243"
                    ],
                    "time_ms": 109.39
                },
                {
                    "provider": "AdGuard",
                    "server": "94.140.14.14",
                    "result": [
                        "152.3.70.87",
                        "152.3.72.243"
                    ],
                    "time_ms": 89.52
                }
            ]
        }
    },
    "ssl": {
        "available": true,
        "issuer": "Internet2",
        "subject": "duke.edu",
        "valid_from": "2026-04-21T19:00:00-05:00",
        "valid_to": "2026-11-06T17:59:59-06:00",
        "days_remaining": 90,
        "san": [
            "duke.edu",
            "www.duke.edu"
        ],
        "protocol": "TLSv1.3",
        "cipher": "TLS_AES_256_GCM_SHA384"
    },
    "http": {
        "url": "https://www.duke.edu/",
        "status": "HTTP/1.1 200 OK",
        "http_version": "2",
        "headers": {
            "date": "Sat, 08 Aug 2026 23:49:13 GMT",
            "server": "Apache",
            "location": "https://www.duke.edu/",
            "connection": "close",
            "content-type": "text/html",
            "last-modified": "Wed, 22 Jul 2026 17:34:46 GMT",
            "etag": "\"44b95-657368e35b980\"",
            "accept-ranges": "bytes",
            "content-length": "281493",
            "vary": "Accept-Encoding"
        },
        "security_checks": {
            "strict-transport-security": false,
            "content-security-policy": false,
            "x-content-type-options": false,
            "x-frame-options": false,
            "referrer-policy": false,
            "permissions-policy": false,
            "cross-origin-opener-policy": false,
            "cross-origin-embedder-policy": false,
            "cross-origin-resource-policy": false
        },
        "server": "Apache",
        "powered_by": ""
    },
    "webpage": {
        "url": "https://www.duke.edu/",
        "title": "Duke University - Fueled by creativity, informed by scholarship",
        "description": "Fueled by creativity, informed by scholarship",
        "success": true,
        "error": "",
        "status": 206
    },
    "network": {
        "152.3.72.243": {
            "success": false,
            "country": "",
            "region": "",
            "city": "",
            "asn": "",
            "organization": "",
            "isp": ""
        },
        "152.3.70.87": {
            "success": false,
            "country": "",
            "region": "",
            "city": "",
            "asn": "",
            "organization": "",
            "isp": ""
        }
    },
    "smtp": {
        "host": "duke-edu.mail.protection.outlook.com",
        "ports": [
            {
                "port": 25,
                "open": false,
                "time_ms": 27,
                "banner": "",
                "error": "Network is unreachable"
            },
            {
                "port": 465,
                "open": false,
                "time_ms": 4044.3,
                "banner": "",
                "error": "Connection timed out"
            },
            {
                "port": 587,
                "open": false,
                "time_ms": 4019.8,
                "banner": "",
                "error": "Connection timed out"
            }
        ]
    },
    "visitor": {
        "ip": "216.73.217.62",
        "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": 152.45
}