EDNS

A Wikipédiából, a szabad enciklopédiából
(EDNS0 szócikkből átirányítva)
Nem tévesztendő össze az eDNS korábbi alternatív DNS-gyökérrel.

Az EDNS (Extension mechanisms for DNS) az internet egyik fontos építőeleme, a névfeloldást biztosító Domain Name System (DNS) protokoll több paraméterének méretét megnövelő specifikáció. Az eredeti DNS szabványába kódolt méretkorlátozások már gátolták, hogy az internet fejlesztői közössége új funkciókkal ruházza fel a szolgáltatást, ezért volt szükség a kiterjesztésükre. A DNS első, EDNS0-nak is nevezett bővítését az Internet Engineering Task Force 1999-ben publikálta az RFC 2671-ben.[1] Az EDNS0 majdani utódja, az EDNS0bis jelenleg az ötödik draftnál (tervezetnél) tart az IETF szabvány-előkészítési folyamatban.[2]

Motiváció[szerkesztés]

A tartománynévrendszert (DNS-t) az 1980-as évek első felében fejlesztették ki; azóta számos új funkcióval egészült ki, a korábbi verziókkal való visszamenőleges kompatibilitást mindvégig fenntartva.

Az alap DNS protokoll Flags („jelzőbitek”) mezőinek, visszatérési kódjainak, címketípusainak a méreteire vonatkozó korlátozásai nem tették lehetővé néhány kívánatos új funkció megvalósítását. Ráadásul, az UDP-n keresztül küldött DNS-üzenetek maximális mérete 512 bájtra korlátozódott, nem számítva az Internet Protocol (IP) és a szállítási réteg (itt: UDP) fejléceit.[3] Az áttérés virtuális áramkör-alapú, azaz Transmission Control Protocol (TCP) szerinti üzenetküldésre jelentősen megnövelné a többletterhelést (overhead). Ez komoly akadályt képezett a DNS bővítése előtt. 1999-ben Paul Vixie nyújtott be javaslatot a DNS kiterjesztésére, hogy bővíteni lehessen új jelzőbitekkel és válaszkódokkal, és olyan módon támogasson nagyobb méretű válaszüzeneteket, hogy a korábbi implementációkkal való visszamenőleges kompatibilitás se vesszen el.

Mechanizmus[szerkesztés]

Mivel a kompatibilitás felrúgása nélkül a DNS-fejléchez nem lehetett új jelzőbiteket adni, az új formátum megkülönböztetését OPT erőforrásrekordok, opcionális ún. pszeudo-erőforrásrekordok hozzáadásával érték el. Ezek a zónafájlokban meg nem jelenő, „csak a vezetéken” (wire-only) előforduló vezérlőrekordok. Az opcionális rekordokat a DNS-végpontok szúrják be a kommunikáció során, hogy jelezzék, az adatátvitel EDNS-sel zajlik. Ez transzparens módon megoldja a visszafelé kompatibilitást, hiszen a régebbi, EDNS-t nem támogató ügyfelek egyszerűen nem törődnek az új rekordtípussal. A DNS-ben részt vevő félnek csak akkor szabad EDNS-lekérdezést küldenie a kiszolgáló felé, ha képes az EDNS-válaszok kezelésére is; a DNS-kiszolgálók pedig csak akkor küldhetnek EDNS-válaszokat, ha azokat a megfelelő OPT rekordokat tartalmazó lekérdezés előzte meg.

Az OPT pszeudorekord helyet biztosít további jelzőbiteknek (16, ebből jelenleg egyet használnak) és 8 bittel megnöveli a válaszkód (response code) hosszát, 12 bitre. Az OPT rekordban a küldő specifikálja azt az UDP csomagméretet, amit még fogadni képes. Jelen van még az OPT rekordban a protokoll verziószáma (jelenleg 0); a változó hosszúságú adatmező lehetővé teszi a protokoll későbbi verzióiban egyéb információk kódolását. Az eredeti DNS protokoll két címketípust írt le, melyeket a DNS-csomag első két bitje határozott meg (RFC 1035): 00 (standard label; szabványos címke) és 11 (compressed label; tömörített címke). Az EDNS bevezeti a 01-es kódú, extended label-t (kiterjesztett címke): az első bájt további hat bitje segítségével 63 új kiterjesztett címke definiálható a jövőben.

Példa[szerkesztés]

Példa egy OPT pszeudo-erőforrásrekordra, ahogy azt a Domain Information Groper (dig) eszköz listázza:

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags: do; udp: 4096

Alkalmazásai[szerkesztés]

Az EDNS alapfeltétele a biztonságos DNS-kiterjesztés, a DNSSEC megvalósításának.[4]

Problémák[szerkesztés]

A gyakorlatban nehézségek léphetnek föl az EDNS-csomagok tűzfalakon való áthaladásánál, mivel egyes tűzfalak feltételezik a maximum 512 bájtos DNS-üzenethosszt és blokkolják a nagyobb csomagokat.

Az EDNS bevezetésével megjelent a szolgáltatásmegtagadással járó támadások új fajtája, a DNS amplification (DNS-erősítés); ennek alapgondolata, hogy az EDNS-ben a lekérdezés kisméretű UDP-csomagjára viszonylag nagyon nagy válaszcsomagok érkezhetnek.

Jegyzetek[szerkesztés]

  1. RFC 2671, Extension Mechanisms for DNS (EDNS0), P. Vixie, The Internet Society (August 1999)
  2. Extension Mechanisms for DNS (EDNS0) draft-ietf-dnsext-rfc2671bis-edns0-05
  3. RFC 1035, Domain Names - Implementation and Specification, P. Mockapetris (November 1987)
  4. RFC 4035, Protocol Modifications for the DNS Security Extensions, R. Arends, Telematica Instituut, 2005. Section 4.1 EDNS Support

Fordítás[szerkesztés]

  • Ez a szócikk részben vagy egészben az Extension mechanisms for DNS című angol Wikipédia-szócikk ezen változatának fordításán alapul. Az eredeti cikk szerkesztőit annak laptörténete sorolja fel. Ez a jelzés csupán a megfogalmazás eredetét és a szerzői jogokat jelzi, nem szolgál a cikkben szereplő információk forrásmegjelöléseként.

Kapcsolódó szócikkek[szerkesztés]

További információk[szerkesztés]