Skip to main content

IP intelligence

Dhal supports static IP controls and reputation checks.

Allow and block lists

{
"ip": {
"allow": ["127.0.0.1", "10.0.0.0/8"],
"block": ["203.0.113.0/24"]
}
}

CIDR matching supports IPv4 and IPv6.

IP reputation

{
"ip": {
"reputation": {
"enabled": true,
"provider": "abuseipdb",
"apiKeyEnv": "ABUSEIPDB_API_KEY",
"minScore": 75,
"cacheTtlSeconds": 86400,
"maxAgeInDays": 30,
"mode": "async",
"timeoutMs": 750
}
}
}

Use async reputation mode for normal production traffic. Avoid remote calls on every hot-path request.

Trust proxy

Only enable trustProxy when the app is behind a trusted proxy/CDN that sets forwarding headers correctly.

{
"trustProxy": true
}

Run diagnostics:

npx dhal doctor