Finer control over REFUSED, e.g. root referrals
Fred Morris
m3047 at m3047.net
Sun Sep 7 23:30:05 UTC 2025
Andrew, you've given me an intriguing idea!
On Sun, 7 Sep 2025, Andrew Pavlin wrote:
>
> Personally, I would like an even finer control than what the allow-query
> option allows. I too run an authoritative server, and it too is being
> routinely used for DNS amplification attacks. Rather than returning a
> REFUSED error (which still uses bandwidth on my link and the poor
> victim's link), I would like to be able to configure my bind instance to
> not respond AT ALL to _any_ domain queries for which I am not
> authoritative or a "glue" server.
Have you got RPZ set up? I run two RPZs for access control, which are
consulted sequentially. The first one is the allow list, the second is the
block list (although there is no technical enforcement, just the rules
which go into each): this is best practice.
I added
*.EDU CNAME rpz-drop.
to the block list. "dig @athena.m3047.net gsu.edu IN ANY" is dead air now.
That doesn't solve the issue of people asking for root (".") or (bare) edu
and getting a "lie", but it does mitigate the issue of people asking for
gsu.edu and getting a referral to root which is a lie.
That was what I thought would happen. Things were a little more
interesting when I tried simply
* CNAME rpz-drop.
That did not stop the server from responding when asked for root. It
stopped pretty much everything else which wasn't in the allow list.
The thing which was surprising is that it didn't stop queries for the
(parent) zone which the server is authoritative for (I expected to have to
add allow entries), which sounds like the behavior you desire without the
hassle of creating allow list entries. Personally I need to do some more
research before I'm comfortable with that.
I hope that helps, and thanks for the inspiration...
--
Fred Morris, internet plumber
More information about the bind-users
mailing list