Сүлжээний хамгийн ойрын зангилааг сонгох

Сүлжээний хамгийн ойрын зангилааг сонгох

Сүлжээний хоцрогдол нь сүлжээтэй харилцаж буй програмууд эсвэл үйлчилгээний гүйцэтгэлд ихээхэн нөлөөлдөг. Хоцролт бага байх тусам гүйцэтгэл өндөр болно. Энэ нь ердийн вэбсайтаас эхлээд мэдээллийн сан эсвэл сүлжээний хадгалалт хүртэлх бүх сүлжээний үйлчилгээнд үнэн юм.

Сайн жишээ бол Domain Name System (DNS) юм. DNS нь угаасаа тархсан систем бөгөөд эх зангилаа нь дэлхий даяар тархсан байдаг. Аливаа вэбсайт руу нэвтрэхийн тулд эхлээд түүний IP хаягийг авах хэрэгтэй.

Би домэйн бүсийн "мод"-оор дамжих үйл явцыг бүхэлд нь тайлбарлахгүй, гэхдээ домэйныг IP хаяг болгон хөрвүүлэхийн тулд бидэнд энэ бүх ажлыг гүйцэтгэх DNS шийдүүлэгч хэрэгтэй гэдгийг хязгаарлах болно. бид.

Тэгэхээр, та DNS шийдвэрлэх хаягийг хаанаас авах вэ?

  1. ISP нь DNS шийдэгчийнхээ хаягийг өгдөг.
  2. Интернетээс нийтийн шийдвэрлэгчийн хаягийг олоорой.
  3. Өөрөө авах эсвэл гэрийн чиглүүлэгчдээ суулгасан чиглүүлэгчийг ашиглана уу.

Эдгээр сонголтуудын аль нэг нь танд World Wide Web дээр хайхрамжгүй аялах боломжийг олгоно, гэхдээ хэрэв танд олон тооны домэйныг IP руу хөрвүүлэх шаардлагатай байгаа бол шийдэгчийг сонгохдоо илүү болгоомжтой хандах хэрэгтэй.

Би аль хэдийн бичсэнчлэн ISP шийдэгчээс гадна олон нийтийн хаягууд байдаг, жишээлбэл, та энэ жагсаалтыг шалгаж болно. Тэдгээрийн зарим нь анхдагч шийдэгчээс илүү сүлжээний холболттой тул илүү тохиромжтой байж болох юм.

Жагсаалт бага бол та үүнийг гараар хялбархан "ping" хийж, хойшлуулах хугацааг харьцуулж болно, гэхдээ хэрэв та дээр дурдсан жагсаалтыг авбал энэ даалгавар тааламжгүй болно.

Тиймээс, энэ ажлыг хөнгөвчлөхийн тулд хуурамч синдромоор дүүрсэн би Go дээрх санаагаа нотлох баримт бичгийг зурав. ойртох.

Жишээлбэл, би шийдэгчдийн жагсаалтыг бүхэлд нь шалгахгүй, зөвхөн хамгийн алдартайг нь хязгаарлах болно.

$ get-closer ping -f dnsresolver.txt -b=0 --count=10
Closest hosts:
	1.0.0.1 [3.4582ms]
	8.8.8.8 [6.7545ms]
	1.1.1.1 [12.6773ms]
	8.8.4.4 [16.6361ms]
	9.9.9.9 [40.0525ms]

Нэгэн цагт би өөрөө шийдэгч сонгохдоо зөвхөн үндсэн хаягуудыг (1.1.1.1, 8.8.8.8, 9.9.9.9) шалгахаар хязгаарлагдаж байсан - эцэст нь тэд үнэхээр үзэсгэлэнтэй бөгөөд та үүнээс юу хүлээж болох вэ? муухай нөөц хаягууд.

Гэхдээ сааталыг харьцуулах автомат арга байдаг тул жагсаалтыг яагаад өргөжүүлж болохгүй гэж ...

Туршилтаас харахад "нөөц" Cloudflare хаяг нь надад илүү тохиромжтой, учир нь энэ нь 1.1.1.1-ийг залгасан msk-ix-ээс хамаагүй илүү ойр байдаг spb-ix-д холбогдсон.

Таны харж байгаагаар ялгаа нь маш чухал бөгөөд учир нь хамгийн хурдан гэрлийн туяа хүртэл Санкт-Петербургээс Москва хүртэл 10 мс хүрэхгүй байна.

Энгийн ping-ээс гадна PoC нь http, tcp зэрэг бусад протоколуудын саатал, мөн тодорхой шийдүүлэгчээр дамжуулан домэйныг IP руу хөрвүүлэх хугацааг харьцуулах боломжтой.

Илүү богино замтай хостуудыг олоход хялбар болгохын тулд traceroute ашиглан хостуудын хоорондох зангилааны тоог харьцуулах төлөвлөгөөтэй байна.

Код нь бүдүүлэг, олон тооны шалгалт байхгүй, гэхдээ энэ нь цэвэр өгөгдөл дээр маш сайн ажилладаг. Би ямар ч санал хүсэлтэд талархах болно, одууд github, хэрэв хэн нэгэнд төслийн санаа таалагдсан бол хувь нэмэр оруулагч болоход тавтай морилно уу.

Эх сурвалж: www.habr.com

сэтгэгдэл нэмэх