feature: add per server edns-client-subnet support

This commit is contained in:
Nick Peng
2023-04-08 22:14:52 +08:00
parent 0f68f0c11d
commit 0947a8dcab
13 changed files with 672 additions and 64 deletions

View File

@@ -293,6 +293,12 @@ struct dns_proxy_table {
};
extern struct dns_proxy_table dns_proxy_table;
struct dns_edns_client_subnet {
int enable;
char ip[DNS_MAX_IPLEN];
int subnet;
};
struct dns_servers {
char server[DNS_MAX_IPLEN];
unsigned short port;
@@ -309,6 +315,8 @@ struct dns_servers {
char tls_host_verify[DNS_MAX_CNAME_LEN];
char path[DNS_MAX_URL_LEN];
char proxyname[PROXY_NAME_LEN];
struct dns_edns_client_subnet ipv4_ecs;
struct dns_edns_client_subnet ipv6_ecs;
};
struct dns_proxy_servers {
@@ -346,12 +354,6 @@ struct dns_ip_address_rule {
unsigned int ip_ignore : 1;
};
struct dns_edns_client_subnet {
int enable;
char ip[DNS_MAX_IPLEN];
int subnet;
};
struct dns_conf_address_rule {
radix_tree_t *ipv4;
radix_tree_t *ipv6;