|
1 | 1 | if PACKAGE_coredns |
2 | 2 |
|
3 | | -config COREDNS_PLUGIN_GEOIP |
4 | | - bool "GeoIP plugin" |
5 | | - default n |
| 3 | +comment "Transport & Security" |
6 | 4 |
|
7 | 5 | config COREDNS_PLUGIN_TLS |
8 | 6 | bool "TLS plugin" |
9 | 7 | default y |
| 8 | + help |
| 9 | + Enable TLS (DNS-over-TLS) listener support. |
10 | 10 |
|
11 | 11 | config COREDNS_PLUGIN_QUIC |
12 | | - bool "QUIC plugin" |
| 12 | + bool "QUIC plugin (DNS-over-QUIC)" |
13 | 13 | default n |
| 14 | + help |
| 15 | + Enable DNS-over-QUIC (DoQ) listener support. Requires TLS certificates. |
14 | 16 |
|
15 | | -config COREDNS_PLUGIN_ROUTE53 |
16 | | - bool "Route53 plugin" |
| 17 | +config COREDNS_PLUGIN_GRPC |
| 18 | + bool "gRPC plugin" |
17 | 19 | default n |
| 20 | + help |
| 21 | + Forward or receive DNS messages over gRPC. |
18 | 22 |
|
19 | | -config COREDNS_PLUGIN_AZURE |
20 | | - bool "Azure plugin" |
| 23 | +config COREDNS_PLUGIN_PROXYPROTO |
| 24 | + bool "Proxy Protocol plugin" |
21 | 25 | default n |
| 26 | + help |
| 27 | + Add PROXY protocol (v1/v2) support to preserve original client IPs |
| 28 | + when CoreDNS sits behind a load balancer or reverse proxy. |
22 | 29 |
|
23 | | -config COREDNS_PLUGIN_CLOUDDNS |
24 | | - bool "CloudDNS plugin" |
| 30 | +comment "Service Discovery Backends" |
| 31 | + |
| 32 | +config COREDNS_PLUGIN_KUBERNETES |
| 33 | + bool "Kubernetes plugin" |
25 | 34 | default n |
| 35 | + help |
| 36 | + Serve DNS records for Kubernetes services and pods. |
| 37 | + Only useful when running inside a Kubernetes cluster. |
26 | 38 |
|
27 | 39 | config COREDNS_PLUGIN_K8S_EXTERNAL |
28 | 40 | bool "k8s_external plugin" |
29 | 41 | default n |
30 | | - |
31 | | -config COREDNS_PLUGIN_KUBERNETES |
32 | | - bool "Kubernetes plugin" |
33 | | - default n |
| 42 | + help |
| 43 | + Serve DNS records for external-facing Kubernetes services |
| 44 | + (e.g. LoadBalancer / ExternalName). |
34 | 45 |
|
35 | 46 | config COREDNS_PLUGIN_ETCD |
36 | 47 | bool "Etcd plugin" |
37 | 48 | default n |
| 49 | + help |
| 50 | + Serve DNS records from an etcd v3 datastore (SkyDNS-compatible). |
38 | 51 |
|
39 | | -config COREDNS_PLUGIN_GRPC |
40 | | - bool "gRPC plugin" |
| 52 | +config COREDNS_PLUGIN_NOMAD |
| 53 | + bool "Nomad plugin" |
| 54 | + default n |
| 55 | + help |
| 56 | + Serve DNS records from HashiCorp Nomad service registrations. |
| 57 | + |
| 58 | +comment "Cloud DNS Backends" |
| 59 | + |
| 60 | +config COREDNS_PLUGIN_ROUTE53 |
| 61 | + bool "Route53 plugin (AWS)" |
41 | 62 | default n |
| 63 | + help |
| 64 | + Serve DNS records from AWS Route 53 hosted zones. |
| 65 | + Adds significant binary size due to AWS SDK. |
42 | 66 |
|
43 | | -config COREDNS_PLUGIN_ON |
44 | | - bool "On event plugin" |
| 67 | +config COREDNS_PLUGIN_AZURE |
| 68 | + bool "Azure DNS plugin" |
45 | 69 | default n |
| 70 | + help |
| 71 | + Serve DNS records from Azure DNS hosted zones. |
| 72 | + Adds significant binary size due to Azure SDK. |
46 | 73 |
|
47 | | -config COREDNS_PLUGIN_NOMAD |
48 | | - bool "Nomad plugin" |
| 74 | +config COREDNS_PLUGIN_CLOUDDNS |
| 75 | + bool "Cloud DNS plugin (GCP)" |
49 | 76 | default n |
| 77 | + help |
| 78 | + Serve DNS records from Google Cloud DNS managed zones. |
| 79 | + Adds significant binary size due to GCP SDK. |
| 80 | + |
| 81 | +comment "Extra Built-in Plugins" |
| 82 | + |
| 83 | +config COREDNS_PLUGIN_GEOIP |
| 84 | + bool "GeoIP plugin" |
| 85 | + default n |
| 86 | + help |
| 87 | + Add GeoIP-based metadata to requests (requires MaxMind database). |
| 88 | + |
| 89 | +config COREDNS_PLUGIN_ON |
| 90 | + bool "On-event plugin" |
| 91 | + default n |
| 92 | + help |
| 93 | + Execute a command on server start/shutdown events. |
| 94 | + |
| 95 | +comment "Third-party Plugins" |
50 | 96 |
|
51 | 97 | config COREDNS_PLUGIN_WGSD |
52 | 98 | bool "WireGuard Service Discovery plugin" |
53 | 99 | default y if PACKAGE_wgsd-coredns |
54 | 100 | select COREDNS_REQUIRE_GO_GET |
55 | 101 | help |
56 | | - wgsd is a CoreDNS plugin that serves WireGuard peer information via DNS-SD (RFC6763) semantics. |
57 | | - This enables use cases such as: |
58 | | - |
59 | | - - Building a mesh of WireGuard peers from a central registry |
60 | | - - Dynamic discovery of WireGuard Endpoint addressing (both IP address and port number) |
61 | | - - NAT-to-NAT WireGuard connectivity where UDP hole punching is supported. |
| 102 | + wgsd serves WireGuard peer information via DNS-SD (RFC 6763) |
| 103 | + semantics. Use cases include: |
| 104 | + - Building a mesh of WireGuard peers from a central registry |
| 105 | + - Dynamic discovery of WireGuard endpoint addressing |
| 106 | + - NAT-to-NAT connectivity where UDP hole punching is supported |
62 | 107 |
|
63 | 108 | config COREDNS_PLUGIN_NETBOX |
64 | 109 | bool "Netbox plugin" |
65 | 110 | default n |
66 | 111 | select COREDNS_REQUIRE_GO_GET |
| 112 | + help |
| 113 | + Serve DNS records from a NetBox IPAM/DCIM instance. |
67 | 114 |
|
68 | 115 | config COREDNS_PLUGIN_FANOUT |
69 | 116 | bool "Fanout plugin" |
70 | 117 | default n |
71 | 118 | select COREDNS_REQUIRE_GO_GET |
| 119 | + help |
| 120 | + Forward DNS queries to multiple upstreams simultaneously and return |
| 121 | + the first successful response (race / fan-out strategy). |
72 | 122 |
|
73 | 123 | config COREDNS_PLUGIN_FINALIZE |
74 | 124 | bool "Finalize plugin" |
75 | 125 | default n |
76 | 126 | select COREDNS_REQUIRE_GO_GET |
| 127 | + help |
| 128 | + Ensure all CNAME chains in responses are fully resolved before |
| 129 | + sending the answer to the client. |
77 | 130 |
|
78 | 131 | config COREDNS_REQUIRE_GO_GET |
79 | 132 | bool |
80 | 133 | default n |
81 | 134 | help |
82 | | - Custom plugins require `go get ./...` to pull dependencies. |
| 135 | + Custom / third-party plugins require 'go get ./...' during build |
| 136 | + to pull their module dependencies. |
83 | 137 |
|
84 | 138 | endif |
0 commit comments