PowerDNS Recursor 4.2 және DNS жалауша күні 2020 бастамасының шығарылымы

Бір жарым жылдан кейін даму ұсынылды кэштеу DNS серверін шығару PowerDNS рекурсоры 4.2, рекурсивті атауды шешуге жауапты. PowerDNS рекурсоры PowerDNS өкілетті серверімен бірдей код базасында құрастырылған, бірақ 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.14EDNS жалаушалары бар сұрауларға қате жауап берген беделді серверлерге арналған уақытша шешімдер жойылды. Бұрын, егер EDNS жалаушалары бар сұрауға белгілі бір уақыт ішінде жауап берілмесе, DNS сервері кеңейтілген жалаушаларға қолдау көрсетілмейді деп есептеді және сұрауды EDNS жалаушалары жоқ қайта жіберді. Бұл әрекет енді өшірілді, себебі мұндай кодтың болуы пакетті қайта жіберуге байланысты кідірістің артуына, желі жүктемесінің жоғарылауына және желі ақауларына байланысты жауап алынбаған кездегі екіұштылыққа әкелді. Ол сонымен қатар DDoS азайтуға арналған DNS cookie файлдары сияқты 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 пакеттеріне қатысты мәселелерді шешеді және алдыңғы 1680 байт шегінің орнына 1232 байт EDNS буферінің өлшеміне (edns-outgoing-bufsize) ауысады, бұл UDP пакетінің жоғалу ықтималдығын айтарлықтай төмендетуі керек. 1232 мәні таңдалды, себебі ол DNS жауап өлшемі, соның ішінде IPv6, ең төменгі MTU (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 ішкі желісін пайдалануды таңдамалы басқаруға арналған параметрлерді қосады:ecs-add-for" шығыс сұраулар үшін ECS жүйесінде IP пайдаланылатын желі маскаларының тізімімен. Көрсетілген маскаларға сәйкес келмейтін мекенжайлар үшін "директивада" көрсетілген жалпы мекенжай пайдаланылады.ecs-scope-нөл-мекен-жайы«. Директивасы арқылы»incoming-edns-ішкі желіні пайдаланыңыз» толтырылған ECS мәндері бар кіріс сұраулары ауыстырылмайтын ішкі желілерді анықтауға болады;
  • Секундына көп сұраныстарды (100 мыңнан астам) өңдейтін серверлер үшін «директивадистрибьютор-жіптер", ол кіріс сұрауларын қабылдауға және оларды жұмысшы ағындары арасында таратуға арналған ағындардың санын анықтайды (тек " режимін пайдаланған кезде мағынасы бар.pdns-distributes-queries=иә»).
  • Қосылған параметр public-suffix-list-file көмегімен өз файлыңызды анықтау үшін жалпы жұрнақтардың тізімі PowerDNS Recursor ішіндегі кірістірілген тізімнің орнына пайдаланушылар өздерінің ішкі домендерін тіркей алатын домендер.

PowerDNS жобасы сонымен қатар 2020 жылдың қаңтарында күтілетін келесі негізгі шығарылым PowerDNS Recursor 4.3 шығарылымымен алты айлық әзірлеу цикліне көшу туралы хабарлады. Негізгі шығарылымдарға арналған жаңартулар бір жыл ішінде шығарылады, содан кейін тағы алты айлық осалдықтар түзетіледі. Сондықтан PowerDNS Recursor 4.2 тармағына қолдау көрсету 2021 жылдың қаңтарына дейін жалғасады. Осыған ұқсас даму циклінің өзгерісі 4.2 шығарылымы жақын арада күтілетін PowerDNS өкілетті сервері үшін де қабылданды.

PowerDNS рекурсорының негізгі мүмкіндіктері:

  • Қашықтан статистиканы жинауға арналған құралдар;
  • Лезде қайта іске қосу;
  • Lua тілінде өңдеушілерді қосуға арналған кіріктірілген қозғалтқыш;
  • Толық DNSSEC қолдауы және DNS64;
  • RPZ (Response Policy Zones) қолдауы және қара тізімдерді анықтау мүмкіндігі;
  • Спуфингке қарсы механизмдер;
  • Ажыратымдылық нәтижелерін BIND аймағы файлдары ретінде жазу мүмкіндігі.
  • FreeBSD-де жоғары өнімділікті қамтамасыз ету үшін заманауи қосылымды мультиплекстеу механизмдері қолданылады, Linux және Solaris (kqueue, epoll, /dev/poll), сондай-ақ ондаған мың параллель сұраныстарды өңдеуге қабілетті жоғары өнімді DNS пакеттік талдаушысы.

Ақпарат көзі: opennet.ru

DDoS қорғауы бар сайттар үшін сенімді хостинг, VPS VDS серверлерін сатып алыңыз 🔥 DDoS қорғанысы, VPS VDS серверлері бар сенімді веб-сайт хостингін сатып алыңыз | ProHoster