dns_filterv3

package
v1.33.0-20240426201503... Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: unknown License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var File_envoy_extensions_filters_udp_dns_filter_v3_dns_filter_proto protoreflect.FileDescriptor

Functions

This section is empty.

Types

type DnsFilterConfig

type DnsFilterConfig struct {

	// The stat prefix used when emitting DNS filter statistics
	StatPrefix string `protobuf:"bytes,1,opt,name=stat_prefix,json=statPrefix,proto3" json:"stat_prefix,omitempty"`
	// Server context configuration contains the data that the filter uses to respond
	// to DNS requests.
	ServerConfig *DnsFilterConfig_ServerContextConfig `protobuf:"bytes,2,opt,name=server_config,json=serverConfig,proto3" json:"server_config,omitempty"`
	// Client context configuration controls Envoy's behavior when it must use external
	// resolvers to answer a query. This object is optional and if omitted instructs
	// the filter to resolve queries from the data in the server_config
	ClientConfig *DnsFilterConfig_ClientContextConfig `protobuf:"bytes,3,opt,name=client_config,json=clientConfig,proto3" json:"client_config,omitempty"`
	// contains filtered or unexported fields
}

Configuration for the DNS filter.

func (*DnsFilterConfig) Descriptor deprecated

func (*DnsFilterConfig) Descriptor() ([]byte, []int)

Deprecated: Use DnsFilterConfig.ProtoReflect.Descriptor instead.

func (*DnsFilterConfig) GetClientConfig

func (*DnsFilterConfig) GetServerConfig

func (*DnsFilterConfig) GetStatPrefix

func (x *DnsFilterConfig) GetStatPrefix() string

func (*DnsFilterConfig) ProtoMessage

func (*DnsFilterConfig) ProtoMessage()

func (*DnsFilterConfig) ProtoReflect

func (x *DnsFilterConfig) ProtoReflect() protoreflect.Message

func (*DnsFilterConfig) Reset

func (x *DnsFilterConfig) Reset()

func (*DnsFilterConfig) String

func (x *DnsFilterConfig) String() string

type DnsFilterConfig_ClientContextConfig

type DnsFilterConfig_ClientContextConfig struct {

	// Sets the maximum time we will wait for the upstream query to complete
	// We allow 5s for the upstream resolution to complete, so the minimum
	// value here is 1. Note that the total latency for a failed query is the
	// number of retries multiplied by the resolver_timeout.
	ResolverTimeout *durationpb.Duration `protobuf:"bytes,1,opt,name=resolver_timeout,json=resolverTimeout,proto3" json:"resolver_timeout,omitempty"`
	// This field was used for `dns_resolution_config` in Envoy 1.19.0 and
	// 1.19.1.
	// Control planes that need to set this field for Envoy 1.19.0 and
	// 1.19.1 clients should fork the protobufs and change the field type
	// to `DnsResolutionConfig`.
	// Control planes that need to simultaneously support Envoy 1.18.x and
	// Envoy 1.19.x should avoid Envoy 1.19.0 and 1.19.1.
	//
	// [#not-implemented-hide:]
	//
	// Deprecated: Marked as deprecated in envoy/extensions/filters/udp/dns_filter/v3/dns_filter.proto.
	UpstreamResolvers []*v31.Address `protobuf:"bytes,2,rep,name=upstream_resolvers,json=upstreamResolvers,proto3" json:"upstream_resolvers,omitempty"`
	// DNS resolution configuration which includes the underlying dns resolver addresses and options.
	// This field is deprecated in favor of
	// :ref:`typed_dns_resolver_config <envoy_v3_api_field_extensions.filters.udp.dns_filter.v3.DnsFilterConfig.ClientContextConfig.typed_dns_resolver_config>`.
	//
	// Deprecated: Marked as deprecated in envoy/extensions/filters/udp/dns_filter/v3/dns_filter.proto.
	DnsResolutionConfig *v31.DnsResolutionConfig `protobuf:"bytes,5,opt,name=dns_resolution_config,json=dnsResolutionConfig,proto3" json:"dns_resolution_config,omitempty"`
	// DNS resolver type configuration extension. This extension can be used to configure c-ares, apple,
	// or any other DNS resolver types and the related parameters.
	// For example, an object of
	// :ref:`CaresDnsResolverConfig <envoy_v3_api_msg_extensions.network.dns_resolver.cares.v3.CaresDnsResolverConfig>`
	// can be packed into this “typed_dns_resolver_config“. This configuration replaces the
	// :ref:`dns_resolution_config <envoy_v3_api_field_extensions.filters.udp.dns_filter.v3.DnsFilterConfig.ClientContextConfig.dns_resolution_config>`
	// configuration.
	// During the transition period when both “dns_resolution_config“ and “typed_dns_resolver_config“ exists,
	// when “typed_dns_resolver_config“ is in place, Envoy will use it and ignore “dns_resolution_config“.
	// When “typed_dns_resolver_config“ is missing, the default behavior is in place.
	// [#extension-category: envoy.network.dns_resolver]
	TypedDnsResolverConfig *v31.TypedExtensionConfig `` /* 131-byte string literal not displayed */
	// Controls how many outstanding external lookup contexts the filter tracks.
	// The context structure allows the filter to respond to every query even if the external
	// resolution times out or is otherwise unsuccessful
	MaxPendingLookups uint64 `protobuf:"varint,3,opt,name=max_pending_lookups,json=maxPendingLookups,proto3" json:"max_pending_lookups,omitempty"`
	// contains filtered or unexported fields
}

This message contains the configuration for the DNS Filter operating in a client context. This message will contain the timeouts, retry, and forwarding configuration for Envoy to make DNS requests to other resolvers

[#next-free-field: 6]

func (*DnsFilterConfig_ClientContextConfig) Descriptor deprecated

func (*DnsFilterConfig_ClientContextConfig) Descriptor() ([]byte, []int)

Deprecated: Use DnsFilterConfig_ClientContextConfig.ProtoReflect.Descriptor instead.

func (*DnsFilterConfig_ClientContextConfig) GetDnsResolutionConfig deprecated

func (x *DnsFilterConfig_ClientContextConfig) GetDnsResolutionConfig() *v31.DnsResolutionConfig

Deprecated: Marked as deprecated in envoy/extensions/filters/udp/dns_filter/v3/dns_filter.proto.

func (*DnsFilterConfig_ClientContextConfig) GetMaxPendingLookups

func (x *DnsFilterConfig_ClientContextConfig) GetMaxPendingLookups() uint64

func (*DnsFilterConfig_ClientContextConfig) GetResolverTimeout

func (x *DnsFilterConfig_ClientContextConfig) GetResolverTimeout() *durationpb.Duration

func (*DnsFilterConfig_ClientContextConfig) GetTypedDnsResolverConfig

func (x *DnsFilterConfig_ClientContextConfig) GetTypedDnsResolverConfig() *v31.TypedExtensionConfig

func (*DnsFilterConfig_ClientContextConfig) GetUpstreamResolvers deprecated

func (x *DnsFilterConfig_ClientContextConfig) GetUpstreamResolvers() []*v31.Address

Deprecated: Marked as deprecated in envoy/extensions/filters/udp/dns_filter/v3/dns_filter.proto.

func (*DnsFilterConfig_ClientContextConfig) ProtoMessage

func (*DnsFilterConfig_ClientContextConfig) ProtoMessage()

func (*DnsFilterConfig_ClientContextConfig) ProtoReflect

func (*DnsFilterConfig_ClientContextConfig) Reset

func (*DnsFilterConfig_ClientContextConfig) String

type DnsFilterConfig_ServerContextConfig

type DnsFilterConfig_ServerContextConfig struct {

	// Types that are assignable to ConfigSource:
	//
	//	*DnsFilterConfig_ServerContextConfig_InlineDnsTable
	//	*DnsFilterConfig_ServerContextConfig_ExternalDnsTable
	ConfigSource isDnsFilterConfig_ServerContextConfig_ConfigSource `protobuf_oneof:"config_source"`
	// contains filtered or unexported fields
}

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

func (*DnsFilterConfig_ServerContextConfig) Descriptor deprecated

func (*DnsFilterConfig_ServerContextConfig) Descriptor() ([]byte, []int)

Deprecated: Use DnsFilterConfig_ServerContextConfig.ProtoReflect.Descriptor instead.

func (*DnsFilterConfig_ServerContextConfig) GetConfigSource

func (m *DnsFilterConfig_ServerContextConfig) GetConfigSource() isDnsFilterConfig_ServerContextConfig_ConfigSource

func (*DnsFilterConfig_ServerContextConfig) GetExternalDnsTable

func (x *DnsFilterConfig_ServerContextConfig) GetExternalDnsTable() *v31.DataSource

func (*DnsFilterConfig_ServerContextConfig) GetInlineDnsTable

func (x *DnsFilterConfig_ServerContextConfig) GetInlineDnsTable() *v3.DnsTable

func (*DnsFilterConfig_ServerContextConfig) ProtoMessage

func (*DnsFilterConfig_ServerContextConfig) ProtoMessage()

func (*DnsFilterConfig_ServerContextConfig) ProtoReflect

func (*DnsFilterConfig_ServerContextConfig) Reset

func (*DnsFilterConfig_ServerContextConfig) String

type DnsFilterConfig_ServerContextConfig_ExternalDnsTable

type DnsFilterConfig_ServerContextConfig_ExternalDnsTable struct {
	// 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
	ExternalDnsTable *v31.DataSource `protobuf:"bytes,2,opt,name=external_dns_table,json=externalDnsTable,proto3,oneof"`
}

type DnsFilterConfig_ServerContextConfig_InlineDnsTable

type DnsFilterConfig_ServerContextConfig_InlineDnsTable struct {
	// Load the configuration specified from the control plane
	InlineDnsTable *v3.DnsTable `protobuf:"bytes,1,opt,name=inline_dns_table,json=inlineDnsTable,proto3,oneof"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL