{
    "ok": true,
    "domain": "uni-marburg.de",
    "generated_at": "2026-08-09T11:02:26-05:00",
    "cache": {
        "hit": true,
        "ttl": 0
    },
    "score": {
        "total": 83,
        "label": "Good",
        "categories": {
            "dns": 70,
            "mail": 90,
            "security": 88,
            "network": 50,
            "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": "1 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": "5 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": "3 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": "182 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": 23,
                "lost_points": 12,
                "detail": "6 of 9 evaluated headers detected."
            },
            {
                "category": "network",
                "title": "PTR reverse DNS",
                "max_points": 30,
                "earned_points": 30,
                "lost_points": 0,
                "detail": "PTR: vhrz2529.HRZ.Uni-Marburg.DE"
            },
            {
                "category": "network",
                "title": "IPv4 diversity",
                "max_points": 35,
                "earned_points": 20,
                "lost_points": 15,
                "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/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": "1 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": "5 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": "3 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": "182 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": "6 of 9 evaluated headers detected.",
                "category": "security",
                "max_points": 35,
                "earned_points": 23,
                "lost_points": 12
            },
            {
                "level": "ok",
                "title": "PTR reverse DNS",
                "detail": "PTR: vhrz2529.HRZ.Uni-Marburg.DE",
                "category": "network",
                "max_points": 30,
                "earned_points": 30,
                "lost_points": 0
            },
            {
                "level": "warning",
                "title": "IPv4 diversity",
                "detail": "Two or more IPv4 addresses receive full points.",
                "category": "network",
                "max_points": 35,
                "earned_points": 20,
                "lost_points": 15
            },
            {
                "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/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": [
                "137.248.1.32"
            ],
            "AAAA": [],
            "CNAME": [],
            "MX": [
                "10 b2111.mx.srv.dfn.de.",
                "10 c2111.mx.srv.dfn.de.",
                "10 a2111.mx.srv.dfn.de."
            ],
            "TXT": [
                "\"v=spf1 include:_spf.uni-marburg.de include:_spf.plan.io ~all\"",
                "\"brevo-code:8f4aeb3ec6752842e560cc22add86ff0\"",
                "\"_telesec-domain-validation=341660_2025-10-14_xEcNUPL56MiQiAv3lB2BXPpLgJVJjWzhqT4nxdzYOOg3cnP7lH\"",
                "\"google-site-verification=dPK5zVQ_-_Kj4Lto7ZrEEsah0_Sp6ovYiQ0lpHDecjg\"",
                "\"adobe-idp-site-verification=b3e4658a43e3581cbd3d8000f218c36b3f5cbc0597144eda523de73a4dbf7788\""
            ],
            "NS": [
                "DNSp.uni-marburg.de.",
                "DNSs2.uni-marburg.de.",
                "dns-1.dfn.de.",
                "dns-2.dfn.de.",
                "DNSs1.uni-marburg.de."
            ],
            "SOA": [
                "DNSp.uni-marburg.de. umrnet-team.HRZ.uni-marburg.de. 2026080905 18000 1800 3600000 86400"
            ],
            "CAA": [],
            "DS": [],
            "DNSKEY": [],
            "RRSIG": [],
            "NSEC": [],
            "NSEC3": [],
            "SRV": [],
            "NAPTR": [],
            "TLSA": [],
            "SSHFP": []
        },
        "ipv4": [
            "137.248.1.32"
        ],
        "ipv6": []
    },
    "mail": {
        "spf": "v=spf1 include:_spf.uni-marburg.de include:_spf.plan.io ~all",
        "dmarc": "v=DMARC1; p=quarantine; rua=mailto:dmarc-report@hrz.uni-marburg.de; sp=quarantine; ri=86400",
        "dkim_selector": "dkim",
        "dkim_host": "dkim._domainkey.uni-marburg.de",
        "dkim": "v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDIKAcsXViFZPIzhUeWj7DZLUnHnwyJYW14wwdGmeyEiQ2KgrROq+isMyJAfmoM6D/u5kq6p5IzKO0F6ifb5478hTfuPQ6sMjDM8nvGToRgT4D3TaKo0KT15KQpWcCUDcHwKriMpju6NMTUi7zerOuZ8EFbJRvJknEDwLTCdINwcQIDAQAB",
        "spf_analysis": {
            "valid": true,
            "lookups": 2,
            "final": "~all",
            "message": "Within the estimated limit"
        },
        "dmarc_analysis": {
            "valid": true,
            "policy": "quarantine"
        },
        "bimi": "",
        "mta_sts": "",
        "tls_rpt": ""
    },
    "advanced": {
        "ptr": "vhrz2529.HRZ.Uni-Marburg.DE",
        "propagation": {
            "consistent": true,
            "results": [
                {
                    "provider": "Google",
                    "server": "8.8.8.8",
                    "result": [
                        "137.248.1.32"
                    ],
                    "time_ms": 61.22
                },
                {
                    "provider": "Cloudflare",
                    "server": "1.1.1.1",
                    "result": [
                        "137.248.1.32"
                    ],
                    "time_ms": 290.36
                },
                {
                    "provider": "Quad9",
                    "server": "9.9.9.9",
                    "result": [
                        "137.248.1.32"
                    ],
                    "time_ms": 33.59
                },
                {
                    "provider": "OpenDNS",
                    "server": "208.67.222.222",
                    "result": [
                        "137.248.1.32"
                    ],
                    "time_ms": 850.63
                },
                {
                    "provider": "AdGuard",
                    "server": "94.140.14.14",
                    "result": [
                        "137.248.1.32"
                    ],
                    "time_ms": 340.99
                }
            ]
        }
    },
    "ssl": {
        "available": true,
        "issuer": "Hellenic Academic and Research Institutions CA",
        "subject": "www.uni-marburg.de",
        "valid_from": "2026-07-23T13:40:06-05:00",
        "valid_to": "2027-02-07T12:40:05-06:00",
        "days_remaining": 182,
        "san": [
            "www.uni-marburg.de",
            "uni-marburg.de",
            "www2.hrz.uni-marburg.de"
        ],
        "protocol": "TLSv1.3",
        "cipher": "TLS_AES_256_GCM_SHA384"
    },
    "http": {
        "url": "https://www.uni-marburg.de/de",
        "status": "HTTP/2 200 ",
        "http_version": "3",
        "headers": {
            "server": "nginx",
            "date": "Sun, 09 Aug 2026 16:02:16 GMT",
            "content-type": "text/html;charset=utf-8",
            "content-length": "133953",
            "location": "https://www.uni-marburg.de/de",
            "strict-transport-security": "max-age=15768000;",
            "content-security-policy": "default-src 'self' https://www.youtube.com https://www.youtube-nocookie.com https://opencast.uni-marburg.de; img-src * data:; style-src 'self' 'unsafe-inline' ; script-src live.hrz.uni-marburg.de 'self' 'unsafe-inline' 'unsafe-eval' https://www.youtube.com https://www.youtube-nocookie.com https://webtrack.uni-marburg.de ; child-src 'self' https://www.youtube.com https://www.youtube-nocookie.com https://youtu.be https://webtrack.uni-marburg.de ; font-src 'self' data:; connect-src 'self' https://www.youtube.com https://www.youtube-nocookie.com https://webtrack.uni-marburg.de ; frame-ancestors 'self' ;",
            "x-content-type-options": "nosniff",
            "referrer-policy": "strict-origin-when-cross-origin",
            "permissions-policy": "accelerometer=(),ambient-light-sensor=(),autoplay=(),battery=(),camera=(),cross-origin-isolated=(),display-capture=(),document-domain=(),encrypted-media=(),execution-while-not-rendered=(),execution-while-out-of-viewport=(),fullscreen=(self \"https://www.youtube.com\" \"https://www.youtube-nocookie.com\"),geolocation=(),gyroscope=(),magnetometer=(),microphone=(),midi=(),navigation-override=(),payment=(),picture-in-picture=(self \"https://www.youtube.com\" \"https://www.youtube-nocookie.com\"),publickey-credentials-get=(),screen-wake-lock=(),sync-xhr=(),usb=(),web-share=(),xr-spatial-tracking=()",
            "x-permitted-cross-domain-policies": "none",
            "cache-control": "max-age=0, s-maxage=3600, must-revalidate",
            "content-language": "de",
            "x-frame-options": "SAMEORIGIN",
            "age": "935",
            "accept-ranges": "bytes"
        },
        "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": false,
            "cross-origin-embedder-policy": false,
            "cross-origin-resource-policy": false
        },
        "server": "nginx",
        "powered_by": ""
    },
    "webpage": {
        "url": "https://www.uni-marburg.de/de",
        "title": "Philipps-Universität Marburg",
        "description": "Herzlich willkommen an der Philipps-Universität Marburg! Die Philipps-Universität, 1527 gegründet, gehört zu den traditionsreichsten Hochschulen Deutschlands. Die rund 21.000 Studierenden machen mehr als ein Viertel der Marburger Bevölkerung aus, und neben einem naturwissenschaftlichen Campus außerhalb des Zentrums verteilen sich viele Institute und Forschungseinrichtungen über die gesamte Innenstadt. Noch heute gilt deshalb das literarische Bonmot: „Andere Städte haben eine Universität, Marburg ist eine.“",
        "success": true,
        "error": "",
        "status": 206
    },
    "network": {
        "137.248.1.32": {
            "success": false,
            "country": "",
            "region": "",
            "city": "",
            "asn": "",
            "organization": "",
            "isp": ""
        }
    },
    "smtp": {
        "host": "b2111.mx.srv.dfn.de",
        "ports": [
            {
                "port": 25,
                "open": false,
                "time_ms": 124.8,
                "banner": "",
                "error": "Connection refused"
            },
            {
                "port": 465,
                "open": false,
                "time_ms": 4020.9,
                "banner": "",
                "error": "Connection timed out"
            },
            {
                "port": 587,
                "open": false,
                "time_ms": 4021.2,
                "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": 84.76
}