2

I'd like to configure a DNS server to use Response Rate Limiting (RRL) to mitigate DNS DDoS attacks. Whatever, I have to configure it top use RRL with the 'slip' parameter at 2.

I've made some search, but I haven't found anything really clear about this parameter. The only thing I found said it represents "how many UDP requests can be answered with a truncated response." and that "setting to '2' means every other query gets a short answer". Source: https://conference.apnic.net/data/37/apricot-2014-rrl_1393309768.pdf (slide 26)

What does that mean? If the DNS server receive 3 UDP requests, the last one will be truncated? But for how long?

Zouba
  • 21
  • 2

1 Answers1

2

The slip parameter affects how rate-limited responses are processed. Say, for example, 8 responses would be rate-limited. By the default slip=2, 4 of those responses (every other one) would be a truncated response and 4 would just not be sent. With slip=0, no responses would be sent at all. with slip=1, 8 truncated responses would be sent. with slip=4, 2 truncated responses would be sent.

Basically, slip allows some responses to get through ("slip through") if they would otherwise be blocked by RRL.

More info from the official BIND9.10 ARM Section 6.2.16.21 "Response Rate Limiting":

Many attacks using DNS involve UDP requests with forged source addresses. Rate limiting prevents the use of BIND 9 to flood a network with responses to requests with forged source addresses, but could let a third party block responses to legitimate requests. There is a mechanism that can answer some legitimate requests from a client whose address is being forged in a flood. Setting slip to 2 (its default) causes every other UDP request to be answered with a small truncated (TC=1) response. The small size and reduced frequency, and so lack of amplification, of ”slipped” responses make them unattractive for reflection DoS attacks. slip must be between 0 and 10. A value of 0 does not ”slip”: no truncated responses are sent due to rate limiting, all responses are dropped. A value of 1 causes every response to slip; values between 2 and 10 cause every n’th response to slip. Some error responses including REFUSED and SERVFAIL cannot be replaced with truncated responses and are instead leaked at the slip rate.

Hyppy
  • 15,608
  • 1
  • 38
  • 59