MODEN Atlas

God dag alle sammen! Jeg vil gjerne dedikere min debutartikkel om Habr til et veldig interessant tema – RIPE Atlas Internett-kvalitetskontrollsystem. Mine interesser ligger innen internettforskning, eller cyberspace (et begrep som raskt blir populært, spesielt i akademiske kretser). Det finnes mye materiale om RIPE Atlas på nettet, inkludert om Habr, men jeg syntes det var utilstrekkelig omfattende. Det meste av informasjonen i denne artikkelen kommer fra det offisielle nettstedet. MODEN Atlas og mine egne betraktninger.

MODEN Atlas

I stedet for forordet

Den regionale internettregistratoren (RIR) som er ansvarlig for Europa, Sentral-Asia og Midtøsten er RIPE NCC (Réseaux IP Européens Network Coordination Centre). RIPE NCC er en ideell organisasjon med base i Nederland. Den vedlikeholder internett og tilbyr IP-adresser og autonome systemnumre til lokale internettleverandører og store organisasjoner.

Et av RIPE NCCs flaggskipprosjekter for å studere tilstanden til internett er RIPE Atlas (lansert sent i 2010), som utviklet seg fra Test Traffic Measurement Service, som opphørte driften i 2014.

RIPE Atlas er et globalt nettverk av sensorer som aktivt måler tilstanden til internett. RIPE Atlas-nettverket består for tiden av tusenvis av sensorer, og antallet øker stadig. RIPE NCC samler de innsamlede dataene og gjør dem tilgjengelige for brukere gratis i et praktisk format.

Nettverkets utvikling er basert på prinsippet om at brukere frivillig installerer sensorer i infrastrukturen sin, noe de tildeles «kreditter» for som kan brukes på å utføre målinger av interesse ved hjelp av andre sensorer.

Vanligvis brukes RIPE Atlas:

  • å overvåke tilgjengeligheten til nettverket ditt fra forskjellige punkter på Internett;
  • å utforske og feilsøke nettverket ditt med en rask og fleksibel tilkoblingstest;
  • i overvåkingssystemet til vårt eget nettverk;
  • å overvåke tilgjengeligheten av DNS-infrastruktur;
  • Kontrollerer forbindelsen via IPv6-protokollen.

MODEN Atlas

Som jeg nevnte tidligere, er RIPE Atlas et system av sensorer som er plassert på internett og administreres av én enkelt administrator. I tillegg til standardprober finnes det også mer avanserte sensorer som kalles ankere.

Per midten av 2020 består RIPE Atlas-systemet av over 11 000 aktive sensorer og over 650 aktive ankere, som til sammen produserer over 25 000 målinger og mottar over 10 000 resultater per sekund.

Grafene nedenfor viser veksten i antall sensorer og ankere.

MODEN Atlas

MODEN Atlas

Figurene nedenfor viser et kart over verden med plasseringen av henholdsvis sensorer og ankere angitt.

MODEN Atlas

MODEN Atlas

Til tross for RIPE NCCs regionale status dekker RIPE Atlas-nettverket nesten hele verden, med Russland blant de fem beste når det gjelder antall installerte sensorer (568), sammen med Tyskland (1562), USA (1440), Frankrike (925) og Storbritannia (610).

Administrasjonsservere

Da man studerte sensorens drift, ble det oppdaget at den med jevne mellomrom (hvert fjerde minutt) sjekker forbindelsen med visse objekter på nettverket, inkludert rot-DNS-servere og noder med domenenavn som "ctr-sin02.atlas.ripe.net", som jeg tror er kontrollserverne til RIPE Atlas-nettverket.

Jeg fant ingen informasjon om kontrollserverne på den offisielle nettsiden, men jeg kan anta at ansvaret deres inkluderer sensoradministrasjon, samt dataaggregering og -behandling. Hvis gjetningen min er riktig, er det minst seks kontrollservere, hvorav to ligger i USA, to i Nederland, én i Tyskland og én i Singapore. Alle serverne har port 443 åpen.

Hvis noen har mer informasjon om RIPE Atlas-nettverkets kontrollservere, vennligst avklar dette.

sensor

MODEN Atlas

RIPE Atlas-sensoren er en liten enhet (TP-Link 3020) som drives av USB og kobles til ruterens Ethernet-port via en nettverkskabel. Avhengig av modellen kan sensoren ha et Atheros AR9331-brikkesett, 400 MHz, 4 MB flashminne og 32 MB RAM, eller et MediaNek MT7628NN-brikkesett, 575 MHz, 8 MB flashminne og 64 MB RAM.

anker

MODEN Atlas

Anchor er en avansert sensor med betydelig økt ytelse og målemuligheter. Den leveres i en standard 19-tommers formfaktor og er basert på APU2C2- eller APU2E2-maskinvareplattformen, med en 1 GHz firekjerners prosessor, 2 GB RAM, 3 Gigabit Ethernet-porter og en 250 GB SSD-disk. Prisen på ankeret er omtrent 400 dollar..

Installasjon og kontroll av sensoren

Som nevnt distribueres sensorene gratis for installasjon i infrastrukturen din. Når du ber om en sensor, vennligst oppgi land, by og autonomt systemnummer der den skal plasseres. Som svar på forespørselen min sendte RIPE NCC følgende melding.

Dessverre oppfyller ikke søknaden din kriteriene våre for å motta en maskinvaresensor for øyeblikket. Selv om målet vårt er å distribuere RIPE Atlas-sensorer så bredt som mulig, ser det ut til at det allerede er tilstrekkelig med enheter tilkoblet enten innenfor ASN-et du spesifiserte, nettverket du søkte til, eller landet der du søkte.

Ikke noe problem. I dette tilfellet kan du installere programvaresensoren, for eksempel på en virtuell maskin, hjemmeserver eller ruter – det er ingen begrensninger på plassering eller autonomt system. CentOS, Debian, Raspbian og Turris OS støttes. For å distribuere må du laste ned og installere riktig programvare, for eksempel fra depot på GitHub.

Det er ganske enkelt å installere programvaresensoren. For eksempel, for å installere den på CentOS 8, kjør følgende kommandoer:

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

og registrere sensoren, må du oppgi SSH-nøkkelen, som er i /var/atlas-probe/etc/probe_key.pub, og angi også nummeret til det autonome systemet og byen din. Brevet minnet deg på å angi sensorens plassering riktig.

Sensoradministrasjon er begrenset til muligheten til å dele måleressursen med andre brukere, konfigurere varsler om nedetid og standard nettverksinnstillinger (adresse, standard gateway osv.).

Målinger

Endelig har vi kommet til selve måleprosessen. Måleoppgaver konfigureres fra din personlige konto. Du kan også få tilgang til resultatene der.

Å utforme en måleoppgave består av tre trinn: valg av måletype, valg av sensor og valg av måleperiode.

Målinger kan være av følgende typer: ping, traceroute, DNS, SSL, HTTP og NTP. Detaljerte innstillinger for en bestemt måletype, unntatt de som er spesifikke for en bestemt protokoll eller et bestemt verktøy, inkluderer: måladresse, nettverkslagsprotokoll, antall pakker per måling og tid mellom målingene, pakkestørrelse og tid mellom pakker, og graden av tilfeldig forskyvning av pakkestarttidspunkt.

Sensorer kan velges etter ID, land, region, autonomt system, tagg osv.

Måleperioden bestemmes av start- og sluttidspunktene.

Måleresultater er tilgjengelige på nettstedet i din personlige konto og kan også hentes i JSON-format. Generelt representerer måleresultater kvantitative indikatorer som karakteriserer tilgjengeligheten til en bestemt node eller tjeneste.

For brukeren er målemulighetene brede, men ganske begrensede. Systemets muligheter tillater imidlertid generering av pakker med så godt som enhver konfigurasjon, noe som åpner for mye bredere muligheter for å måle internettets tilstand.

Nedenfor er et eksempel på rådata fra en enkelt måling med standardinnstillinger. For ping-, traceroute- og SSL-målinger var målet IP-adressen til habr.com, for DNS IP-adressen til Google DNS-serveren, og for NTP IP-adressen til NTP-serveren ntp1.stratum2.ru. En enkelt sensor plassert i Vladivostok ble brukt til alle målingene.

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}]

Konklusjon

RIPE Atlas-nettverket er et praktisk verktøy som lar deg overvåke tilgjengeligheten til objekter og tjenester på Internett i nær sanntid.

Dataene som genereres av RIPE Atlas-nettverket kan være nyttige for teleoperatører, forskere, det tekniske miljøet og alle som er interessert i at Internett fungerer på en sunn måte og som ønsker å lære mer om de underliggende nettverksstrukturene og datastrømmene som støtter driften av Internett globalt.

PS RIPE Atlas er ikke alene i sitt slag, det finnes lignende, for eksempel dette.

Kilde: www.habr.com

Legg til en kommentar