RIPE Atlas

Pozdravljeni! Svojo debutantsko objavo na habr želim posvetiti zelo zanimivi temi – sistemu za nadzor kakovosti interneta RIPE Atlas. Delno se ukvarjam z vprašanji raziskovanja interneta ali kibernetskega prostora (ta izraz hitro pridobiva na priljubljenosti, zlasti v znanstvenih krogih). Na voljo je veliko materialov o RIPE Atlasu na internetu, vključno s tistimi na habr, vendar so se mi zdeli nezadostno celoviti. V članku je bilo večinoma uporabljeno gradivo z uradne spletne strani. RIPE Atlas in lastne misli.

RIPE Atlas

Namesto uvoda

Regionalni internetni register (RIR), katerega področje odgovornosti obsega Evropo, Srednjo Azijo in Bližnji vzhod, je RIPE NCC (Réseaux IP Européens Network Coordination Centre – Koordinacijski center evropskih IP omrežij). RIPE NCC je neprofitna organizacija, s sedežem v Nizozemski. Podpira delovanje interneta. Dodeljuje IP naslove in številke avtonomnih sistemov lokalnim internetnim ponudnikom in velikim organizacijam.

Eden od vodilnih projektov RIPE NCC, usmerjen v raziskovanje stanja interneta, je RIPE Atlas (začel je delovati konec leta 2010), ki predstavlja razvoj storitve za testiranje prometa (Test Traffic Measurement Service), ki je prenehala delovati leta 2014.

RIPE Atlas je globalna mreža senzorjev, ki aktivno merijo stanje interneta. V mreži RIPE Atlas trenutno delujejo tisoči senzorjev in njihovo število nenehno raste. RIPE NCC zbira podatke in jih pogojno brezplačno ponuja uporabnikom v pregledni obliki.

Razvoj mreže poteka na podlagi prostovoljnega nameščanja senzorjev s strani uporabnikov v njihovi infrastrukturi, za kar prejmejo „kredite“, ki jih lahko porabijo za izvedbo zanimivih meritev z uporabo drugih senzorjev.

RIPE Atlas običajno uporabljajo:

  • za spremljanje dostopnosti svoje mreže z različnih točk interneta;
  • za raziskovanje in odpravljanje težav v mreži s hitro in prilagodljivo preverbo povezave;
  • v sistemu nadzora svoje mreže;
  • za spremljanje dostopnosti infrastrukture DNS;
  • preverjanje povezave preko protokola IPv6.

RIPE Atlas

Kot sem že omenil, RIPE Atlas je sistem senzorjev, ki so razporejeni po omrežju Internet in nad njimi poteka enotno upravljanje. Poleg običajnih senzorjev (Probes) obstajajo tudi naprednejši – sidra (Anchors).

Sredi leta 2020 sistem RIPE Atlas šteje več kot 11 tisoč aktivnih senzorjev in več kot 650 aktivnih sidrišč, ki skupaj opravijo več kot 25 tisoč meritev in pridobijo več kot 10 tisoč rezultatov na sekundo.

Na spodnjih grafih je prikazan rast števila senzorjev in sidrišč.

RIPE Atlas

RIPE Atlas

Na naslednjih slikah pa je prikazana sveta karta z označenimi lokacijami senzorjev in sidrišč.

RIPE Atlas

RIPE Atlas

Kljub regionalnemu statusu RIPE NCC omrežje RIPE Atlas pokriva skoraj ves svet, pri čemer Rusija s 568 nameščenimi senzorji sodi v top 5, skupaj z Nemčijo (1562), ZDA (1440), Francijo (925) in Veliko Britanijo (610).

Upravni strežniki

Pri preučevanju delovanja senzorja se je izkazalo, da ta periodično (vsake 4 minute) preverja povezavo z nekaterimi objekti v omrežju, med katerimi so korenski DNS-strežniki in vozlišča z domenami, kot je 'ctr-sin02.atlas.ripe.net', za katere domnevam, da so upravljalski strežniki omrežja RIPE Atlas.

Na uradni spletni strani informacij o upravljalnih strežnikih nisem našel, a lahko domnevam, da je njihov namen upravljanje senzorjev ter agregacija in obdelava podatkov. Če je moja domneva pravilna, mora obstajati vsaj 6 upravljalnih strežnikov, od katerih sta 2 v ZDA, 2 v Nizozemski, 1 v Nemčiji in 1 v Singapurju. Na vseh strežnikih je odprt port 443.

Če ima kdo več informacij o upravljalnih strežnikih omrežja RIPE Atlas, prosim za pojasnilo glede tega vprašanja.

Senzor

RIPE Atlas

Senzor RIPE Atlas je majhna naprava (TP-Link 3020), ki deluje na USB napajanje in se preko ethernet priključka poveže z usmerjevalnikom s pomočjo mrežnega kabla. Glede na model ima senzor lahko čip Atheros AR9331, 400 MHz, 4 MB flash in 32 MB RAM ali čip MediaNek MT7628NN, 575 MHz, 8 MB flash in 64 MB RAM.

Sidro

RIPE Atlas

Jekor je napreden senzor, ki ima bistveno višjo zmogljivost in merilne sposobnosti. Gre za napravo standardne 19-palčne izvedbe na strojni platformi APU2C2 ali APU2E2 z 4-jedrnim procesorjem 1 GHz, 2 GB RAM, 3 Gigabit Ethernet vrati in 250 GB SSD diskom. Cena jekorja znaša približno 400 $.

Namestitev in upravljanje senzorja

Kot že omenjeno, se senzorji distribuirajo brezplačno z namenom namestitve v lastno infrastrukturo. Ob naročilu senzorja je potrebno navesti državo, mesto in številko avtonomne sistem, kjer bo nameščen. V odgovoru na moje naročilo je RIPE NCC poslal takšno sporočilo.

Na žalost vaša zahteva trenutno ne ustreza našim kriterijem za pridobitev strojne senzorja. Čeprav je naš cilj širiti senzorje RIPE Atlas, se zdi, da že obstaja dovolj naprav, povezanih bodisi z navedeno ASN, bodisi v omrežju, za katero ste se prijavili, ali v državi, v kateri ste se prijavili.

Ni panike. V tem primeru je mogoče namestiti programski senzor, na primer na virtualni stroj, domači strežnik ali usmerjevalnik – ni omejitev glede lokacije in avtonomnega sistema. Podprti so CentOS, Debian, Raspbian in Turris OS. Za namestitev je potrebno prenesti in namestiti ustrezno programsko opremo, na primer iz repozitija na GitHubu.

Namestitev programskega senzorja je precej preprosta. Na primer, za namestitev v CentOS 8 je potrebno izvesti ukaze:

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

in registrirati senzor, pri čemer je potrebno posredovati SSH ključ, ki se nahaja v /var/atlas-probe/etc/probe_key.pub, prav tako pa navesti številko avtonomnega sistema in svoje mesto. V pismu so opozorili na potrebo po pravilni navedbi lokacije senzorja.

Upravljanje senzorja se omejuje na možnost delitve merilnih virov z drugimi uporabniki, nastavitev obvestil o izpadih ter standardne omrežne nastavitve (naslov, privzeti prehod itd.).

Meritve

Nazadnje smo prišli do izvajanja meritev. Nastavljanje opravil za izvajanje meritev poteka iz osebnega računa. Tam lahko dostopate tudi do rezultatov.

Postopek oblikovanja naloga za merjenje obsega treh korakov: izbira vrste merjenja, izbira senzorja, izbira obdobja merjenja.

Meritve so lahko naslednjih vrst: ping, traceroute, DNS, SSL, HTTP, NTP. Podrobne nastavitve posamezne vrste merjenja, razen specifičnih, ki so odvisne od konkretnega protokola ali orodja, vključujejo: ciljni naslov, mrežni protokol, število paketov v merjenju in čas med merjenji, velikost paketa in čas med paketi, stopnjo naključnega zamika časa začetka pošiljanja paketov.

Izbira senzorjev je mogoča po njihovem identifikatorju ali državi razporeditve, regiji, avtonomni sistem, oznaki itd.

Obdobje izvajanja meritev je določeno z začetnim in končnim časom.

Rezultati meritev so dostopni na spletni strani v osebnem računu, kar je tudi mogoče pridobiti v formatu json. Na splošno rezultati meritev predstavljajo kvantitativne kazalnike, ki opisujejo dostopnost določenega strežnika ali storitve.

Za uporabnika so možnosti meritev predstavljene s široko, vendar zelo omejeno izbiro. Vendar pa je očitno, da možnosti sistema predvidevajo generacijo paketov praktično katerekoli konfiguracije, kar odpre precej širše možnosti za merjenje stanja omrežja Internet.

Spodaj je predstavljen primer neobdelanih rezultatov enkratnih meritev s privzetimi nastavitvami. V meritvah tipa ping, traceroute in SSL je bila kot cilj izbrana IP-naslov habr.com, DNS — IP-naslov DNS strežnika Google, NTP — IP-naslov NTP strežnika ntp1.stratum2.ru. V vseh meritvah je bil uporabljen en senzor, nameščen v Vladivostoku.

Ping

[{"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}]

Traceroute

[{"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}]

Zaključek

Mreža RIPE Atlas je uporabno orodje, ki omogoča skoraj v realnem času spremljanje dostopnosti predmetov in storitev v internetu.

Podatki, pridobljeni preko mreže RIPE Atlas, so lahko koristni za telekomunikacijske operaterje, raziskovalce, tehnično skupnost in vse, ki jih zanima zdravo delovanje interneta in želijo izvedeti več o osnovnih omrežnih strukturah in tokovih podatkov, ki podpirajo delovanje interneta na globalni ravni.

P.S. RIPE Atlas ni edini svojega vrste, obstajajo tudi analogi, na primer ta.

Izvor: habr.com

Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki 🔥 Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki | ProHoster