PowerDNS Recursor 4.2 чыгарылышы жана DNS желеги күнү 2020 демилгеси

бир жарым жылдан кийин иштеп чыгуу сунушталды кэштөө DNS серверинин релиз PowerDNS ресурсу 4.2, ал рекурсивдүү аталыштын чечилиши үчүн жооптуу. PowerDNS Recursor PowerDNS Authoritative Server сыяктуу код базасында курулган, бирок PowerDNS рекурсивдүү жана авторитеттүү DNS серверлери ар кандай иштеп чыгуу циклдери аркылуу иштелип чыгып, өзүнчө продуктылар катары чыгарылат. Проект коду жайылуу GPLv2 боюнча лицензияланган.

Жаңы версия EDNS желектери менен DNS пакеттерин иштетүүгө байланышкан бардык маселелерди жок кылат. PowerDNS Recursor'дун 2016-жылга чейинки эски версияларында спецификация талап кылгандай, эски форматта жооп жөнөтпөстөн, колдоого алынбаган EDNS желектери бар пакеттерге көңүл бурбоо, EDNS желектерин жокко чыгаруу практикаланган. Буга чейин мындай стандарттуу эмес жүрүм-турум BINDде убактылуу чечүү түрүндө колдоого алынган, бирок өткөрүлдү Февраль демилгелери DNS желек күнү, DNS серверлерин иштеп чыгуучулар бул бузукулуктан баш тартууну чечишти.

PowerDNSте, EDNS менен пакеттерди иштетүүдөгү негизги көйгөйлөр 2017-жылы 4.1-релизинде чечилген, ал эми 2016-жылы чыккан 4.0 бутагында белгилүү бир шарттарда пайда болгон жана жалпысынан нормалдуу иштөөгө тоскоол болбогон жеке шайкешсиздиктер пайда болгон. PowerDNS Recursor 4.2де, ошондой эле БИНД 9.14, EDNS желектери менен суроолорго туура эмес жооп берген авторитеттүү серверлерди колдоо үчүн убактылуу чечүү жолдору алынып салынды. Ушул убакка чейин, EDNS желектери менен суроо-талап жөнөтүлгөндөн кийин белгилүү бир убакыттан кийин эч кандай жооп алынбаса, DNS сервери кеңейтилген желектер колдоого алынбайт деп эсептеп, EDNS желектери жок экинчи суроо-талапты жөнөткөн. Бул жүрүм-турум азыр өчүрүлгөн, анткени мындай код пакеттерди кайра жөнөтүүдөн улам кечигүүнүн көбөйүшүнө, тармактын каталарынан улам жооптун жоктугуна байланыштуу түйүн жүктөмүнүн көбөйүшүнө жана бүдөмүктүүлүккө алып келди, ошондой эле колдонуу сыяктуу EDNS негизиндеги функцияларды ишке ашырууга тоскоолдук жаратты. DDoS чабуулдарынан коргоо үчүн DNS Cookies.

Кийинки жылы иш-чара өткөрүү чечими кабыл алынды 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 пакеттеринин мүмкүнчүлүгүн кыйла азайтышы керек. 1232 мааниси тандалган, анткени ал IPv6 эске алуу менен DNS жооптун өлчөмү минималдуу MTU маанисине (1280) туура келген максимум болуп саналат. Кардарга жоопторду кыскартуу үчүн жооп берген кыскартуу босогосунун параметринин мааниси да 1232ге чейин кыскарган.

PowerDNS Recursor 4.2деги башка өзгөрүүлөр:

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

PowerDNS долбоору ошондой эле алты айлык иштеп чыгуу циклин жарыялады, PowerDNS Recursor 4.3 кийинки негизги чыгарылыш 2020-жылдын январында күтүлүүдө. Негизги релиздердин жаңыртуулары бир жылдын ичинде чыгарылат, андан кийин кемчиликти оңдоо үчүн дагы алты ай болот. Ошентип, PowerDNS Recursor 4.2 бутагына колдоо көрсөтүү 2021-жылдын январына чейин созулат. Окшош өнүгүү циклинин өзгөрүүлөрү PowerDNS Authoritative Server продуктусу үчүн кабыл алынган, ал жакында 4.2 чыгарат деп күтүлүүдө.

PowerDNS рекурсорунун негизги өзгөчөлүктөрү:

  • Статистиканы алыстан чогултуу үчүн куралдар;
  • Заматта кайра баштоо;
  • Lua тилинде иштетүүчүлөрдү туташтыруу үчүн орнотулган кыймылдаткыч;
  • DNSSEC үчүн толук колдоо жана DNS64;
  • RPZ (Response Policy Zones) жана кара тизмелерди аныктоо мүмкүнчүлүгүн колдоо;
  • Спуфингге каршы механизмдер;
  • Чечүүчү натыйжаларды BIND зона файлдары катары жазуу мүмкүнчүлүгү.
  • Жогорку өндүрүмдүүлүктү камсыз кылуу үчүн FreeBSD, Linux жана Solaris'те (kqueue, epoll, /dev/poll) заманбап туташууну мультиплекстөө механизмдери, ошондой эле он миңдеген параллелдүү суроо-талаптарды иштетүүгө жөндөмдүү жогорку өндүрүмдүүлүктөгү DNS пакет анализдөөчүсү колдонулат.

Source: opennet.ru

Комментарий кошуу