Sep 252010
 

networkDopo ping, telnet e dig continueremo a vedere altri strumenti utili per l’analisi della rete fatta da linea di comando

Traceroute

traceroute è uno strumento di rete usato per mostrare il percorso intrapreso dai pacchetti attraverso un protocollo Internet (IP) di rete. Una variante IPv6, traceroute6, è anche disponibile.

Lo strumento traceroute è disponibile praticamente su tutti i sistemi operativi Unix-like. Varianti con funzionalità simili sono anche disponibili, come tracepath su moderni impianti di Linux e tracert nei sistemi operativi Microsoft Windows. sistemi operativi basati su Windows NT hanno PathPing, che fornisce funzionalità simili.

Traceroute invia una sequenza di Internet Control Message Protocol (ICMP) i pacchetti sono indirizzati ad un host di destinazione. Per tracciare il percorso dei router intermedi si utilizza il time-to-live (TTL). I router decrementano questo parametro e scartano un pacchetto quando il valore del TTL ha raggiunto lo zero, restituendo un messaggio di errore ICMP (ICMP Tempo scaduto) al mittente.



Traceroute opera aumentando il valore TTL di ciascun lotto di pacchetti inviati. I primi tre pacchetti inviati hanno un valore di time-to-live (TTL) di uno, aspettandosi che essi non oltrepassino il primo router. I prossimi tre pacchetti hanno un valore TTL di 2, in modo che il secondo router invierà la risposta di errore. Questo continua fino a quando l’host di destinazione riceve il pacchetto e restituisce un messaggio ICMP Echo Reply.

L’utility traceroute utilizza i messaggi ICMP di ritorno per produrre un elenco di host che i pacchetti hanno attraversato nel transito verso la destinazione. I tre valori di timestamp restituiti per ogni host lungo il percorso sono i valori di ritardo (latency), in genere misurati in millisecondi per ogni pacchetto in batch.

uso base:

traceroute destionationhost

Esempio:


traceroute www.google.it

traceroute to www.google.it (72.14.234.104), 30 hops max, 60 byte packets
1 192.168.0.1 (192.168.0.1) 1.905 ms 5.552 ms 9.496 ms
2 * * *
3 host141-189-static.38-88-b.business.telecomitalia.it (88.38.189.141) 50.136 ms 53.519 ms 55.674 ms
4 r-bo83-vl19.opb.interbusiness.it (80.21.70.162) 58.609 ms 63.730 ms 66.937 ms
5 172.17.5.69 (172.17.5.69) 74.281 ms 76.749 ms 79.629 ms
6 172.17.8.165 (172.17.8.165) 91.052 ms 42.074 ms 42.009 ms
7 172.17.5.241 (172.17.5.241) 49.091 ms 50.790 ms 53.211 ms
8 te1-9-1-0.milano50.mil.seabone.net (93.186.128.165) 54.800 ms 56.805 ms 59.189 ms
9 te3-2.milano53.mil.seabone.net (195.22.205.227) 60.866 ms 63.446 ms 65.927 ms
10 72.14.198.233 (72.14.198.233) 68.039 ms 70.902 ms 73.316 ms
11 209.85.249.54 (209.85.249.54) 75.359 ms 78.234 ms 80.581 ms
12 72.14.232.63 (72.14.232.63) 41.714 ms 40.862 ms 41.676 ms
13 mil01s07-in-f104.1e100.net (72.14.234.104) 46.361 ms 49.293 ms 52.165 ms

Whois

Con il termine inglese Whois, in Informatica, si intende un protocollo di rete che consente, mediante l’interrogazione (query) di appositi database, di stabilire a quale provider Internet appartenga un determinato indirizzo IP o uno specifico DNS.

Nel whois vengono solitamente mostrate anche informazioni riguardanti l’intestatario del dominio.

Whois si può consultare tradizionalmente da riga di comando, anche se ora esistono numerosi strumenti web-based per consultare dai database i dettagli sui diritti di proprietà dei domini. Gli strumenti web-based, per le consultazioni, fanno ancora affidamento al protocollo whois per connettersi ai server whois. I client whois a riga di comando vengono tuttora usati largamente dagli amministratori di sistema.

Il sistema whois venne creato come un metodo che gli amministratori di sistema potevano usare nel cercare informazioni per contattare gli amministratori di altri indirizzi IP o nomi di dominio (quasi come un elenco telefonico).
uso base:

whois domain

Esempio:

whois wikipedia.com

Registrant:
Wikimedia Foundation, Inc.
149 New Montgomery Street
Third Floor
San Francisco, California 94105
United States

Registered through: GoDaddy.com, Inc. (http://www.godaddy.com)
Domain Name: WIKIPEDIA.COM
Created on: 12-Jan-01
Expires on: 10-Jan-15
Last Updated on: 01-Mar-06

Administrative Contact:
Admin, DNS [email protected]
Wikimedia Foundation, Inc.
149 New Montgomery Street
Third Floor
San Francisco, California 94105
United States
+1.4158396885 Fax -- +1.4158820495

Technical Contact:
Admin, DNS [email protected]
Wikimedia Foundation, Inc.
149 New Montgomery Street
Third Floor
San Francisco, California 94105
United States
+1.4158396885 Fax -- +1.4158820495

Domain servers in listed order:
NS0.WIKIMEDIA.ORG
NS1.WIKIMEDIA.ORG
NS2.WIKIMEDIA.ORG

Netstat

Nei sistemi GNU/Linux e Windows NT, il comando netstat permette di vedere lo stato delle connessioni instaurate sul computer locale.

Se eseguito senza dare opzioni visualizza lo stato dei socket attivi, un esempio può essere:

kaos@kaos:~$ netstat
Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 proxy.surfnet.iac:33297 mg-in-f125.:xmpp-client ESTABLISHED
tcp 0 0 proxy.surfnet.iac:33995 by1msg5176516.phx.:1863 ESTABLISHED
Active UNIX domain sockets (w/o servers)
Proto RefCnt Flags Type State I-Node Path
unix 3 [ ] DGRAM 13826 /dev/log
unix 2 [ ] DGRAM 5109 @/org/kernel/udev/udevd
unix 2 [ ] DGRAM 10443 @/org/freedesktop/hal/udev_event
unix 3 [ ] STREAM CONNECTED 34721 /tmp/orbit-kaos/linc-4876-0-ebf915e300c0
unix 3 [ ] STREAM CONNECTED 34720

Opzioni importanti sono:

  • -a : che permette di vedere anche lo stato dei socket non attivi
  • -e : mostra informazioni aggiuntive (si puo’ dare anche -ee)
  • -g : mostra informazioni sui gruppi multicast.
  • -i : mostra informazioni sulle interfacce di rete.
  • -t : che permette di vedere lo stato dei socket tcp
  • -u : che permette di vedere lo stato dei socket udp
  • -r : che permette di vedere la tabella di routing (restituisce lo stesso output del comando route)
  • -n : mostra gli indirizzi numerici (invece di quelli simbolici) degli host e delle porte
  • -p : che permette di vedere il nome del programma e il relativo PID che ha instaurato una connessione (deve essere dato dall’utente root)

Esempi:

netstat -tlnp

Mostra tutte le porte in ascolto con il PID del processo associato.
Il PID sarà mostrato solo se si è root.

netstat -an | grep ESTABLISHED | awk '{print $5}' | awk -F: '{print $1}' | sort | uniq -c | awk '{ printf("%st%st",$2,$1) ; for (i = 0; i < $1; i++) {printf("*")}; print "" }'

Produce un grafico ASCII che mostra il numero di connessioni stabilite sui vari indirizzi IP della macchina.

Output:

10.100.0.22 1 *
10.100.0.23 2 **
10.100.1.51 3 ***
120.116.18.134 1 *
87.11.50.125 4 ****

netstat -ant | awk '{print $NF}' | grep -v '[a-z]' | sort | uniq -c

Mostra il numero di connessioni per stato, ad esempio:

1 CLOSE_WAIT
11 ESTABLISHED
63 LISTEN
21 TIME_WAIT

mtr

mtr combina la funzionalità del traceroute e ping in un’unico strumento diagnostico.

Come inizia mtr, indaga sulla connessione di rete tra l’host su cui gira mtr e HOSTNAME. con l’invio di pacchetti con TTL, appositamente basso. Continua a inviare pacchetti con un basso TTL, rilevando il tempo di risposta dei router intermedi. Questo permette di stampare la percentuale ed i tempi di risposta del percorso Internet per HOSTNAME. Un improvviso aumento di packetloss o tempo di risposta è spesso indice di una cattiva (o semplicemente sovraccarico) connessione di rete.

Uso base:

mtr google.com
Output:
mtr

mtr --report --report-cycles 10 www.google.com > google_net_report.txt

Usa mtr per creare un report in formato testuale

La modalità report di mtr produce un testo formattato con i risultati dei risultati di mtr usando il numero di cicli ping specificati nel comando. Il file di testo può essere analizzato facilmente o messo in atatch ad una mail.

Popular Posts:

Flattr this!

 Leave a Reply

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

(required)

(required)

*