eftersom fler och fler människor antar nyare funktioner som IPv6, spam undvikande och DNSSEC, är DNS mer benägna att byta till TCP på grund av den större svarsstorleken.

vad händer om TCP blockeras?

oavsett fall, när meddelandestorleken överstiger 512 byte, kommer det att utlösa ” TC ” bit (trunkering) i DNS som ska ställas in, informera klienten om att meddelandelängden har överskridit den tillåtna storleken. I dessa situationer måste klienten överföra över TCP, som inte har någon storleksgräns., Om DNS-servrar och nätverksmiljö inte kan stödja stora UDP-paket kommer det att orsaka återutsändning över TCP.om TCP blockeras kommer det stora UDP-svaret antingen att resultera i IP-fragmentering eller släppas helt. Slut symptom till slutklienten är oftast långsam DNS-upplösning, eller oförmåga att lösa vissa domännamn alls.

storlek betyder: EDNS

Du kanske undrar var storleksgränsen på 512 byte kommer ifrån. 512 byte UDP payload storlek är beroende av IPv4., IPv4 standard2 anger att varje värd måste kunna sätta ihop paket med 576 byte eller mindre, ta bort huvud och andra alternativ, som lämnar 512 byte för nyttolastdata. Detta är anledningen till att det finns exakt 13 DNS root servers3 ursprungligen: 13 domännamn och 13 IPv4-adresser passar fint in i ett enda UDP-paket.

denna storleksbegränsning erkändes för länge sedan som ett problem. 1999 föreslogs Förlängningsmekanism för DNS (EDNS), och den har uppdaterats genom åren, vilket ökar storleken hela vägen till 4096 byte eller 4 kilobyte., Så, om du kör en någorlunda uppdaterad DNS-server, chanserna för det byta till TCP bör vara smal(mer).

även om EDNS har funnits länge har stödet inte varit lika universellt som det borde vara4 . Vissa nätverksutrustning, som brandväggar, kan fortfarande göra antaganden om DNS-paketstorlek. En brandvägg kan släppa eller avvisa ett stort DNS-paket, tror att det är en attack., Detta beteende kanske inte har orsakat synliga problem tidigare (eller det gjorde men ingen förstod varför), men eftersom DNS-data fortsätter att öka i storlek är det viktigt att all nätverksutrustning är korrekt konfigurerad för att stödja stora DNS-paketstorlekar. Om nätverksmiljön inte fullt ut stöder stora DNS-meddelanden kan det leda till att DNS-meddelandet avvisas av network gear eller delvis tappas under fragmentering. Vad det här ser ut för slutanvändaren är att DNS-frågor går obesvarade, eller ta mycket lång tid, vilket ger intrycket att ”DNS/nätverk är verkligen långsam.,”

medan EDNS är nödvändigt för driften av dagens DNS, förmågan att skicka större meddelanden bidrog till volymetriska attacker som förstärkning och reflektion.