From fd39deb3b3e4e800bf71c08354024253bfee10c4 Mon Sep 17 00:00:00 2001 From: ZiMing Mo Date: Thu, 20 Oct 2022 16:53:10 +0800 Subject: [PATCH] dnsmasq: add filter_a option Signed-off-by: ZiMing Mo --- .../network/services/dnsmasq/files/dhcp.conf | 1 + .../services/dnsmasq/files/dnsmasq.init | 1 + ...a.patch => 911-dnsmasq-filter-a&aaaa.patch} | 18 ++++++++++++++---- 3 files changed, 16 insertions(+), 4 deletions(-) rename package/network/services/dnsmasq/patches/{911-dnsmasq-filter-aaaa.patch => 911-dnsmasq-filter-a&aaaa.patch} (55%) diff --git a/package/network/services/dnsmasq/files/dhcp.conf b/package/network/services/dnsmasq/files/dhcp.conf index a5f833e470..845563d3eb 100644 --- a/package/network/services/dnsmasq/files/dhcp.conf +++ b/package/network/services/dnsmasq/files/dhcp.conf @@ -20,6 +20,7 @@ config dnsmasq #list notinterface lo #list bogusnxdomain '64.94.110.11' option localservice 1 # disable to allow DNS requests from non-local subnets + option filter_a 0 option filter_aaaa 0 option cachesize 8000 option mini_ttl 3600 diff --git a/package/network/services/dnsmasq/files/dnsmasq.init b/package/network/services/dnsmasq/files/dnsmasq.init index 92e5004261..eaf769b18b 100755 --- a/package/network/services/dnsmasq/files/dnsmasq.init +++ b/package/network/services/dnsmasq/files/dnsmasq.init @@ -944,6 +944,7 @@ dnsmasq_start() append_bool "$cfg" rapidcommit "--dhcp-rapid-commit" append_bool "$cfg" scriptarp "--script-arp" + append_bool "$cfg" filter_a "--filter-A" append_bool "$cfg" filter_aaaa "--filter-AAAA" append_parm "$cfg" logfacility "--log-facility" diff --git a/package/network/services/dnsmasq/patches/911-dnsmasq-filter-aaaa.patch b/package/network/services/dnsmasq/patches/911-dnsmasq-filter-a&aaaa.patch similarity index 55% rename from package/network/services/dnsmasq/patches/911-dnsmasq-filter-aaaa.patch rename to package/network/services/dnsmasq/patches/911-dnsmasq-filter-a&aaaa.patch index 7e9263e9a7..1c9dd221a3 100644 --- a/package/network/services/dnsmasq/patches/911-dnsmasq-filter-aaaa.patch +++ b/package/network/services/dnsmasq/patches/911-dnsmasq-filter-a&aaaa.patch @@ -1,18 +1,28 @@ From 966471712184cfb3b067f2ae8dad9d8e2a896cae Mon Sep 17 00:00:00 2001 From: Bearice Ren Date: Tue, 20 Sep 2016 11:52:08 +0800 -Subject: [PATCH] add filter-aaaa option +Subject: [PATCH] add filter-a & filter-aaaa option --- - src/rfc1035.c | 10 ++++++++++ - 1 files changed, 104 insertions(+) + src/rfc1035.c | 20 ++++++++++ + 1 files changed, 20 insertions(+) --- a/src/rfc1035.c +++ b/src/rfc1035.c -@@ -2111,6 +2111,16 @@ size_t answer_request(struct dns_header +@@ -2111,6 +2111,26 @@ size_t answer_request(struct dns_header } } ++ /* patch to filter a forwards */ ++ if (qtype == T_A && option_bool(OPT_FILTER_A)) ++ { ++ /* return a null reply */ ++ ans = 1; ++ if (!dryrun) ++ log_query(F_CONFIG | F_IPV4 | F_NEG, name, &addr, NULL, 0); ++ break; ++ } ++ + /* patch to filter aaaa forwards */ + if (qtype == T_AAAA && option_bool(OPT_FILTER_AAAA)) + {