{
    "ok": true,
    "domain": "mahidol.ac.th",
    "generated_at": "2026-08-10T10:23:04-05:00",
    "cache": {
        "hit": true,
        "ttl": 0
    },
    "score": {
        "total": 77,
        "label": "Good",
        "categories": {
            "dns": 85,
            "mail": 90,
            "security": 65,
            "network": 100,
            "availability": 60
        },
        "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": 10,
                "lost_points": 0,
                "detail": "2 IPv6 address(es) detected."
            },
            {
                "category": "dns",
                "title": "Name server redundancy",
                "max_points": 20,
                "earned_points": 20,
                "lost_points": 0,
                "detail": "6 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": 0,
                "lost_points": 5,
                "detail": "Certificate authority restriction."
            },
            {
                "category": "dns",
                "title": "DNS propagation",
                "max_points": 10,
                "earned_points": 0,
                "lost_points": 10,
                "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": "137 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: a23-211-255-66.deploy.static.akamaitechnologies.com"
            },
            {
                "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": 0,
                "lost_points": 40,
                "detail": "HTTP/2 403 "
            },
            {
                "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": "ok",
                "title": "IPv6 (AAAA)",
                "detail": "2 IPv6 address(es) detected.",
                "category": "dns",
                "max_points": 10,
                "earned_points": 10,
                "lost_points": 0
            },
            {
                "level": "ok",
                "title": "Name server redundancy",
                "detail": "6 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": "error",
                "title": "CAA policy",
                "detail": "Certificate authority restriction.",
                "category": "dns",
                "max_points": 5,
                "earned_points": 0,
                "lost_points": 5
            },
            {
                "level": "error",
                "title": "DNS propagation",
                "detail": "Agreement between public resolvers.",
                "category": "dns",
                "max_points": 10,
                "earned_points": 0,
                "lost_points": 10
            },
            {
                "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": "137 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: a23-211-255-66.deploy.static.akamaitechnologies.com",
                "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": "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": "error",
                "title": "HTTP response",
                "detail": "HTTP/2 403 ",
                "category": "availability",
                "max_points": 40,
                "earned_points": 0,
                "lost_points": 40
            },
            {
                "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": [
                "23.211.255.66",
                "23.211.255.33"
            ],
            "AAAA": [
                "2600:1407:7400:3d::17d4:6ef",
                "2600:1407:7400:3d::17d4:6e8"
            ],
            "CNAME": [],
            "MX": [
                "5 smtp.google.com."
            ],
            "TXT": [
                "\"lqapdg9a3omfgvopapoeni3can\"",
                "\"v=spf1 ip4:202.28.138.1 ip4:202.28.148.1 ip4:202.28.161.0/24 ip4:202.28.153.0/24 ip6:2001:3c8:2707:10a2::105 ip6:2001:3C8:1202:40A2::105 include:spf.protection.outlook.com include:_spf.google.com ~all\"",
                "\"Foxit-domain-verification=148bfc7ce2d896afb623476fd0837360\"",
                "\"oqsbl2q20fvnp0v5gcdn8m8rv7\"",
                "\"scnqOoQkaTgznLv+CcZDEXo4nPFqS1RClYn2O3aExPBR/aq1rc9h3Gq2TkvCaSoMdK6xyR5cZoHc24EcWaiz/A==\"",
                "\"adobe-idp-site-verification=a0d1f15c6af794c4eb3c9ff3d7abb56fd644c861c0c821a372d7cf463db3fb37\"",
                "\"google-site-verification=XaSZ4e4rcs-sU4i4J9rtqxGAoFzLcd8x7I_Iph0nDlQ\"",
                "\"M-WSkuQ7Jd1ZL_gUVUB0DBv6pQKnHkmNV_r9wGvwIds\"",
                "\"google-site-verification=SOE1_v2ea7BKr9dOTTSKp4Gnw7O_ktdyYPQbmpDaOG4\"",
                "\"7saje6n6uvc00o35nlk37u5p3j\"",
                "\"Pajtpi5qX1Xs0LUtaX34lLPXQv85PpMBRBZFPiY-it4\"",
                "\"7wX0LsqdbwvrFnNEn8qMCT7hodkeIb-dYtv-YdqyESE\"",
                "\"google-site-verification=qulMXaQrM2p6u75zsO3PWEIJSQUnHG-nFSrCW9e8cYU\"",
                "\"pjr06bpmf4bmt6s0q4yf15341f63hw8x\"",
                "\"U2Kl0QcHUl3RbsE-PDZb0dxFTZP-ofdqSUBf-8E-IwM\"",
                "\"cisco-ci-domain-verification=7f14c2e1cb1e32f5e839ef85a634b8dd5160f73e74c2a6df1d3b7070981a061\"",
                "\"google-gws-recovery-domain-verification=56775438\"",
                "\"uUnEfse82udZFX5Hi-IiBYEqRytMsX7tqxs7tWZSdSU\"",
                "\"kpk24elvcgrbp65s5c2418m8si\"",
                "\"MS=ms88050012\"",
                "\"63MBB_FFZjIPCDgr1N7QenV1u-t6EDNODOJxMLYofy4\""
            ],
            "NS": [
                "a22-67.akam.net.",
                "a5-67.akam.net.",
                "a11-64.akam.net.",
                "a8-64.akam.net.",
                "a1-116.akam.net.",
                "a10-64.akam.net."
            ],
            "SOA": [
                "a1-116.akam.net. dircopit.mahidol.ac.th. 2025112196 3600 600 604800 300"
            ],
            "CAA": [],
            "DS": [
                "20223 13 2 6B823E2735A20F41F7FF1DAED5582B9BADC764190325C1455C00735C 153A8A38"
            ],
            "DNSKEY": [
                "256 3 13 GLHr7bICHu4ZTAm6CuoZxy5zYAsMpAEYxd1GmtcDv6l/C7a3Yqp4o5CE gwllNIcdJdoEIXHkZq1gHJ6RSS6bqA==",
                "257 3 13 jrEGwi+CMpdg0rtVwsfMEYYRutuSKV3GsGLE3fTqlSvCAq4HacQgGUV1 Rw2XNW5qLaWRg5g5j8pWnsKXTiadmg==",
                "256 3 13 vcajXErHLHO5ub3/ZwQ5TdHVJaAdc+Lqn/wHq/sfmle58Gto1A6v2cO7 28HoJsm4bEfpUHwSEmpWH/qcJhb4Zw=="
            ],
            "RRSIG": [
                "SOA 13 3 300 20260812182502 20260809172502 22455 mahidol.ac.th. JxFkMMjWus0inXgiv1PZmsWkM9Qiu01l605lGkGYHuef7SfmzJ6G9xLx ZPEK/WnGPYRFgMTFCfmXeiG49bEj7g==",
                "NS 13 3 300 20260812182502 20260809172502 22455 mahidol.ac.th. CTyyhQRPVM2PUnaEoARn7MpHD6xwin+XrYyDKdK2+CwbwyLntQJqlw5v RB66VpBnqaQiKWK1qKauopfM52ZV4g==",
                "DS 8 3 7200 20260824020355 20260809022002 19308 ac.th. RpWRZTJJPFXAQxvCmPGf7yWTcCp6f9MQNhHhxGBpYo/o0kR0YkCFFJ+T g7bjrUDkLWDzlxzvOV245oZkfXI2bqnMB9xnuoPpwlozbfZ4BWk8eONV 374XPahW4FVbAOJuYvUMQU79XXDVS6jMRd3x2Eg+Xt9Lv8uU/yOjYPjN N/k="
            ],
            "NSEC": [],
            "NSEC3": [],
            "SRV": [],
            "NAPTR": [],
            "TLSA": [],
            "SSHFP": []
        },
        "ipv4": [
            "23.211.255.66",
            "23.211.255.33"
        ],
        "ipv6": [
            "2600:1407:7400:3d::17d4:6ef",
            "2600:1407:7400:3d::17d4:6e8"
        ]
    },
    "mail": {
        "spf": "v=spf1 ip4:202.28.138.1 ip4:202.28.148.1 ip4:202.28.161.0/24 ip4:202.28.153.0/24 ip6:2001:3c8:2707:10a2::105 ip6:2001:3C8:1202:40A2::105 include:spf.protection.outlook.com include:_spf.google.com ~all",
        "dmarc": "v=DMARC1; p=reject; sp=none; rua=mailto:noc@mahidol.ac.th; ruf=mailto:noc@mahidol.ac.th; rf=afrf; pct=100; ri=86400;",
        "dkim_selector": "google",
        "dkim_host": "google._domainkey.mahidol.ac.th",
        "dkim": "v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCb4Kp10HqUU5SyePWvbRxweeZ1ZMsEvC+Eac+6iyqKWPUn2nve+f5qqMqxEPcb7oRSj2R+6VlOq2SJcKhV2cT2xx5rjZv5vld4Y46VvpOQBlmMr8721qfKREcyBrf1fJwLEmYjGMwirGdPnrsER0jHpGsCzJ91IniqtUe/clguCwIDAQAB",
        "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": "a23-211-255-66.deploy.static.akamaitechnologies.com",
        "propagation": {
            "consistent": false,
            "results": [
                {
                    "provider": "Google",
                    "server": "8.8.8.8",
                    "result": [
                        "23.211.255.33",
                        "23.211.255.66"
                    ],
                    "time_ms": 53.13
                },
                {
                    "provider": "Cloudflare",
                    "server": "1.1.1.1",
                    "result": [
                        "23.216.5.136",
                        "23.216.5.151"
                    ],
                    "time_ms": 391.06
                },
                {
                    "provider": "Quad9",
                    "server": "9.9.9.9",
                    "result": [
                        "23.55.236.138",
                        "23.55.236.141"
                    ],
                    "time_ms": 62.33
                },
                {
                    "provider": "OpenDNS",
                    "server": "208.67.222.222",
                    "result": [
                        "23.211.255.33",
                        "23.211.255.66"
                    ],
                    "time_ms": 204.25
                },
                {
                    "provider": "AdGuard",
                    "server": "94.140.14.14",
                    "result": [
                        "23.49.251.200",
                        "23.49.251.202"
                    ],
                    "time_ms": 82.29
                }
            ]
        }
    },
    "ssl": {
        "available": true,
        "issuer": "DigiCert Inc",
        "subject": "*.mahidol.ac.th",
        "valid_from": "2025-12-25T18:00:00-06:00",
        "valid_to": "2026-12-25T17:59:59-06:00",
        "days_remaining": 137,
        "san": [
            "*.mahidol.ac.th",
            "mahidol.ac.th"
        ],
        "protocol": "TLSv1.3",
        "cipher": "TLS_AES_256_GCM_SHA384"
    },
    "http": {
        "url": "https://mahidol.ac.th/",
        "status": "HTTP/2 403 ",
        "http_version": "3",
        "headers": {
            "mime-version": "1.0",
            "content-type": "text/html",
            "content-length": "363",
            "expires": "Mon, 10 Aug 2026 15:22:54 GMT",
            "cache-control": "max-age=0, no-cache, no-store",
            "pragma": "no-cache",
            "date": "Mon, 10 Aug 2026 15:22:54 GMT",
            "alt-svc": "h3=\":443\"; ma=93600"
        },
        "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": "",
        "powered_by": ""
    },
    "webpage": {
        "url": "https://mahidol.ac.th/",
        "title": "Mahidol University",
        "description": "Mahidol University (MU), an autonomous research institution in Thailand, had its origin in the establishment of Siriraj Hospital in 1888. Mahidol is among Thailand’s most prestigious universities with highly competitive entrance examinations.",
        "success": true,
        "error": "",
        "status": 206
    },
    "network": {
        "23.211.255.66": {
            "success": false,
            "country": "",
            "region": "",
            "city": "",
            "asn": "",
            "organization": "",
            "isp": ""
        },
        "23.211.255.33": {
            "success": false,
            "country": "",
            "region": "",
            "city": "",
            "asn": "",
            "organization": "",
            "isp": ""
        }
    },
    "smtp": {
        "host": "smtp.google.com",
        "ports": [
            {
                "port": 25,
                "open": false,
                "time_ms": 53.5,
                "banner": "220 mx.google.com ESMTP 586e51a60fabf-459f206df83si8548191fac.257 - gsmtp",
                "error": "No connection"
            },
            {
                "port": 465,
                "open": false,
                "time_ms": 4020.2,
                "banner": "",
                "error": "Connection timed out"
            },
            {
                "port": 587,
                "open": false,
                "time_ms": 4013.9,
                "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": 110.21
}