1# Copyright (c) 2016 Intel Corporation 2# SPDX-License-Identifier: Apache-2.0 3 4config DNS_RESOLVER 5 bool "DNS resolver" 6 depends on NET_NATIVE 7 select CRC 8 help 9 This option enables the DNS client side support for Zephyr 10 11if DNS_RESOLVER 12 13config MDNS_RESOLVER 14 bool "MDNS support" 15 help 16 This option enables multicast DNS client side support. 17 See RFC 6762 for details. 18 19config LLMNR_RESOLVER 20 bool "LLMNR support" 21 help 22 This option enables link local multicast name resolution client side 23 support. See RFC 4795 for details. LLMNR is typically used by Windows 24 hosts. If you enable this option, then the DNS requests are ONLY sent 25 to LLMNR well known multicast address 224.0.0.252:5355 or 26 [ff02::1:3]:5355 and other DNS server addresses are ignored. 27 28 29config DNS_RESOLVER_ADDITIONAL_BUF_CTR 30 int "Additional DNS buffers" 31 default 0 32 help 33 Number of additional buffers available for the DNS resolver. 34 The DNS resolver requires at least one buffer. This option 35 enables additional buffers required for multiple concurrent 36 DNS connections. 37 38config DNS_RESOLVER_ADDITIONAL_QUERIES 39 int "Additional DNS queries" 40 range 0 2 41 default 1 42 help 43 Number of additional DNS queries that the DNS resolver may 44 generate when the RR ANSWER only contains CNAME(s). 45 The maximum value of this variable is constrained to avoid 46 'alias loops'. 47 48config DNS_RESOLVER_AI_MAX_ENTRIES 49 int "Maximum number of IP addresses for DNS name" 50 default 2 51 help 52 Defines the max number of IP addresses per domain name 53 resolution the DNS resolver can handle. 54 55 56config DNS_RESOLVER_MAX_SERVERS 57 int "Number of DNS server addresses" 58 range 1 NET_MAX_CONTEXTS 59 default 1 60 help 61 Max number of DNS servers that we can connect to. Normally one 62 DNS server is enough. Each connection to DNS server will use one 63 network context. 64 65menuconfig DNS_SERVER_IP_ADDRESSES 66 bool "Set DNS server IP addresses" 67 help 68 Allow DNS IP addresses to be set in config file for 69 networking applications. 70 71if DNS_SERVER_IP_ADDRESSES 72 73config DNS_SERVER1 74 string "DNS server 1" 75 help 76 DNS server IP address 1. The address can be either IPv4 or IPv6 77 address. An optional port number can be given. 78 Following syntax is supported: 79 192.0.2.1 80 192.0.2.1:5353 81 2001:db8::1 82 [2001:db8::1]:5353 83 It is not mandatory to use this Kconfig option at all. 84 The one calling dns_resolve_init() can use this option or not 85 to populate the server list. If the DNS server addresses are 86 set here, then we automatically create default DNS context 87 for the user. 88 89config DNS_SERVER2 90 string "DNS server 2" 91 help 92 See help in "DNS server 1" option. 93 94config DNS_SERVER3 95 string "DNS server 3" 96 help 97 See help in "DNS server 1" option. 98 99config DNS_SERVER4 100 string "DNS server 4" 101 help 102 See help in "DNS server 1" option. 103 104config DNS_SERVER5 105 string "DNS server 5" 106 help 107 See help in "DNS server 1" option. 108 109endif # DNS_SERVER_IP_ADDRESSES 110 111config DNS_NUM_CONCUR_QUERIES 112 int "Number of simultaneous DNS queries per one DNS context" 113 default 1 114 help 115 This defines how many concurrent DNS queries can be generated using 116 same DNS context. Normally 1 is a good default value. 117 118module = DNS_RESOLVER 119module-dep = NET_LOG 120module-str = Log level for DNS resolver 121module-help = Enables DNS resolver code to output debug messages. 122source "subsys/net/Kconfig.template.log_config.net" 123 124endif # DNS_RESOLVER 125 126config MDNS_RESPONDER 127 bool "mDNS responder" 128 select NET_IPV4_IGMP if NET_IPV4 129 select NET_IPV6_MLD if NET_IPV6 130 select NET_MGMT 131 select NET_MGMT_EVENT 132 depends on NET_HOSTNAME_ENABLE 133 help 134 This option enables the mDNS responder support for Zephyr. 135 It will listen well-known address ff02::fb and 224.0.0.251. 136 Currently this only returns IP address information. 137 You must set CONFIG_NET_HOSTNAME to some meaningful value and 138 then mDNS will start to respond to <hostname>.local mDNS queries. 139 See RFC 6762 for more details about mDNS. 140 141if MDNS_RESPONDER 142 143config MDNS_RESPONDER_TTL 144 int "Time-to-Live of returned DNS name" 145 default 600 146 help 147 DNS answers will use the TTL (in seconds). 148 149config MDNS_RESPONDER_INIT_PRIO 150 int "Startup priority for the mDNS responder init" 151 default 96 152 help 153 Note that if NET_CONFIG_AUTO_INIT is enabled, then this value 154 should be bigger than its value. 155 156config MDNS_RESPONDER_DNS_SD 157 bool "DNS Service Discovery via mDNS" 158 default y 159 depends on DNS_SD 160 help 161 Selecting this option ensures that the MDNS Responder 162 processes PTR, SRV, and TXT records according to RFC 6763. 163 By doing so, Zephyr network services are discoverable 164 using e.g. 'avahi-browse -t -r _greybus._tcp'. 165 166if MDNS_RESPONDER_DNS_SD 167config MDNS_RESPONDER_DNS_SD_SERVICE_TYPE_ENUMERATION 168 bool "DNS SD Service Type Enumeration" 169 default y 170 help 171 Selecting this option ensures that the MDNS Responder 172 performs DNS-SD Service Type Enumeration according to RFC 6763, 173 Chapter 9. By doing so, Zephyr network services are discoverable 174 using e.g. 'avahi-browse -t -r _services._dns-sd._udp.local'. 175endif # MDNS_RESPONDER_DNS_SD 176 177module = MDNS_RESPONDER 178module-dep = NET_LOG 179module-str = Log level for mDNS responder 180module-help = Enables mDNS responder code to output debug messages. 181source "subsys/net/Kconfig.template.log_config.net" 182 183config MDNS_RESOLVER_ADDITIONAL_BUF_CTR 184 int "Additional DNS buffers" 185 default 0 186 help 187 Number of additional buffers available for the mDNS responder. 188 189endif # MDNS_RESPONDER 190 191config LLMNR_RESPONDER 192 bool "LLMNR responder" 193 select NET_IPV4_IGMP if NET_IPV4 194 select NET_IPV6_MLD if NET_IPV6 195 select NET_MGMT 196 select NET_MGMT_EVENT 197 depends on NET_HOSTNAME_ENABLE 198 help 199 This option enables the LLMNR responder support for Zephyr. 200 It will listen well-known address ff02::1:3 and 224.0.0.252. 201 Currently this only returns IP address information. 202 You must set CONFIG_NET_HOSTNAME to some meaningful value and 203 then LLMNR will start to respond to <hostname> LLMNR queries. 204 Note that LLMNR queries should only contain single-label names 205 so there should be NO dot (".") in the name (RFC 4795 ch 3). 206 Current implementation does not support TCP. 207 See RFC 4795 for more details about LLMNR. 208 209if LLMNR_RESPONDER 210 211config LLMNR_RESPONDER_TTL 212 int "Time-to-Live of returned DNS name" 213 default 30 214 help 215 DNS answers will use the TTL (in seconds). A default value is 30 216 seconds as recommended by RFC 4795 chapter 2.8 217 218config LLMNR_RESPONDER_INIT_PRIO 219 int "Startup priority for the LLMNR responder init" 220 default 96 221 help 222 Note that if NET_CONFIG_AUTO_INIT is enabled, then this value 223 should be bigger than its value. 224 225module = LLMNR_RESPONDER 226module-dep = NET_LOG 227module-str = Log level for LLMNR responder 228module-help = Enables LLMNR responder code to output debug messages. 229source "subsys/net/Kconfig.template.log_config.net" 230 231config LLMNR_RESOLVER_ADDITIONAL_BUF_CTR 232 int "Additional DNS buffers" 233 default 0 234 help 235 Number of additional buffers available for the LLMNR responder. 236 237endif # LLMNR_RESPONDER 238 239config DNS_SD 240 bool "DNS Service Discovery" 241 help 242 This option enables DNS Service Discovery for Zephyr. It can 243 be enabled for virtually any network service with only a few 244 lines of code and works for both Unicast and Multicast DNS. 245 See RFC 6763 for more details about DNS-SD. 246 247if DNS_SD 248 249module = DNS_SD 250module-dep = NET_LOG 251module-str = Log level for DNS-SD 252module-help = Enables DNS Service Discovery code to output debug messages. 253source "subsys/net/Kconfig.template.log_config.net" 254 255endif # DNS_SD 256