Inisiatif dinten bendera DNS 2020 pikeun ngatasi masalah fragméntasi sareng dukungan TCP

Kiwari, sajumlah jasa DNS ageung sareng produsén server DNS bakal ngayakeun kagiatan gabungan Dinten bendera DNS 2020dirancang pikeun museurkeun perhatian kana kaputusan masalah kalawan fragméntasi IP nalika ngolah seratan DNS badag. Ieu mangrupikeun acara anu kadua, taun ka tukang "DNS Flag Day" ieu fokus dina ngolah bener tina requests EDNS.

Pamilon dina inisiatif dinten bendera DNS 2020 nyauran ukuran panyangga anu disarankeun pikeun EDNS dibenerkeun kana 1232 bait (ukuran MTU 1280 dikurangan 48 bait pikeun lulugu), ogé narjamahkeun ngolah requests via TCP mangrupakeun fitur kudu-kudu dina server. DI RFC 1035 Ngan rojongan pikeun ngolah requests via UDP ditandaan wajib, sarta TCP kadaptar salaku desirable, tapi teu diperlukeun pikeun operasi. Anyar RFC 7766 и RFC 5966 sacara eksplisit daptar TCP salaku kamampuan anu diperyogikeun pikeun DNS tiasa dianggo leres. Inisiatif ngusulkeun pikeun maksa transisi tina ngirim pamenta kana UDP pikeun ngagunakeun TCP dina kasus dimana ukuran panyangga EDNS anu ditetepkeun henteu cekap.

Parobihan anu diusulkeun bakal ngaleungitkeun kabingungan kalayan milih ukuran panyangga EDNS sareng ngarengsekeun masalah fragméntasi seratan UDP ageung, anu ngolahna sering nyababkeun pakét leungitna sareng waktos di sisi klien. Di sisi klien, ukuran panyangga EDNS bakal konstan sareng réspon ageung bakal dikirim langsung ka klien ngalangkungan TCP. Ngahindarkeun ngirim pesen ageung tina UDP ogé bakal ngabéréskeun masalah sareng pakét ageung diturunkeun dina sababaraha firewall sareng ngawenangkeun ngahalangan. serangan pikeun karacunan cache DNS, dumasar kana manipulasi pakét UDP anu fragméntasi (nalika dibagi jadi fragmen, fragmén kadua henteu kalebet header sareng identifier, ku kituna tiasa dipalsukan, anu cekap ngan ukur pikeun checksum cocog) .

Dimimitian ayeuna, panyadia DNS anu milu kalebet CloudFlare, Quad 9, Cisco (OpenDNS) sareng Google, laun bakal robah Ukuran panyangga EDNS tina 4096 dugi ka 1232 bait dina server DNS na (parobahan EDNS bakal disebarkeun salami 4-6 minggu sareng bakal nutupan jumlah paménta anu langkung ageung kana waktosna). Tanggapan kana pamundut UDP anu henteu pas kana wates anyar bakal dikirim via TCP. Ngical paralatan DNS kalebet BIND, Unbound, Knot, NSD sareng PowerDNS bakal ngaleupaskeun apdet pikeun ngarobih ukuran panyangga EDNS standar tina 4096 bait ka 1232 bait.

Pamustunganana, parobihan ieu tiasa nyababkeun masalah résolusi nalika ngaksés pangladén DNS anu réspon UDP DNSna ngaleuwihan 1232 bait sareng teu tiasa ngirim réspon TCP. Hiji percobaan anu dilakukeun di Google némbongkeun yén ngarobah ukuran panyangga EDNS ampir euweuh pangaruh dina laju gagalna - kalawan panyangga 4096 bait, jumlah requests UDP truncated nyaeta 0.345%, sarta jumlah unreachable retries leuwih TCP nyaeta 0.115%. Kalayan panyangga 1232 bait, inohong ieu 0.367% sareng 0.116%. Nyieun TCP ngarojong fitur DNS diperlukeun bakal ngabalukarkeun masalah ngeunaan 0.1% tina server DNS. Perhatikeun yén dina kaayaan modéren, tanpa TCP, operasi server ieu parantos teu stabil.

Administrator server DNS anu otoritatif kedah mastikeun yén server na ngabales via TCP dina port jaringan 53 sareng port TCP ieu henteu diblokir ku firewall. A server DNS reputable ogé teu kudu ngirim réspon UDP anu leuwih badag batan
ukuran panyangga EDNS dipénta. Dina server sorangan, ukuran panyangga EDNS kudu disetel ka 1232 bait. Resolvers boga kira sarat sarua - kamampuhan wajib pikeun ngabales via TCP, rojongan wajib pikeun ngirim requests diulang via TCP lamun narima truncated respon UDP, tur nyetel panyangga EDNS ka 1232 bait.

Parameter di handap ieu tanggung jawab pikeun netepkeun ukuran panyangga EDNS dina server DNS anu béda:

  • meungkeut

    pilihan {
    edns-udp-ukuran 1232;
    max-udp-ukuran 1232;
    };

  • DNS simpul

    max-udp-payload: 1232

  • Knot Resolver

    net.bufsize(1232)

  • PowerDNS Otoritatif

    udp-truncation-bangbarung = 1232

  • PowerDNS Recursor

    edns-outgoing-bufsize=1232
    udp-truncation-bangbarung = 1232

  • Unbound

    edns-buffer-ukuran: 1232

  • NSD

    IPv4-edns-ukuran: 1232
    IPv6-edns-ukuran: 1232

    sumber: opennet.ru

  • Tambahkeun komentar