RIPE Atlas

Усім добрага часу сутак! Свой дэбютны артыкул на habr жадаю прысвяціць вельмі цікавай тэме - сістэме кантролю якасці сеткі Інтэрнэт RIPE Atlas. Часткова поле маіх інтарэсаў закранаюць пытанні даследавання Інтэрнэту ці кіберпрасторы (тэрмін імкліва набірае папулярнасць, асабліва ў навуковых колах). Матэрыялаў па RIPE Atlas у інтэрнэце, у тым ліку на habr, дастаткова, але мне яны здаліся недастаткова цэласнымі. Па большай частцы ў артыкуле выкарыстоўвалася інфармацыя з афіцыйнага сайта RIPE Atlas і ўласныя меркаванні.

RIPE Atlas

замест прадмовы

Рэгіянальным інтэрнэт рэгістратарам (RIR), поле адказнасці якога распаўсюджваецца на Еўропу, Цэнтральную Азію і Блізкі Усход з'яўляецца RIPE NCC (Réseaux IP Européens Network Coordination Centre - Сеткавы каардынацыйны цэнтр Еўрапейскіх IP сетак). RIPE NCC - некамерцыйная арганізацыя, размешчаная ў Нідэрландах. Падтрымлівае працу Інтэрнету. Дае IP-адрасы і нумары аўтаномных сістэм мясцовым інтэрнэт правайдэрам і буйным арганізацыям.

Адным з вядучых праектаў RIPE NCC, накіраваных на даследаванне стану Інтэрнэту, з'яўляецца RIPE Atlas (пачаты ў канцы 2010 года), які стаў развіццём Службы тэставага вымярэння трафіку (Test Traffic Measurement Service), якая спыніла сваю працу ў 2014 годзе.

RIPE Atlas - глабальная сетка датчыкаў, якія вырабляюць актыўныя вымярэнні стану Інтэрнэту. У цяперашні час у сетцы RIPE Atlas тысячы датчыкаў і іх лік стала расце. RIPE NCC агрэгуе збіраныя дадзеныя і ўмоўна бясплатна падае іх у зручным выглядзе карыстальнікам.

Развіццё сеткі адбываецца на прынцыпе добраахвотнай усталёўкі датчыкаў карыстачамі ў сваёй інфраструктуры, завошта выдаюцца «крэдыты», якія можна выдаткаваць на правядзенне якія цікавяць вымярэнняў з выкарыстаннем іншых датчыкаў.

Як правіла RIPE Atlas выкарыстоўваюць:

  • для адсочвання даступнасці сваёй сеткі з розных кропак у Інтэрнеце;
  • для даследавання і ўхіленні непаладак у сеткі з дапамогай хуткай і гнуткай праверкі падлучэння;
  • у сістэме маніторынгу ўласнай сеткі;
  • для маніторынгу даступнасці інфраструктуры DNS;
  • праверкі падключэння па пратаколе IPv6.

RIPE Atlas

Як ужо казаў, RIPE Atlas уяўляе сабой сістэму датчыкаў, якія размешчаны ў сетцы Інтэрнэт і знаходзяцца пад адзіным адміністрацыйным кіраваннем. Апроч звычайных датчыкаў (Probes) бываюць больш прасунутыя – якары (Anchors).

На сярэдзіну 2020 года сістэма RIPE Atlas налічвае больш за 11 тысяч актыўных датчыкаў і больш за 650 актыўных якароў, якія ў сукупнасці вырабляюць больш за 25 тысяч вымярэнняў і атрымліваюць больш за 10 тысяч вынікаў у секунду.

На графіках ніжэй паказаны рост колькасці датчыкаў і якароў.

RIPE Atlas

RIPE Atlas

А на наступных малюнках прадстаўлена карта Міра з указаннем месцазнаходжання датчыкаў і якароў, адпаведна.

RIPE Atlas

RIPE Atlas

Нягледзячы на ​​рэгіянальны статут RIPE NCC, сетка RIPE Atlas пакрывае практычна ўвесь мір, пры гэтым Расея ўваходзіць у топ-5 па колькасці ўсталяваных датчыкаў (568), нароўні з Нямеччынай (1562), ЗША (1440), Францыяй (925) і Вялікабрытаніяй. 610).

Кіруючыя серверы

Пры вывучэнні працы датчыка выявілася, што ён перыядычна (кожныя 4 хвіліны) правярае сувязь з некаторымі аб'ектамі ў сетцы, у лік якіх уваходзяць каранёвыя DNS-серверы і вузлы, з даменнымі імёнамі выгляду "ctr-sin02.atlas.ripe.net", мяркую , якія з'яўляюцца кіруючымі серверамі сеткі RIPE Atlas.

На афіцыйным сайце інфармацыі аб кіравальных серверах я не знайшоў, але можна выказаць здагадку, што ў іх задачы ўваходзіць кіраванне датчыкамі, а таксама агрэгаванне і апрацоўка дадзеных. Калі мая здагадка дакладная, то існуе прынамсі 6 кіраўнікоў сервераў, з іх размешчаны ў ЗША - 2, Нідэрландах - 2, Германіі - 1, Сінгапуры - 1. На ўсіх серверах адкрыты порт 443.

Калі хтосьці валодае большай інфармацыяй аб кіравальных серверах сеткі RIPE Atlas - прашу ўнесці яснасць у гэтае пытанне.

датчык

RIPE Atlas

Датчык RIPE Atlas уяўляе сабой невялікая прылада (TP-Link 3020), якое запытваецца ад USB і падлучаецца да порта Ethernet маршрутызатара з дапамогай сеткавага кабеля. У залежнасці ад мадэлі датчык можа мець чыпсэт Atheros AR9331, 400 Мгц, 4 МБ flash і 32 Мб АЗП або чыпсэт MediaNek MT7628NN, 575 Мгц, 8 МБ flash і 64 Мб АЗП.

якар

RIPE Atlas

Якар - гэта ўдасканалены датчык, які валодае значна большай прадукцыйнасцю і вымяральнай здольнасцю. Уяўляе сабой прыладу ў стандартным 19-цалевым выкананні на апаратнай платформе APU2C2 або APU2E2 з 4-х ядзерным працэсарам 1 Ггц, 2 Гб АЗП, 3 партамі Gigabit Ethernet і 250 Гб SSD-назапашвальнікам. Кошт якара складае каля 400 $.

Ўстаноўка і кіраванне датчыкам

Як ужо казаў, датчыкі распаўсюджваюцца бясплатна з мэтай іх усталёўкі ў сваю інфраструктуру. Пры запыце датчыка ўказваецца краіна, горад і нумар аўтаномнай сістэмы, дзе ён будзе размяшчацца. У адказ на мой запыт RIPE NCC даслаў такое паведамленне.

Нажаль, ваша заяўка не адпавядае нашым крытэрам для атрымання апаратнага датчыка ў цяперашні час. Хоць наша мэта складаецца ў тым, каб як мага шырэй распаўсюджваць датчыкі RIPE Atlas, падобна, што ўжо маецца дастаткова прылад, падлучаных альбо ў межах паказанай вамі ASN, альбо ў сетцы, у якую вы падалі заяўку, альбо ў краіне, у якой вы падалі заяўку.

Не бяда. У такім выпадку можна ўсталяваць праграмны датчык, напрыклад, на віртуальную машыну, хатні сервер ці маршрутызатар - абмежаванняў на месцазнаходжанне і аўтаномную сістэму няма. Падтрымліваюцца CentOS, Debian, Raspbian і Turris OS. Для разгортвання трэба спампаваць і ўсталяваць адпаведнае праграмнае забеспячэнне, напрыклад з рэпазітара на GitHub.

Усталёўка праграмнага датчыка дастаткова простая. Напрыклад, для ўсталёўкі ў CentOS 8 трэба выканаць каманды:

curl -O 'https://ftp.ripe.net/ripe/atlas/software-probe/centos8/noarch/ripe-atlas-repo-1-2.el8.noarch.rpm'

yum install ripe-atlas-repo-1-2.el8.noarch.rpm

і зарэгістраваць датчык, пры гэтым неабходна падаць SSH-ключ, які знаходзіцца ў /var/atlas-probe/etc/probe_key.pub, а таксама пазначыць нумар аўтаномнай сістэмы і свой горад. У лісце нагадалі аб неабходнасці карэктнага ўказання месцазнаходжання датчыка.

Кіраванне датчыкам абмяжоўваецца магчымасцю падзелу вымяральнага рэсурсу з іншымі карыстальнікамі, налады апавяшчэнняў аб прастоях, а таксама стандартнымі сеткавымі наладамі (адрас, шлюз па змаўчанні і г.д.).

вымярэння

Урэшце дабраліся да правядзення вымярэнняў. Настройка заданняў на правядзенне вымярэнняў ажыццяўляецца з асабістага кабінета. Тамсама можна звярнуцца да вынікаў.

Фарміраванне задання на вымярэнне складаецца з трох крокаў: выбар тыпу вымярэння, выбар датчыка, выбар перыяду вымярэння.

Вымярэнні могуць быць наступных тыпаў: ping, traceroute, DNS, SSL, HTTP, NTP. Дэталёвыя налады канкрэтнага тыпу вымярэння, выключаючы спецыфічныя, абумоўленыя канкрэтным пратаколам або ўтылітай, уключаюць: мэтавы адрас, пратакол сеткавага ўзроўню, колькасць пакетаў у вымярэнні і час паміж вымярэннямі, памер пакета і час паміж пакетамі, ступень выпадковага зрушэння часу пачатку адпраўкі пакетаў.

Выбар датчыкаў магчымы па іх ідэнтыфікатары ці краіне размяшчэння, рэгіёне, аўтаномнай сістэме, тэгу і г.д.

Перыяд правядзення вымярэнняў задаецца часам пачатку і канчаткі.

Вынікі вымярэнняў даступныя на сайце ў асабістым кабінеце, якія таксама можна атрымаць у фармаце json. Увогуле, вынікі вымярэнняў уяўляюць сабою колькасныя паказчыкі, якія характарызуюць даступнасць некаторага вузла ці сэрвісу.

Для карыстальніка магчымасці вымярэнняў прадстаўлены шырокім, але вельмі абмежаваным спектрам. Аднак, відавочна, што магчымасці сістэмы мяркуюць генерацыю пакетаў практычна любой канфігурацыі, што адчыняе куды шырэйшыя магчымасці для вымярэння стану сеткі Інтэрнэт.

Ніжэй прадстаўлены прыклад неапрацаваных вынікаў аднаразовых вымярэнняў з наладамі па змаўчанні. У вымярэннях тыпу ping, traceroute і SSL у якасці мэты быў абраны IP-адрас habr.com, DNS – IP-адрас DNS сервера Google, NTP – IP-адрас NTP сервера ntp1.stratum2.ru. Ва ўсіх вымярэннях выкарыстоўваўся адзін датчык, размешчаны ва Уладзівастоку.

Пінг

[{"fw":4790,"lts":18,"dst_name":"178.248.237.68","af":4,"dst_addr":"178.248.237.68","src_addr":"192.168.0.10","proto":"ICMP","ttl":55,"size":48,"result":[{"rtt":122.062873},{"rtt":121.775641},{"rtt":121.807897}],"dup":0,"rcvd":3,"sent":3,"min":121.775641,"max":122.062873,"avg":121.882137,"msm_id":26273241,"prb_id":4428,"timestamp":1594622562,"msm_name":"Ping","from":"5.100.99.178","type":"ping","group_id":26273241,"step":null,"stored_timestamp":1594622562}]

Трасіроўка

[{"fw":4790,"lts":19,"endtime":1594622643,"dst_name":"178.248.237.68","dst_addr":"178.248.237.68","src_addr":"192.168.0.10","proto":"ICMP","af":4,"size":48,"paris_id":1,"result":[{"hop":1,"result":[{"from":"192.168.0.1","ttl":64,"size":76,"rtt":7.49},{"from":"192.168.0.1","ttl":64,"size":76,"rtt":1.216},{"from":"192.168.0.1","ttl":64,"size":76,"rtt":1.169}]},{"hop":2,"result":[{"from":"5.100.98.1","ttl":254,"size":28,"rtt":1.719},{"from":"5.100.98.1","ttl":254,"size":28,"rtt":1.507},{"from":"5.100.98.1","ttl":254,"size":28,"rtt":1.48}]},---DATA OMITED---,{"hop":10,"result":[{"from":"178.248.237.68","ttl":55,"size":48,"rtt":121.891},{"from":"178.248.237.68","ttl":55,"size":48,"rtt":121.873},{"from":"178.248.237.68","ttl":55,"size":48,"rtt":121.923}]}],"msm_id":26273246,"prb_id":4428,"timestamp":1594622637,"msm_name":"Traceroute","from":"5.100.99.178","type":"traceroute","group_id":26273246,"stored_timestamp":1594622649}]

DNS

[{"fw":4790,"lts":146,"dst_addr":"8.8.8.8","af":4,"src_addr":"192.168.0.10","proto":"UDP","result":{"rt":174.552,"size":42,"abuf":"5BGAgAABAAEAAAAABGhhYnIDY29tAAABAAHADAABAAEAAAcmAASy+O1E","ID":58385,"ANCOUNT":1,"QDCOUNT":1,"NSCOUNT":0,"ARCOUNT":0},"msm_id":26289620,"prb_id":4428,"timestamp":1594747880,"msm_name":"Tdig","from":"5.100.99.178","type":"dns","group_id":26289620,"stored_timestamp":1594747883}]

SSL

[{"fw":4790,"lts":63,"dst_name":"178.248.237.68","dst_port":"443","method":"TLS","ver":"1.2","dst_addr":"178.248.237.68","af":4,"src_addr":"192.168.0.10","ttc":106.920213,"rt":219.948332,"cert":["-----BEGIN CERTIFICATE-----nMIIGJzCCBQ+gAwIBAg ---DATA OMITED--- yd/teRCBaho1+Vn-----END CERTIFICATE-----"],"msm_id":26289611,"prb_id":4428,"timestamp":1594747349,"msm_name":"SSLCert","from":"5.100.99.178","type":"sslcert","group_id":26289611,"stored_timestamp":1594747352}]

NTP

[{"fw":4790,"lts":72,"dst_name":"88.147.254.230","dst_addr":"88.147.254.230","src_addr":"192.168.0.10","proto":"UDP","af":4,"li":"no","version":4,"mode":"server","stratum":2,"poll":8,"precision":0.0000076294,"root-delay":0.000518799,"root-dispersion":0.0203094,"ref-id":"5893fee5","ref-ts":3803732581.5476198196,"result":[{"origin-ts":3803733082.3982748985,"receive-ts":3803733082.6698465347,"transmit-ts":3803733082.6698560715,"final-ts":3803733082.5099263191,"rtt":0.111643,"offset":-0.21575},{"origin-ts":3803733082.5133042336,"receive-ts":3803733082.7847337723,"transmit-ts":3803733082.7847442627,"final-ts":3803733082.6246700287,"rtt":0.111355,"offset":-0.215752},{"origin-ts":3803733082.6279149055,"receive-ts":3803733082.899283886,"transmit-ts":3803733082.8992962837,"final-ts":3803733082.7392635345,"rtt":0.111337,"offset":-0.2157}],"msm_id":26289266,"prb_id":4428,"timestamp":1594744282,"msm_name":"Ntp","from":"5.100.99.178","type":"ntp","group_id":26289266,"stored_timestamp":1594744289}]

Заключэнне

Сетка RIPE Atlas з'яўляецца зручным інструментам, які дазваляе ў рэжыме часу блізкім да рэальнага адсочваць даступнасць аб'ектаў і службаў у сетцы Інтэрнэт.

Дадзеныя, якія атрымлівае з дапамогай сеткі RIPE Atlas, могуць быць карысныя для аператараў сувязі, даследчыкаў, тэхнічнай супольнасці і ўсіх, хто цікавіцца здаровым функцыянаваннем Інтэрнэту і хоча даведацца больш аб базавых сеткавых структурах і патоках дадзеных, якія падтрымліваюць працу Інтэрнэту ў глабальным маштабе.

PS RIPE Atlas не самотны ў сваім родзе, існуюць аналогі, напрыклад гэты.

Крыніца: habr.com

Дадаць каментар