PowerDNS Recursor 4.2 болон DNS flag Day 2020 санаачлагыг гаргасан

Жил хагасын дараа хөгжлийнхөө дараа танилцуулсан кэш хийх DNS серверийг гаргах PowerDNS нөөц 4.2, рекурсив нэр хувиргалтыг хариуцдаг. PowerDNS Recursor нь PowerDNS эрх бүхий сервертэй ижил кодын суурь дээр бүтээгдсэн боловч PowerDNS рекурсив болон эрх мэдэл бүхий DNS серверүүд нь өөр өөр хөгжүүлэлтийн циклээр боловсруулагдаж, тусдаа бүтээгдэхүүн болгон гаргадаг. Төслийн код тараасан GPLv2 дагуу лицензтэй.

Шинэ хувилбар нь EDNS туг бүхий DNS пакетуудыг боловсруулахтай холбоотой бүх асуудлыг арилгасан. 2016 оноос өмнөх PowerDNS Recursor-ийн хуучин хувилбаруудад хуучин форматаар хариу илгээхгүйгээр дэмжигдээгүй EDNS туг бүхий пакетуудыг үл тоомсорлож, техникийн шаардлагад нийцүүлэн EDNS тугуудыг хаядаг байсан. Өмнө нь энэхүү стандарт бус үйлдлийг BIND-д тойрч гарах арга хэлбэрээр дэмжиж байсан боловч явуулсан хоёрдугаар сард санаачлага DNS тугны өдөр, DNS сервер хөгжүүлэгчид энэ хакердалтыг орхихоор шийджээ.

PowerDNS-д EDNS-тэй пакетуудыг боловсруулахад тулгарч байсан гол бэрхшээлийг 2017 онд 4.1 хувилбараар арилгасан бөгөөд 2016 онд гарсан 4.0 салбар дээр тодорхой нөхцөл байдлын дор үүссэн бие даасан үл нийцэлүүд гарч ирсэн бөгөөд ерөнхийдөө хэвийн байдалд саад болохгүй. үйл ажиллагаа. PowerDNS Recursor 4.2-д байгаа шиг 9.14, EDNS туг бүхий хүсэлтэд буруу хариу өгдөг эрх мэдэл бүхий серверүүдийг дэмжихийн тулд тойрон гарах шийдлүүдийг устгасан. Өнөөг хүртэл EDNS туг бүхий хүсэлт илгээсний дараа тодорхой хугацааны дараа хариу ирээгүй бол DNS сервер өргөтгөсөн тугуудыг дэмжээгүй гэж үзээд EDNS туггүйгээр хоёр дахь хүсэлтийг илгээсэн. Энэ код нь пакет дахин дамжуулалтаас болж хоцрогдол ихсэж, сүлжээний доголдлоос болж хариу өгөхгүй байх үед сүлжээний ачаалал нэмэгдэж, тодорхойгүй байдал үүсч, DDoS халдлагаас хамгаалахын тулд DNS күүки зэрэг EDNS-д суурилсан функцуудыг хэрэгжүүлэхээс сэргийлсэн тул энэ үйлдлийг одоо идэвхгүй болгосон.

Уг арга хэмжээг ирэх онд зохион байгуулахаар болсон DNS тугны өдөр 2020анхаарлаа төвлөрүүлэх зорилготой шийдвэр асуудлууд Том DNS мессежийг боловсруулах үед IP хуваагдалтай. Санаачилгын нэг хэсэг болгон төлөвлөсөн EDNS-д санал болгож буй буферийн хэмжээг 1200 байт болгож засах, мөн орчуулах TCP-ээр дамжуулан хүсэлтийг боловсруулах нь серверт байх ёстой функц юм. Одоо UDP-ээр дамжуулан хүсэлтийг боловсруулахад дэмжлэг үзүүлэх шаардлагатай бөгөөд TCP нь зүйтэй боловч ажиллахад шаардлагагүй (стандарт нь TCP-ийг идэвхгүй болгох чадварыг шаарддаг). Стандартаас TCP-ийг идэвхгүй болгох сонголтыг арилгаж, тогтоосон EDNS буферийн хэмжээ хангалтгүй тохиолдолд UDP-ээр хүсэлт илгээхээс TCP ашиглах руу шилжих шилжилтийг стандартчилахыг санал болгож байна.

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

PowerDNS Recursor 4.2 нь том хэмжээний UDP пакетуудтай холбоотой асуудлуудыг харгалзан үзэж, өмнө нь хэрэглэж байсан 1232 байт хязгаарын оронд 1680 байт EDNS буферийн хэмжээг (edns-outgoing-bufsize) ашиглахад шилждэг бөгөөд энэ нь UDP пакетуудыг алдах магадлалыг эрс бууруулдаг. . IPv1232-г харгалзан үзэхэд DNS хариуны хэмжээ хамгийн бага MTU утгад (6) таарч байгаа тул 1280 утгыг сонгосон. Үйлчлүүлэгчийн хариуг багасгах үүрэгтэй тайрах босго параметрийн утгыг мөн 1232 болгон бууруулсан.

PowerDNS Recursor 4.2 дээрх бусад өөрчлөлтүүд:

  • Механизмын дэмжлэгийг нэмсэн XPF (X-Proxied-For) нь X-Forwarded-For HTTP толгой хэсгийн DNS-тэй адил бөгөөд анхны хүсэлт гаргагчийн IP хаяг болон портын дугаарын талаарх мэдээллийг завсрын прокси болон ачааллын тэнцвэржүүлэгчид (dnsdist гэх мэт) дамжуулан дамжуулах боломжийг олгодог. . XPF-г идэвхжүүлэхийн тулд сонголтууд байна "xpf-зөвшөөрөх-аас"Мөн"xpf-rr-код";
  • EDNS өргөтгөлийн дэмжлэгийг сайжруулсан Үйлчлүүлэгч дэд сүлжээ (ECS), энэ нь гинжин хэлхээний дагуу дамжуулагдсан анхны хүсэлтийг хордуулсан дэд сүлжээний талаарх мэдээллийг эрх бүхий DNS сервер рүү DNS асуулгад дамжуулах боломжийг олгодог (контент дамжуулах сүлжээг үр дүнтэй ажиллуулахын тулд үйлчлүүлэгчийн эх сурвалжийн дэд сүлжээний талаарх мэдээлэл шаардлагатай) . Шинэ хувилбар нь EDNS Client Subnet-ийн ашиглалтыг сонгох хяналтын тохиргоог нэмсэн: "ecs-add-for» гарч буй хүсэлтүүдэд IP-г ECS-д ашиглах сүлжээний маскуудын жагсаалттай. Заасан маскуудад багтахгүй хаягийн хувьд "захирамжид заасан ерөнхий хаяг"ecs-хамрах хүрээ-тэг-хаяг". Удирдамжаар"ашиглах-incoming-edns-дэд сүлжээ» та дүүргэсэн ECS утгатай ирсэн хүсэлтийг солихгүй дэд сүлжээг тодорхойлж болно;
  • Секундэд олон тооны хүсэлт (100 мянга гаруй) боловсруулдаг серверүүдийн хувьд "" удирдамждистрибьютер-утас", энэ нь ирж буй хүсэлтийг хүлээн авч, ажилчны хэлхээ хооронд хуваарилах хэлхээний тоог тодорхойлдог (зөвхөн "pdns-distributes-queries=тийм").
  • Тохиргоо нэмсэн public-suffix-list-file ашиглан өөрийн файлыг тодорхойлох нийтийн дагаваруудын жагсаалт PowerDNS Recursor-д суулгасан жагсаалтын оронд хэрэглэгчид өөрсдийн дэд домайныг бүртгүүлэх боломжтой домэйнууд.

PowerDNS төсөл нь зургаан сарын хөгжлийн мөчлөгт шилжихээ зарласан бөгөөд PowerDNS Recursor 4.3-ийн дараагийн томоохон хувилбарыг 2020 оны 4.2-р сард гаргахаар төлөвлөж байна. Чухал ач холбогдол бүхий хувилбаруудын шинэчлэлтийг жилийн турш боловсруулж, дараа нь дахин зургаан сарын турш эмзэг байдлын засваруудыг гаргах болно. Тиймээс PowerDNS Recursor 2021 салбарын дэмжлэг 4.2 оны XNUMX-р сар хүртэл үргэлжилнэ. Ойрын ирээдүйд XNUMX хувилбарыг гаргах төлөвтэй байгаа PowerDNS эрх бүхий серверт ижил төстэй хөгжлийн мөчлөгийн өөрчлөлтүүд хийгдсэн.

PowerDNS Recursor-ийн гол онцлогууд:

  • Алсын статистик мэдээллийг цуглуулах хэрэгсэл;
  • Шууд дахин эхлүүлэх;
  • Луа хэл дээрх зохицуулагчийг холбох зориулалттай суурилуулсан хөдөлгүүр;
  • Бүрэн DNSSEC дэмжлэг ба DNS64;
  • RPZ (Response Policy Zones) болон хар жагсаалтыг тодорхойлох боломжийг дэмжих;
  • Хуурамчлахаас сэргийлэх механизм;
  • Нарийвчлалын үр дүнг BIND бүсийн файл болгон бүртгэх чадвар.
  • Өндөр гүйцэтгэлийг хангахын тулд орчин үеийн холболтын олон талт механизмуудыг FreeBSD, Linux болон Solaris (kqueue, epoll, /dev/poll) дээр, мөн хэдэн арван мянган зэрэгцээ хүсэлтийг боловсруулах чадвартай DNS пакет задлан шинжлэгч өндөр гүйцэтгэлтэй ашигладаг.

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

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