4 ms·
TLDR: The solution to an intentionally broken resolver is to use a third party library.
by rascul 5y ago
TLDR:
The solution to an intentionally broken resolver is to use a third party library.
- blueflow 5y agoIts only broken if you dont consider robustness a feature.
- tptacek 5y agoIt's not just "robustness". Not supporting TCP DNS breaks DNS if your responses are "large", for values of "large" that include numbers that are in fact very small.
- 34tlkjlaegrlk 5y agolargest safe size to use is ~548 bytes - anything more than that and you need tcp
- zamadatix 5y agoOr, as the article says, EDNS.
- blueflow 5y agoIts okay to ignore "modern" features if they create bad edge cases.
- deleted 5y ago[deleted]
- tptacek 5y agoThis feature is from 1986.
- blueflow 5y agoSo are absolute domain names, but everyone is using relative domain specifications now, omitting the final dot. HTTP Transfer-Encoding also got specified, and then collectively mis-implemented. That its in the standard for decades doesnt mean it will be good when used.
- charcircuit 5y agoI can use absolute domain names just fine in the software I use.
- tptacek 5y agoThis doesn't make sense as an argument. Without TCP DNS, you're stuck with an untenably low limit for how much data can fit in a DNS response. Not having TCP DNS breaks DNS. It's not an aesthetic argument.
- zamadatix 5y agoThings can be broken in more than one way not just solely when the thing broken is robustness (for some value of robust).