DNS

Available

Kasaysayan ng DNS

Noong dekada 70, napagod ang mga tao sa pag-alala sa mga IP address ng mga server na gusto nilang i-access. Kasabay nito, nabuo ang ideya na gumamit ng mas simple at hindi malilimutang pangalan sa halip na isang numeric na address ng host.

Ang mga manggagawa sa Stanford Research Institute ay nakabuo ng isang text file na HOSTS.TXT , na naglalaman ng listahan ng mga string name at ang kanilang mga katumbas na numerical address ng mga computer sa ARPANET.

Manu-manong itinalaga ang mga address. Upang humiling ng hostname at address o magdagdag ng computer sa master file, nakipag-ugnayan ang mga user sa network information center ng Stanford sa pamamagitan ng telepono sa mga oras ng negosyo.

Noong unang bahagi ng 1980s, ang pagpapanatili ng isang solong, sentralisadong host table ay naging mabagal at masalimuot, at ang lumalagong network ay nangangailangan ng isang awtomatikong sistema ng pagbibigay ng pangalan upang harapin ang mga isyu sa teknikal at tauhan.

Noong 1984, apat na estudyante ng UC Berkeley ang sumulat ng unang bersyon ng hierarchical domain name system. Ito ay malawak na ginagamit ngayon, lalo na sa mga sistema ng Unix, at ito pa rin ang pinakamalawak na ginagamit na DNS software sa Internet.

Panimula sa DNS

Ang Domain Name System (DNS) ay isang sistema ng pamamahagi para sa pag-iimbak at pagkuha ng impormasyon tungkol sa mga domain. Ito ay pinakakaraniwang ginagamit upang makakuha ng IP address mula sa isang host name (computer o device), kumuha ng impormasyon sa pagruruta ng mail, at/o maghatid ng mga host para sa mga protocol sa isang domain.

Ang sistema ay inayos sa anyo ng isang tiyak na hierarchy ng mga DNS server na nakikipag-ugnayan ayon sa isang tiyak na protocol. Ang batayan para sa pag-unawa sa DNS ay ang pag-unawa sa hierarchical na istraktura ng pangalan at mga zone.

Ang bawat server na responsable para sa isang domain zone ay maaaring maglipat ng responsibilidad para sa isang karagdagang bahagi ng domain sa isa pang server, na ginagawang posible na magtalaga ng responsibilidad para sa kaugnayan ng impormasyon sa mga server ng iba't ibang mga organisasyon na responsable lamang para sa "kanilang" bahagi ng domain name.

Naglalaman ang DNS system ng hierarchy ng mga DNS server na naaayon sa zone hierarchy. Ang bawat zone ay sinusuportahan ng hindi bababa sa isang authoritative DNS server na nagho-host ng impormasyon tungkol sa domain.

Mahalaga! Ang pangalan at IP address ay hindi kinakailangang nauugnay sa isa't isa bilang isa sa isa. Ang isang IP address ay maaaring magkaroon ng maraming domain name, na nagbibigay-daan sa iyong suportahan ang maraming website sa isang computer (ito ay tinatawag na shared hosting ).

Maaari rin itong maging kabaligtaran - maraming mga IP address ang maaaring iugnay sa isang domain name: nagbibigay-daan ito sa iyo na lumikha ng load balancing at aktibong ginagamit sa mga network ng CDN .

Upang mapataas ang katatagan ng system, maraming mga server na naglalaman ng magkatulad na impormasyon ang ginagamit, at ang protocol ay may paraan upang mapanatili ang synchronism ng impormasyon na matatagpuan sa iba't ibang mga server. Mayroong 13 root server, ang kanilang mga address ay halos hindi nagbabago.

Interesting! Gumagamit ang DNS protocol ng TCP o UDP port 53 upang tumugon sa mga query. Ayon sa kaugalian, ang mga kahilingan at tugon ay ipinapadala bilang isang datagram ng UDP. Ginagamit ang TCP kapag ang laki ng data ng tugon ay lumampas sa 512 bytes.

Mga tala ng DNS

Ang DNS server ay nag-iimbak ng isang set ng mga parameter para sa bawat domain name. Ito ay mga talaan tungkol sa domain name, IP address nito, pati na rin ang iba't ibang impormasyon ng serbisyo.

Mayroong ilang dosenang mga entry sa kabuuan, kaya isasaalang-alang lamang namin ang pinakasikat sa kanila:

A Address IP address
AAAA Address IPv6 Address sa IPv6 na format
CNAME Kanonikal na pangalan Canonical na pangalan para sa alias
MX tagapagpalit ng mail Mail gateway address para sa domain
NS nameserver Ang address ng node na responsable para sa domain zone
SOA Simula ng awtoridad Indikasyon ng awtoridad ng impormasyon
SRV pagpili ng server Pagtukoy sa Mga Lokasyon ng Server para sa Mga Serbisyo
PTR panturo Tugma sa pangalan ng address - Baliktarin ang tugma para sa A at AAAA
TXT string ng teksto Sumulat ng arbitrary na binary data, hanggang 255 bytes

Ang pinaka-kawili-wili dito ay:

  • Binibigyang-daan ka ng A record na tumukoy ng IP address na tumutugma sa isang domain.
  • Pinapayagan ka ng CNAME na magtakda ng kasingkahulugan para sa pangalan, halimbawa, www.codegym.cc == codegym.cc.
  • Ang MX record ay naglalaman ng impormasyon tungkol sa mail server: ano ang gagawin kung may dumating na sulat sa xxx@codegym.cc.
  • NS - nagpapahiwatig ng address ng DNS server, na naglalaman ng impormasyon sa domain na ito. Kapaki-pakinabang kapag ang mga tala ay naka-cache at naka-imbak sa mga hindi katutubong node.

Paghahanap ng IP Address

Tingnan natin kung paano gumagana ang DNS system.

Sabihin nating nag-type ka ng api.codegym.cc sa iyong browser. Makikipag-ugnayan ang browser sa lokal na serbisyo ng DNS at hihilingin sa iyo na bigyan ito ng IP address para sa domain ng api.codegym.cc. Narito ang susunod na mangyayari...

Una, tinitingnan ng serbisyo ng DNS kung ang domain na ito ay nasa lokal na file ng mga host sa iyong computer. Kung mayroon, kinukuha nito ang IP address mula dito. Kung hindi, nagpapadala ito ng kahilingan sa DNS server na kilala nito: "Ano ang IP address ng api.codegym.cc?".

Gayunpaman, ang DNS server ay maaaring walang alam hindi lamang tungkol sa hiniling na pangalan, ngunit kahit na tungkol sa buong domain ng codegym.cc. Sa kasong ito, nakikipag-ugnayan ang server sa root server - halimbawa, 198.41.0.4. Sinasabi ng server na ito: "Wala akong impormasyon tungkol sa address na ito, ngunit alam ko na ang 204.74.112.1 ay responsable para sa ru zone."

Pagkatapos ay ipinapadala ng DNS server ang kahilingan nito sa 204.74.112.1, ngunit tumugon ito: "Wala akong impormasyon tungkol sa server na ito, ngunit alam ko na ang 207.142.131.234 ay responsable para sa codegym.cc zone.". Sa wakas, ang parehong kahilingan ay ipinadala sa isang ikatlong DNS server at tumatanggap ng isang tugon - isang IP address, na ipinadala sa kliyente, iyon ay, ang browser.

Sa kasong ito, sa proseso ng paghahanap para sa isang IP ayon sa pangalan, ang mga sumusunod na patakaran ay gumana:

  • Ang browser ay nagpadala ng isang recursive na kahilingan sa isang kilalang DNS server (bilang tugon sa ganitong uri ng kahilingan, ang server ay dapat magbalik ng isang IP address, o isang walang laman na tugon at isang NXDOMAIN error code).
  • Ang DNS server na nakatanggap ng kahilingan mula sa browser ay nagpadala ng mga hindi recursive na kahilingan nang magkakasunod, kung saan nakatanggap ito ng mga tugon mula sa iba pang mga DNS server, hanggang sa nakatanggap ito ng tugon mula sa server na responsable para sa hiniling na zone.
  • Ang natitirang mga DNS server na binanggit ay nagpoproseso ng mga kahilingan nang hindi recursively (at malamang na hindi naproseso ang mga kahilingan nang paulit-ulit, kahit na ang naturang kinakailangan ay nasa kahilingan).

Minsan posible para sa hiniling na server na magpadala ng recursive query sa isang "upstream" na DNS server at maghintay para sa isang handa na tugon.

Mahalaga! Sa pagpoproseso ng recursive query, ang lahat ng mga tugon ay dumadaan sa DNS server, at nakakakuha ito ng pagkakataong i-cache ang mga ito. Ang paulit-ulit na kahilingan para sa parehong mga pangalan ng domain ay karaniwang hindi lalampas sa cache ng server, at ang mga tawag sa ibang mga server ay hindi nangyayari.

Ang pinapayagang oras ng cache para sa mga tugon ay kasama ng mga tugon (TTL field ng resource record).

file ng host

Napansin namin na ang unang paghahanap ay nasa local hosts file. Ito ang tagapagmana ng HOSTS.TXT file, na naimbento noong panahon ng ARPANET. Oo, umiiral pa rin ito at ginagamit pa rin.

Ito ay matatagpuan sa kahabaan ng landas:

  • /etc/hosts sa Linux.
  • %SystemRoot%\system32\drivers\etc\hosts sa Windows.
  • /system/etc/hosts sa android.

Karaniwan, ang file ay may kasamang kahulugan ng lokasyon para sa localhost node:

127.0.0.1   	localhost

Ang istraktura nito ay napaka-simple: una ay ang IP address, pagkatapos ay ang domain name.

Kapaki-pakinabang

Gamit ang file ng mga host, posibleng i-filter ang mga ad sa pamamagitan ng pag-redirect ng mga address ng domain ng mga banner sa address na 127.0.0.0, 127.0.0.1 o 0.0.0.0.

Karaniwang hindi inirerekomenda ang paggamit ng 127.0.0.1, dahil nagreresulta ito sa timeout ng pagtugon at mga nauugnay na pagkaantala kung wala ang server o mali ang pagkaka-configure. At kung imamapa mo ang anumang domain ng advertising sa IP address na 0.0.0.0, ang lahat ng mga kahilingan dito ay agad na mahuhulog).

Mga pampublikong DNS server

Karaniwan kang nakakakuha ng DNS server kasama ng iyong serbisyo sa internet kapag ikinonekta mo ito. Ngunit ang ganitong libreng DNS server ay hindi palaging ang pinakamahusay na pagpipilian. Bukod dito, maaaring hindi mo gustong magpadala ng query na may domain name sa tuwing bibisita ka sa isang site sa DNS server ng iyong ISP.

Samakatuwid, mas gusto ng maraming tao na lumipat sa mga pampublikong libreng DNS server. Una, napakabilis nila at may malaking cache ng mga domain name. Makakakuha ka ng mas mabilis na pag-load ng site at uptime na may kaunting pagkakataon ng mga teknikal na problema.

Pangalawa, kaligtasan. Maaaring harangan ng ilang serbisyo ng DNS ang pag-access sa phishing at mga nakakahamak na site at mag-alok ng pag-filter ng nilalaman upang maprotektahan ang mga bata mula sa hindi naaangkop na nilalaman online.

Ang ganitong mga DNS server ay maaari pang labanan ang mga scammer. Halimbawa, pumunta ka sa isang pekeng website ng bangko, at hindi ibibigay sa iyo ng DNS server ang IP address ng mga scammer, ngunit ang serbisyong pangseguridad nito.

Listahan ng mga naturang server

cloudflare 1.1.1.1
1.0.0.1
Nangangako ang Cloudflare na hindi ito gagamit ng data ng bisita upang maghatid ng mga ad at hinding-hindi magsu-burn sa disk ng mga source IP address ng kahilingan.
Google Public DNS 8.8.8.8
8.8.4.4
Nag-iimbak ng kumpletong impormasyon tungkol sa IP address ng humihiling na device nang humigit-kumulang 24-48 oras para sa pag-troubleshoot at diagnostics
Comodo Secure DNS 8.26.56.26
8.20.247.20
Bina-block ang mga site ng phishing, ngunit nagbabala rin kung sinusubukan mong bisitahin ang mga site na may malware, spyware
Yandex.DNS 77.88.8.8
77.88.8.1
Libreng serbisyo ng DNS mula sa isang sikat na search engine ng Russia
Mga komento
  • Sikat
  • Bago
  • Luma
Dapat kang naka-sign in upang mag-iwan ng komento
Wala pang komento ang page na ito