The acl plugin controls access to the DNS server based on the client’s IP address. It evaluates an ordered list of IP network rules and either allows the query to continue or returns a REFUSED response.
default action (allow or deny).client_ip. If client_ip is absent, the plugin defaults to 127.0.0.1 (and logs a warning).default (string, optional): allow or deny. Defaults to deny when omitted.rules (sequence of mappings, optional): list of rule objects with fields:
network (string): CIDR network (e.g., 192.168.0.0/16).action (string): allow or deny.Example:
plugins:
- tag: query_acl
type: query_acl
config:
default: deny
rules:
- network: 192.168.0.0/16
action: allow
- network: 10.0.0.0/8
action: allow
Notes:
allow-list mode by setting default: deny and listing allowed networks.deny-list mode by setting default: allow and listing blocked networks.AclAction (Allow/Deny) and evaluates using ipnet::IpNet.Deny the plugin creates a REFUSED DNS response and sets it in the request context.client_ip metadata with the correct remote address.