TuyaOS
宏定义
DNS 的协作图:

宏定义

#define DNS_DOES_NAME_CHECK   1
 
#define DNS_LOCAL_HOSTLIST   0
 
#define DNS_LOCAL_HOSTLIST_IS_DYNAMIC   0
 
#define DNS_MAX_NAME_LENGTH   256
 
#define DNS_MAX_RETRIES   4
 
#define DNS_MAX_SERVERS   2
 
#define DNS_TABLE_SIZE   4
 
#define LWIP_DNS_SECURE   (LWIP_DNS_SECURE_RAND_XID | LWIP_DNS_SECURE_NO_MULTIPLE_OUTSTANDING | LWIP_DNS_SECURE_RAND_SRC_PORT)
 
#define LWIP_DNS_SECURE_NO_MULTIPLE_OUTSTANDING   2
 
#define LWIP_DNS_SECURE_RAND_SRC_PORT   4
 
#define LWIP_DNS_SECURE_RAND_XID   1
 
#define LWIP_DNS_SUPPORT_MDNS_QUERIES   0
 

详细描述

宏定义说明

◆ DNS_DOES_NAME_CHECK

#define DNS_DOES_NAME_CHECK   1

DNS do a name checking between the query and the response.

◆ DNS_LOCAL_HOSTLIST

#define DNS_LOCAL_HOSTLIST   0

DNS_LOCAL_HOSTLIST: Implements a local host-to-address list. If enabled, you have to define an initializer: #define DNS_LOCAL_HOSTLIST_INIT {DNS_LOCAL_HOSTLIST_ELEM("host_ip4", IPADDR4_INIT_BYTES(1,2,3,4)), \ DNS_LOCAL_HOSTLIST_ELEM("host_ip6", IPADDR6_INIT_HOST(123, 234, 345, 456)}

Instead, you can also use an external function: #define DNS_LOOKUP_LOCAL_EXTERN(x) extern err_t my_lookup_function(const char *name, ip_addr_t *addr, u8_t dns_addrtype) that looks up the IP address and returns ERR_OK if found (LWIP_DNS_ADDRTYPE_xxx is passed in dns_addrtype).

◆ DNS_LOCAL_HOSTLIST_IS_DYNAMIC

#define DNS_LOCAL_HOSTLIST_IS_DYNAMIC   0

If this is turned on, the local host-list can be dynamically changed at runtime.

◆ DNS_MAX_NAME_LENGTH

#define DNS_MAX_NAME_LENGTH   256

DNS maximum host name length supported in the name table.

◆ DNS_MAX_RETRIES

#define DNS_MAX_RETRIES   4

DNS maximum number of retries when asking for a name, before "timeout".

◆ DNS_MAX_SERVERS

#define DNS_MAX_SERVERS   2

The maximum of DNS servers The first server can be initialized automatically by defining DNS_SERVER_ADDRESS(ipaddr), where 'ipaddr' is an 'ip_addr_t*'

◆ DNS_TABLE_SIZE

#define DNS_TABLE_SIZE   4

LWIP_DNS==1: Turn on DNS module. UDP must be available for DNS transport. DNS maximum number of entries to maintain locally.

◆ LWIP_DNS_SECURE

#define LWIP_DNS_SECURE   (LWIP_DNS_SECURE_RAND_XID | LWIP_DNS_SECURE_NO_MULTIPLE_OUTSTANDING | LWIP_DNS_SECURE_RAND_SRC_PORT)

LWIP_DNS_SECURE: controls the security level of the DNS implementation Use all DNS security features by default. This is overridable but should only be needed by very small targets or when using against non standard DNS servers.

◆ LWIP_DNS_SUPPORT_MDNS_QUERIES

#define LWIP_DNS_SUPPORT_MDNS_QUERIES   0

Set this to 1 to enable querying ".local" names via mDNS using a One-Shot Multicast DNS Query