2020 оны DNS flag day-ийн санаачилга нь хуваагдал болон TCP дэмжлэгийн асуудлыг шийдвэрлэхэд чиглэгдсэн

Өнөөдөр хэд хэдэн томоохон DNS үйлчилгээ болон DNS сервер үйлдвэрлэгчид нэгдсэн арга хэмжээ зохион байгуулна DNS тугны өдөр 2020анхаарлаа төвлөрүүлэх зорилготой шийдвэр асуудлууд Том DNS мессежийг боловсруулах үед IP хуваагдалтай. Энэ нь өнгөрсөн жилийн "DNS-ийн далбааны өдөр" гэсэн хоёр дахь ийм арга хэмжээ юм. төвлөрсөн байв EDNS хүсэлтийг зөв боловсруулах талаар.

DNS flag day 2020 санаачлагад оролцогчид EDNS-д санал болгож буй буферийн хэмжээг 1232 байт (толгойн хувьд MTU хэмжээ 1280 хасах 48 байт) болгон засахыг уриалж байна. орчуулах TCP-ээр дамжуулан хүсэлтийг боловсруулах нь серверт байх ёстой функц юм. IN RFC 1035 Зөвхөн UDP-ээр дамжуулан хүсэлтийг боловсруулахад дэмжлэг үзүүлэх нь заавал байх ёстой гэж тэмдэглэгдсэн бөгөөд TCP нь зүйтэй гэж жагсаасан боловч ажиллахад шаардлагагүй. Шинэ RFC 7766 и RFC 5966 DNS зөв ажиллахын тулд TCP-ийг шаардлагатай чадвар гэж тодорхой жагсаав. Энэхүү санаачлага нь тогтоосон EDNS буферийн хэмжээ хангалтгүй тохиолдолд UDP-ээр хүсэлт илгээхээс TCP ашиглах руу шилжихийг санал болгож байна.

Санал болгож буй өөрчлөлтүүд нь EDNS буферийн хэмжээг сонгохтой холбоотой төөрөгдлийг арилгаж, том хэмжээний UDP мессежүүдийн хуваагдлын асуудлыг шийдвэрлэх бөгөөд энэ нь боловсруулалт нь ихэвчлэн пакет алдагдах, үйлчлүүлэгчийн тал дээр зогсоход хүргэдэг. Үйлчлүүлэгчийн тал дээр EDNS буферийн хэмжээ тогтмол байх бөгөөд TCP-ээр дамжуулан том хэмжээний хариултыг үйлчлүүлэгч рүү шууд илгээнэ. UDP-ээр том мессеж илгээхээс зайлсхийх нь зарим галт хананд том пакетуудыг буулгах асуудлыг шийдэж, блоклох боломжийг олгоно. дайралт хуваагдсан UDP пакетуудыг ашиглахад үндэслэсэн DNS кэшийг хордуулах зорилгоор (хэсэг болгон хуваах үед хоёр дахь фрагмент нь танигчтай толгой хэсгийг агуулаагүй тул үүнийг хуурамчаар үйлдэх боломжтой, үүнд зөвхөн шалгах нийлбэр таарахад л хангалттай) .

Өнөөдрөөс эхлэн CloudFlare, Quad 9, Cisco (OpenDNS) болон Google зэрэг DNS үйлчилгээ үзүүлэгчид оролцож байна. аажмаар өөрчлөгдөх болно DNS серверүүд дээрх EDNS буферийн хэмжээ 4096-аас 1232 байт хүртэл (EDNS өөрчлөлт нь 4-6 долоо хоногт тархах бөгөөд цаг хугацааны явцад нэмэгдэж буй хүсэлтийг хамарна). Шинэ хязгаарт тохирохгүй UDP хүсэлтийн хариуг TCP-ээр илгээнэ. BIND, Unbound, Knot, NSD болон PowerDNS зэрэг DNS сервер үйлдвэрлэгчид анхдагч EDNS буферийн хэмжээг 4096 байтаас 1232 байт болгон өөрчлөх шинэчлэлтүүдийг гаргах болно.

Эцсийн эцэст, эдгээр өөрчлөлтүүд нь UDP DNS хариу нь 1232 байтаас хэтэрсэн, TCP хариу илгээж чадахгүй байгаа DNS серверүүдэд хандах үед шийдвэрлэх асуудалд хүргэж болзошгүй юм. Google-д хийсэн туршилтаас харахад EDNS буферийн хэмжээг өөрчлөх нь бүтэлгүйтлийн түвшинд бараг ямар ч нөлөө үзүүлэхгүй - 4096 байт буфертэй, таслагдсан UDP хүсэлтийн тоо 0.345%, TCP дээр дахин нэвтрэх боломжгүй дахин оролдлогын тоо 0.115% байна. 1232 байт буфертэй эдгээр тоонууд 0.367% ба 0.116% байна. TCP дэмжлэгийг шаардлагатай DNS функц болгох нь DNS серверүүдийн 0.1%-д асуудал үүсгэнэ. Орчин үеийн нөхцөлд TCP-гүй бол эдгээр серверүүдийн ажиллагаа аль хэдийн тогтворгүй байгааг тэмдэглэв.

Эрх мэдэл бүхий DNS серверүүдийн администраторууд өөрсдийн сервер нь сүлжээний 53-р порт дээрх TCP-ээр хариу үйлдэл үзүүлж, энэ TCP портыг галт ханаар хаагаагүй эсэхийг шалгах ёстой. Нэр хүндтэй DNS сервер нь үүнээс том хэмжээтэй UDP хариултуудыг илгээж болохгүй
хүссэн EDNS буферийн хэмжээ. Сервер дээр EDNS буферийн хэмжээг 1232 байт болгож тохируулах ёстой. Шийдвэрлэгч нь ойролцоогоор ижил шаардлагуудтай байдаг - TCP-ээр дамжуулан заавал хариу өгөх чадвар, таслагдсан UDP хариултыг хүлээн авах үед TCP-ээр дамжуулан давтан хүсэлт илгээх шаардлагатай дэмжлэг, EDNS буферийг 1232 байт болгон тохируулах.

Дараах параметрүүд нь өөр өөр DNS серверүүдэд EDNS буферийн хэмжээг тохируулах үүрэгтэй.

  • BIND

    options {
    edns-udp-хэмжээ 1232;
    max-udp-хэмжээ 1232;
    };

  • DNS зангилаа

    udp-ийн хамгийн их ачаалал: 1232

  • Зангилаа шийдэгч

    net.bufsize(1232)

  • PowerDNS эрх мэдэлтэн

    udp-truncation-threshold=1232

  • PowerDNS рекурсор

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

  • Unbound

    edns-буферийн хэмжээ: 1232

  • ҮСХ

    ipv4-edns-хэмжээ: 1232
    ipv6-edns-хэмжээ: 1232

    Эх сурвалж: opennet.ru

  • сэтгэгдэл нэмэх