Hej alla! Jag vill dedikera min debutartikel pĂ„ Habr till ett mycket intressant Ă€mne â RIPE Atlas, ett system för kvalitetskontroll av Internet. Dels rör mina intressen frĂ„gor kring forskning av Internet eller cyberspace (termen blir snabbt allt mer populĂ€r, sĂ€rskilt inom vetenskapliga kretsar). Det finns gott om material om RIPE Atlas pĂ„ internet, inklusive pĂ„ Habr, men jag tyckte att det inte var tillrĂ€ckligt sammanhĂ„llet. I stort sett har informationen i artikeln anvĂ€nt sig av officiell information frĂ„n hemsidan. och egna tankar.

IstÀllet för en inledning
Den regionala internetregistret (RIR) vars ansvar strĂ€cker sig över Europa, Centralasien och Mellanöstern Ă€r RIPE NCC (RĂ©seaux IP EuropĂ©ens Network Coordination Centre â NĂ€tverkskoordinationscentrum för Europeiska IP-nĂ€t). RIPE NCC Ă€r en icke-vinstdrivande organisation som ligger i NederlĂ€nderna. Den stödjer driften av Internet. Den tillhandahĂ„ller IP-adresser och autonoma systemnummer till lokala internetleverantörer och stora organisationer.
Ett av de ledande projekten frÄn RIPE NCC som syftar till att undersöka tillstÄndet pÄ Internet Àr RIPE Atlas (startade i slutet av 2010), vilket blev en utveckling av Test Traffic Measurement Service, som upphörde att fungera 2014.
RIPE Atlas Àr ett globalt nÀtverk av sensorer som gör aktiva mÀtningar av Internetstatus. För nÀrvarande finns det tusentals sensorer i RIPE Atlas-nÀtverket och antalet vÀxer stÀndigt. RIPE NCC aggregerar de insamlade data och tillhandahÄller dem i ett anvÀndarvÀnligt format, i stort sett gratis.
Utvecklingen av nÀtverket sker pÄ principen av frivillig installation av sensorer av anvÀndarna inom deras egen infrastruktur, vilket ger "krediter" som kan anvÀndas för att utföra intressanta mÀtningar med hjÀlp av andra sensorer.
Vanligtvis anvÀnds RIPE Atlas för:
- att övervaka tillgÀngligheten av sitt nÀtverk frÄn olika punkter pÄ Internet;
- för att utforska och felsöka nÀtverket med hjÀlp av snabba och flexibla anslutningskontroller;
- i övervakningssystem för sitt eget nÀtverk;
- för att övervaka tillgÀngligheten av DNS-infrastruktur;
- att kontrollera anslutningen via IPv6.
RIPE Atlas
Som jag redan har nĂ€mnt, Ă€r RIPE Atlas ett system av sensorer som Ă€r placerade i Internet och faller under en gemensam administrativ övervakning. Förutom vanliga sensorer (Probes) finns det mer avancerade â ankare (Anchors).
I mitten av 2020 hade RIPE Atlas-systemet över 11 000 aktiva sensorer och mer Àn 650 aktiva ankare, som tillsammans utför över 25 000 mÀtningar och tar emot över 10 000 resultat per sekund.
NedanstÄende diagram visar tillvÀxten av antalet sensorer och ankare.


Och i de följande bilderna presenteras en vÀrldskarta med placeringen av sensorer och ankare, respektive.


Trots den regionala statusen för RIPE NCC tÀcker nÀtverket RIPE Atlas nÀstan hela vÀrlden, dÀr Ryssland ligger bland de fem frÀmsta nÀr det gÀller antalet installerade sensorer (568), tillsammans med Tyskland (1562), USA (1440), Frankrike (925) och Storbritannien (610).
Kontrollservrar
Vid granskning av sensorernas funktionalitet upptÀcktes att den regelbundet (var fjÀrde minut) kontrollerar anslutningen till vissa objekt i nÀtverket, inklusive rot-DNS-servrar och noder med domÀnnamn av typen "ctr-sin02.atlas.ripe.net", som jag misstÀnker Àr kontrollservrarna för nÀtverket RIPE Atlas.
Jag kunde inte hitta information om kontrollservrarna pÄ den officiella webbplatsen, men man kan anta att deras uppgifter inkluderar hantering av sensorer samt aggregering och bearbetning av data. Om min gissning Àr korrekt, finns det minst 6 kontrollservrar, varav 2 ligger i USA, 2 i NederlÀnderna, 1 i Tyskland och 1 i Singapore. Port 443 Àr öppen pÄ samtliga servrar.
Om nĂ„gon har mer information om kontrollservrarna i nĂ€tverket RIPE Atlas â vĂ€nligen klargör denna frĂ„ga.
Sensor

Sensorn RIPE Atlas Àr en liten enhet (TP-Link 3020) som fÄr ström via USB och ansluts till porten Ethernet pÄ routern med hjÀlp av en nÀtverkskabel. Beroende pÄ modell kan sensorn ha en Atheros AR9331-chipsats, 400 MHz, 4 MB flash och 32 MB RAM eller en MediaNek MT7628NN-chipsats, 575 MHz, 8 MB flash och 64 MB RAM.
Ankare

Ankaret Àr en avancerad sensor med mycket högre prestanda och mÀtförmÄga. Den Àr en enhet i standardutförande pÄ 19 tum, byggd pÄ hÄrdvaruplattformarna APU2C2 eller APU2E2, med en fyrkÀrnig processor pÄ 1 GHz, 2 GB RAM, 3 portar för Gigabit Ethernet och en SSD-hÄrddisk pÄ 250 GB. .
Installation och hantering av sensorn
Som redan nÀmnts distribueras sensorer gratis för installation i din infrastruktur. Vid begÀran om en sensor anges land, stad och nummer för det autonoma system dÀr den kommer att placeras. I svar pÄ min begÀran skickade RIPE NCC ett sÄdant meddelande.
TyvĂ€rr uppfyller din ansökan för nĂ€rvarande inte vĂ„ra kriterier för att fĂ„ en hĂ„rdvarusensor. Ăven om vĂ„rt mĂ„l Ă€r att sĂ„ brett som möjligt distribuera RIPE Atlas-sensorer, verkar det som om det redan finns tillrĂ€ckligt med enheter anslutna antingen inom det angivna ASN eller inom nĂ€tverket du ansökt om, eller i det land du har ansökt om.
Inga problem. I sĂ„dana fall kan man installera en mjukvarusensor, till exempel pĂ„ en virtuell maskin, en hemmaserver eller router â det finns inga begrĂ€nsningar för plats och autonomt system. CentOS, Debian, Raspbian och Turris OS stöds. För att distribuera mĂ„ste motsvarande programvara laddas ner och installeras, till exempel frĂ„n .
Installationen av mjukvarusensorn Àr ganska enkel. Till exempel för att installera i CentOS 8 behöver du köra följande kommandon:
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 och registrera sensorn, dÄ mÄste du ange en SSH-nyckel, som finns i /var/atlas-probe/etc/probe_key.pub, samt ange nummer för det autonoma systemet och din stad. I brevet pÄminndes det om nödvÀndigheten att korrekt ange sensorens plats.
Hanteringen av sensorn begrÀnsas till möjligheten att dela mÀtningsresursen med andra anvÀndare, stÀlla in aviseringar om driftstopp samt standard nÀtverksinstÀllningar (adress, standardgateway m.m.).
MĂ€tningar
Slutligen har vi kommit fram till att genomföra mÀtningar. InstÀllningen av uppgifter för att genomföra mÀtningar görs frÄn anvÀndarens konto. DÀr kan man ocksÄ se resultaten.
Att skapa en mÀtuppgift bestÄr av tre steg: vÀlja mÀttyp, vÀlja sensor, vÀlja mÀtperiod.
MÀtningarna kan vara av följande typer: ping, traceroute, DNS, SSL, HTTP, NTP. Detaljerade instÀllningar för varje specifik mÀttyp, exklusive de specifika för det aktuella protokollet eller verktyget, inkluderar: mÄladress, nÀtverksprotokoll, antal paket i mÀtningen och fördröjning mellan mÀtningarna, paketstorlek och fördröjning mellan paketen, grad av slumpmÀssig tidsförskjutning vid paketets avsÀndning.
Val av sensorer kan göras utifrÄn deras identifierare eller land, region, autonoma system, tagg, etc.
MĂ€tperioden anges med start- och sluttid.
Resultaten av mÀtningarna Àr tillgÀngliga pÄ webbplatsen i anvÀndarens personliga konto, och kan Àven hÀmtas i json-format. Generellt sett representerar resultaten av mÀtningarna kvantitativa mÄtt som karakteriserar tillgÀngligheten av en viss nod eller tjÀnst.
För anvÀndaren erbjuds mÀtningsmöjligheterna ett brett, men ganska begrÀnsat spektrum. Det Àr dock uppenbart att systemets kapabiliteter möjliggör generering av paket med nÀstan vilken konfiguration som helst, vilket öppnar för mycket bredare möjligheter att mÀta tillstÄndet i internetnÀtverket.
Nedan visas ett exempel pÄ rÄresultat frÄn enstaka mÀtningar med standardinstÀllningar. I mÀtningarna av typ ping, traceroute och SSL valdes IP-adressen habr.com som mÄl, för DNS - IP-adressen till Googles DNS-server, för NTP - IP-adressen till NTP-servern ntp1.stratum2.ru. I alla mÀtningar anvÀndes en sensor placerad i Vladivostok.
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}]Slutsats
RIPE Atlas-nÀtverket Àr ett anvÀndarvÀnligt verktyg för att i realtid övervaka tillgÀngligheten för objekt och tjÀnster pÄ Internet.
Data som erhÄlls via RIPE Atlas-nÀtverket kan vara anvÀndbara för teleoperatörer, forskare, den tekniska gemenskapen och alla som Àr intresserade av en sund funktion av Internet, samt den som vill veta mer om de grundlÀggande nÀtverksstrukturerna och datatransfererna som stödjer Internet globalt.
P.S. RIPE Atlas Àr inte ensam i sitt slag, det finns alternativ, till exempel .
KĂ€lla: habr.com
