Ang Chromium browser, ang umuunlad na open-source na magulang ng Google Chrome at ang bagong Microsoft Edge, ay nakatanggap ng makabuluhang negatibong atensyon para sa isang tampok na nilayon nang may mabuting layunin: sinusuri nito kung ang ISP ng user ay "nagnanakaw" ng mga hindi umiiral na resulta ng query sa domain .
Paano karaniwang ginagawa ang resolution ng DNS
Ang mga server na ito ay ang pinakamataas na awtoridad na dapat mong kontakin upang malutas ang .com, .net, atbp. upang sabihin nila sa iyo na ang frglxrtmpuf ay hindi isang top-level na domain (TLD).
Ang DNS, o Domain Name System, ay isang sistema kung saan maaaring lutasin ng mga computer ang mga hindi malilimutang domain name tulad ng arstechnica.com sa mga hindi gaanong user-friendly na IP address tulad ng 3.128.236.93. Kung walang DNS, hindi iiral ang Internet sa paraang magagamit ng mga tao, ibig sabihin ay isang tunay na problema ang hindi kinakailangang pagkarga sa imprastraktura sa itaas na antas.
Ang paglo-load ng isang modernong web page ay maaaring mangailangan ng hindi kapani-paniwalang bilang ng mga DNS lookup. Halimbawa, noong sinuri namin ang homepage ng ESPN, nagbilang kami ng 93 magkahiwalay na domain name, mula sa a.espncdn.com hanggang z.motads.com. Lahat ng mga ito ay kinakailangan para sa pahina upang ganap na mai-load!
Upang mapaunlakan ang ganitong uri ng workload para sa isang search engine na kailangang magsilbi sa buong mundo, ang DNS ay idinisenyo bilang isang multi-level na hierarchy. Sa tuktok ng pyramid na ito ay ang mga root server - bawat top-level na domain, gaya ng .com, ay may sariling pamilya ng mga server na pinakamataas na awtoridad para sa bawat domain sa ibaba ng mga ito. Isang hakbang pataas ng mga ito Ang mga server ay ang mga root server mismo, mula sa a.root-servers.net
sa m.root-servers.net
.
Gaano kadalas ito nangyayari?
Salamat sa multi-level na hierarchy ng caching ng imprastraktura ng DNS, napakaliit na porsyento ng mga query sa DNS sa mundo ang nakakaabot sa mga root server. Karamihan sa mga tao ay direktang nakakakuha ng kanilang impormasyon sa DNS resolver mula sa kanilang ISP. Kapag kailangang malaman ng device ng user kung paano makapunta sa isang partikular na website, ipapadala muna ang isang kahilingan sa isang DNS server na pinamamahalaan ng lokal na provider na iyon. Kung hindi alam ng lokal na DNS server ang sagot, ipinapasa nito ang kahilingan sa sarili nitong "mga forwarder" (kung tinukoy).
Kung walang naka-cache na tugon ang DNS server ng lokal na provider o ang βforwarding serverβ na tinukoy sa configuration nito, direktang itataas ang kahilingan sa authoritative domain server sa itaas ang sinusubukan mong i-convert. Kailan Π΄ΠΎΠΌΠ΅Π½.com
ito ay nangangahulugan na ang kahilingan ay ipinadala sa mga awtoritatibong server ng domain mismo com
, na matatagpuan sa gtld-servers.net
.
Sistema gtld-servers
, kung saan ginawa ang kahilingan, ay tumugon sa isang listahan ng mga authoritative name server para sa domain na domain.com, gayundin ng kahit isang link record na naglalaman ng IP address ng isang naturang name server. Susunod, ang mga tugon ay bumababa sa kadena - ipinapasa ng bawat forwarder ang mga tugon na ito pababa sa server na humiling sa kanila, hanggang sa tuluyang maabot ng tugon ang server ng lokal na provider at ang computer ng user. Lahat sila ay naka-cache ng tugon na ito upang hindi makagambala nang hindi kinakailangan sa mas mataas na antas ng mga sistema.
Sa karamihan ng mga kaso, nagtatala ang name server para sa domain.com ay mai-cache na sa isa sa mga forwarder na ito, kaya hindi maaabala ang mga root server. Gayunpaman, sa ngayon ay pinag-uusapan natin ang uri ng URL na pamilyar sa atin - ang isa na na-convert sa isang regular na website. Ang mga kahilingan sa Chrome ay nasa antas sa itaas ito, sa hakbang ng mga kumpol mismo root-servers.net
.
Pagsusuri ng pagnanakaw ng Chromium at NXDomain
Sinusuri ng Chromium "niloloko ba ako ng DNS server na ito?" account para sa halos kalahati ng lahat ng trapiko na umaabot sa kumpol ng mga root DNS server ng Verisign.
Ang Chromium browser, ang pangunahing proyekto ng Google Chrome, ang bagong Microsoft Edge, at hindi mabilang na hindi gaanong kilalang mga browser, ay gustong magbigay sa mga user ng kadalian ng paghahanap sa isang kahon, kung minsan ay tinatawag na "Omnibox." Sa madaling salita, ipinasok ng user ang parehong mga tunay na URL at mga query sa search engine sa parehong field ng teksto sa tuktok ng window ng browser. Gumagawa ng isa pang hakbang patungo sa pagpapasimple, hindi rin nito pinipilit ang user na ipasok ang bahagi ng URL gamit ang http://
o https://
.
Kahit na ito ay maginhawa, ang diskarte na ito ay nangangailangan ng browser na maunawaan kung ano ang dapat ituring na isang URL at kung ano ang dapat ituring na isang query sa paghahanap. Sa karamihan ng mga kaso ito ay medyo halata - halimbawa, ang isang string na may mga puwang ay hindi maaaring maging isang URL. Ngunit maaaring maging mas nakakalito ang mga bagay kapag isinasaalang-alang mo ang mga intranetβmga pribadong network na maaari ding gumamit ng mga pribadong nangungunang antas na domain upang malutas ang mga tunay na website.
Kung ang isang user sa intranet ng kanilang kumpanya ay nag-type ng "marketing" at ang intranet ng kumpanya ay may panloob na website na may parehong pangalan, pagkatapos ay magpapakita ang Chromium ng isang kahon ng impormasyon na nagtatanong sa user kung gusto nilang maghanap para sa "marketing" o pumunta sa https://marketing
. Maaaring hindi ito ang kaso, ngunit maraming ISP at pampublikong Wi-Fi provider ang "nag-hijack" sa bawat maling spelling ng URL, na nagre-redirect sa user sa ilang page na puno ng banner.
Random na henerasyon
Hindi gusto ng mga developer ng Chromium na makakita ang mga user sa mga regular na network ng kahon ng impormasyon na nagtatanong kung ano ang ibig nilang sabihin sa tuwing naghahanap sila ng isang salita, kaya nagpatupad sila ng pagsubok: Kapag naglunsad sila ng browser o nagpalit ng mga network, nagsasagawa ang Chromium ng mga DNS lookup sa tatlong random na nabuong "mga domain" sa pinakamataas na antas, pito hanggang labinlimang character ang haba. Kung ang alinman sa dalawa sa mga kahilingang ito ay bumalik na may parehong IP address, ipinapalagay ng Chromium na "kina-hijack" ng lokal na network ang mga error NXDOMAIN
, na dapat nitong matanggap, kaya isinasaalang-alang ng browser ang lahat ng iisang salita na query na ipinasok bilang mga pagtatangka sa paghahanap hanggang sa karagdagang abiso.
Sa kasamaang palad, sa mga network na hindi nakawin ang mga resulta ng mga query sa DNS, ang tatlong operasyong ito ay karaniwang tumataas sa pinakatuktok, hanggang sa mga root name server mismo: hindi alam ng lokal na server kung paano lutasin qwajuixk
, kaya ipinapasa ang kahilingang ito sa forwarder nito, na ganoon din ang ginagawa, hanggang sa wakas a.root-servers.net
o ang isa sa kanyang "mga kapatid" ay hindi mapipilitang magsabi ng "Paumanhin, ngunit hindi ito isang domain."
Dahil may humigit-kumulang 1,67*10^21 posibleng mga pekeng pangalan ng domain na mula pito hanggang labinlimang character ang haba, ang pinakakaraniwan bawat mula sa mga pagsubok na ito na isinagawa sa "tapat" na network, napupunta ito sa root server. Ang halaga nito ay kasing dami kalahati mula sa kabuuang pag-load sa root DNS, ayon sa mga istatistika mula sa bahaging iyon ng mga kumpol root-servers.net
, na pagmamay-ari ng Verisign.
Nauulit ang kasaysayan
Hindi ito ang unang pagkakataon na gumawa ng isang proyekto na may pinakamahusay na intensyon
Noong 2005, ang developer ng FreeBSD na si Poul-Henning, na nagmamay-ari din ng nag-iisang Stratum 1 Network Time Protocol server ng Denmark, ay nakatanggap ng hindi inaasahang at malaking bill para sa ipinadalang trapiko. Sa madaling sabi, ang dahilan ay isinulat ng mga developer ng D-Link ang mga address ng Stratum 1 NTP server, kabilang ang Kampa server, sa firmware ng linya ng switch, router at access point ng kumpanya. Agad nitong pinataas ang trapiko ng server ng Kampa ng siyam na beses, na naging sanhi ng pagbabago ng Danish Internet Exchange (Internet Exchange Point ng Denmark) mula sa "Libre" sa "$9 bawat taon."
Ang problema ay hindi dahil napakaraming D-Link router, ngunit ang mga ito ay "wala sa linya." Tulad ng DNS, dapat gumana ang NTP sa isang hierarchical form - Ang mga server ng Stratum 0 ay nagpapasa ng impormasyon sa mga server ng Stratum 1, na nagpapasa ng impormasyon sa mga server ng Stratum 2, at iba pa pababa sa hierarchy. Ang isang karaniwang home router, switch, o access point tulad ng isang D-Link na na-program na may mga NTP server address ay magpapadala ng mga kahilingan sa Stratum 2 o Stratum 3 server.
Ang proyekto ng Chromium, marahil na may pinakamabuting intensyon, ay kinopya ang problema sa NTP sa problema sa DNS, na nilo-load ang mga root server ng Internet ng mga kahilingang hindi nila dapat pangasiwaan.
May pag-asa para sa isang mabilis na solusyon
Ang proyekto ng Chromium ay may open source
Inaasahan na ang problema ay malapit nang malutas, at ang mga root DNS server ay hindi na kailangang tumugon sa tinatayang 60 bilyong huwad na mga query araw-araw.
Sa Mga Karapatan ng Pag-advertise
Mga epic na server - Ay
Pinagmulan: www.habr.com