Кіріспе
Domain Name System Extension Mechanisms for DNS (EDNS) - Domain Name System (DNS) протоколының бірнеше параметрлерінің өлшемін кеңейту үшін арнайы сипаттама, ол протоколдың функционалдығын арттыру үшін Интернет-инженерлік қоғамдастық тым шектеулі деп санайтын өлшем шектеулері болды. Бірінші кеңейтулер топтамасын 1999 жылы Internet Engineering Task Force жариялады , ол EDNS0 деп те аталады , 2013 жылы EDNS0 деп қысқартумен жаңартылды .
Extension Mechanisms for DNS (EDNS) is a specification for expanding the size of several parameters of the Domain Name System (DNS) protocol which had size restrictions that the Internet engineering community deemed too limited for increasing functionality of the protocol. The first set of extensions was published in 1999 by the Internet Engineering Task Force as , also known as EDNS0 which was updated by in 2013 changing abbreviation slightly to EDNS(0).
Мотивация
Домендік атаулар жүйесі алғаш рет 1980 жылдардың басында жасалды. Содан бері ол бірте-бірте жаңа мүмкіндіктермен жетілдірілді, сонымен бірге хаттаманың бұрынғы нұсқаларымен үйлесімділігін сақтады. DNS-тің негізгі протоколында бірнеше жалаушалар өрісінің, қайтару кодтарының және белгілер түрлерінің мөлшері бойынша шектеулер кейбір қажетті функцияларды қолдауға кедергі келтірді. Сонымен қатар, UDP арқылы тасымалданатын DNS хабарламалары 512 байтқа шектелген, Интернет протоколы (IP) және транспорттық қабаттың баслығы ескерілмеген. Трансмиссияны басқару протоколын (TCP) пайдалана отырып, виртуалды контурлы тасымалдауға жүгіну, жалпы шығындарды едәуір арттырады. Бұл DNS-ке жаңа мүмкіндіктер қосуға үлкен кедергі болды. 1999 жылы Пол Викси DNS-ті кеңейтуді ұсынды, бұл жаңа жалаушалар мен жауап кодтарын енгізуге және бұрынғы іске асырулармен кері үйлесімділік шеңберінде ұзын жауаптарға қолдау көрсетуге мүмкіндік береді.
Механизм
DNS-басында жаңа жалаушалар қосылмағаны үшін, EDNS DNS-хабарламаларға DNS-хабарламаның "қосымша деректер" бөлімінде қамтылған жалған ресурстық жазбалар ("жалған RR") түрінде ақпаратты қосады. Бұл бөлім сұраныс пен жауаптарда бар екенін ескеріңіз. EDNS бір ғана RR псевдо-түрін енгізеді: OPT. Псевдо RR ретінде OPT RR түрі ешқашан ешқандай аймақтық файлда пайда болмайды; олар тек DNS қатысушылары жасаған хабарламаларда ғана болады. Механизм артқа қарай үйлесімді, өйткені ескі DNS-респондерлері сұраныстағы белгісіз OPT түрінің кез келген RR-ін елемеді, ал жаңа DNS-респондер сұраныста болмаса, жауапқа ешқашан OPT-ті енгізбейді. Сұрау салуда OPT-тің болуы жауапта OPT-мен не істеу керектігін білетін жаңа өтініш берушіге нұсқайды. OPT псевдо-жазуы 16 жалаушаға дейін орын береді және жауап кодының кеңістігін кеңейтеді. UDP пакеттерінің жалпы көлемі мен нұсқа нөмірі (қазіргі уақытта 0) OPT жазбасында қамтылған. Протоколдың болашақ нұсқаларында қосымша ақпаратты тіркеуге мүмкіндік беретін өзгермелі ұзындығы бар деректер өрісі. Алғашқы DNS протоколы екі белгі түрін ұсынды, олар белгідің ұзындығы октеті (RFC 1035) алғашқы екі битімен анықталады: 00 (стандартты белгі) және 11 (сығымдалған белгі). EDNS 01 типті белгілерді кеңейтілген белгі ретінде енгізеді. Бірінші байттың төменгі 6 биті 63 жаңа кеңейтілген белгілерді анықтауға пайдаланылуы мүмкін.
DNSSEC
EDNS DNS қауіпсіздік кеңейтулерін (DNSSEC) іске асыру үшін өте маңызды.
EDNS толтыруы
DNS-хабарламаның айналасында қанша толтыру болуы керектігін белгілеу үшін EDNS пайдалану стандарттары бар. DNS шифрлау кезінде төсемдер өте маңызды, өйткені төсемсіз сұрау салынған домендік атауды сұраудың шифрланған өлшемі бойынша анықтау мүмкін.
EDNS сақталады
EDNS TCP қосылымының қанша уақыт өмір сүруін көрсету үшін қолданылады.
EDNS клиентінің ішкі желісі (ECS)
EDNS сонымен қатар клиенттердің географиялық орналасуы туралы жалпы ақпаратты EDNS Клиент субжелісі (ECS) нұсқасы түрінде шешкіштерден атау серверлеріне жіберу үшін қолданылады.
Мәселелер
Практикада EDNS-ті өрт қабырғаларын аралайтын кезде қиындықтар туындауы мүмкін, өйткені кейбір өрт қабырғалары DNS хабарламасының ең үлкен ұзындығын 512 байт деп санайды және ұзын DNS пакеттерін бұғаттайды. EDNS енгізу DNS күшейту шабуылдарын, қызмет көрсетуден бас тарту шабуылдарының бір түрін жүзеге асыруға мүмкіндік берді, өйткені EDNS салыстырмалы түрде кішкентай сұрау салу пакеттеріне қарағанда өте үлкен жауап пакеттерін жеңілдетеді. IETF DNS кеңейтулер жұмыс тобы (dnsext) EDNS0-ді жетілдіру бойынша жұмысты аяқтады, ол RFC 6891 ретінде жарияланды.