# DNS Filter¶

This extension may be referenced by the qualified name envoy.filters.udp_listener.dns_filter

Note

This extension is functional but has not had substantial production burn time, use only with this caveat.

This extension is intended to be robust against untrusted downstream traffic. It assumes that the upstream is trusted.

Warning

This API is work-in-progress and is subject to breaking changes.

DNS Filter configuration overview.

## config.filter.udp.dns_filter.v2alpha.DnsFilterConfig¶

[config.filter.udp.dns_filter.v2alpha.DnsFilterConfig proto]

Configuration for the DNS filter.

{
"stat_prefix": "...",
"server_config": "{...}"
}

stat_prefix

(string) The stat prefix used when emitting DNS filter statistics

server_config

(config.filter.udp.dns_filter.v2alpha.DnsFilterConfig.ServerContextConfig) Server context configuration

## config.filter.udp.dns_filter.v2alpha.DnsFilterConfig.ServerContextConfig¶

[config.filter.udp.dns_filter.v2alpha.DnsFilterConfig.ServerContextConfig proto]

This message contains the configuration for the Dns Filter operating in a server context. This message will contain the virtual hosts and associated addresses with which Envoy will respond to queries

{
"inline_dns_table": "{...}",
"external_dns_table": "{...}"
}

inline_dns_table

(data.dns.v2alpha.DnsTable) Load the configuration specified from the control plane

Precisely one of inline_dns_table, external_dns_table must be set.

external_dns_table

(core.DataSource) Seed the filter configuration from an external path. This source is a yaml formatted file that contains the DnsTable driving Envoy’s responses to DNS queries

Precisely one of inline_dns_table, external_dns_table must be set.