Burstnet informatica © TROUBLESHOOTING 1 TROUBLESHOOTING Con il termine troubleshooting s’intende il processo di identificazione, analisi e risoluzione di problemi e malfunzionamenti (o guasti) in qualsiasi contesto operativo. Il troubleshooting consiste inizialmente nell'identificazione del malfunzionamento e quindi in una ricerca della sua causa attraverso un processo di eliminazione progressiva delle possibili cause conosciute. Burstnet informatica © 2 TROUBLESHOOTING Il troubleshooting può essere applicato a molti ambiti Burstnet informatica © Il nostro obiettivo sono le reti! Tra le varie tecniche per la risoluzione dei problemi inerenti il TCP/IP, quella di procedere per punti successivi è una delle più efficaci. 3 TROUBLESHOOTING In teoria, il TCP/IP troubleshooting dovrebbe essere una procedura semplice. Dopo tutto è soltanto un protocollo, una serie di passaggi volti a trasferire i bit sulla rete. Ma in realtà gli attori protagonisti sono tutti gli strati dell’architettura internet. Burstnet informatica © 4 TROUBLESHOOTING Analizziamo dapprima Windows Il metodo di troubleshooting tradizionale Il troubleshooting del TCP/IP può essere visto come un metodo basato su un semplice approccio per punti, volto a risolvere i problemi riguardanti la ricerca dei guasti. In pratica, un metodo simile al seguente: Digitate ipconfig per controllore se sono corretti indirizzo IP, subnet mask e gateway di default. Burstnet informatica © 5 TROUBLESHOOTING Ora fate il ping all'indirizzo 127.0.0.1 per vedere se il vostro adattatore di rete sta funzionando correttamente. Fate il ping all'indirizzo IP del vostro computer. Ora provate a fare ping all'indirizzo IP di un altro computer sulla stessa sottorete. Provate a fare ping al vostro gateway di default E così via. Burstnet informatica © 6 TROUBLESHOOTING Burstnet informatica © Questo metodo è piuttosto inefficiente, dato che automaticamente presuppone che con tutta probabilità il problema riguardi il vostro computer e che risieda nelle vostre vicinanze (la vostra scheda di rete, la configurazione dell'indirizzo IP del vostro computer, la vostra sottorete locale) piuttosto che in dispositivi remoti (altre sottoreti). 7 TROUBLESHOOTING Burstnet informatica © Ed è un metodo che probabilmente è stato messo a punto prima del reale sviluppo di Internet prima che il DNS diventasse ubiquitario per la name resolution e prima che i firewall e le VPN si trasformassero in un fattore vitale per la maggior parte delle reti aziendali. 8 TROUBLESHOOTING Supponiamo che uno dei vostri utenti vi dica: “non posso collegarmi al server ora” Quale potrebbe essere il problema? Quanto esposto aiuterà ad analizzare questa semplice affermazione per capire i problemi che potrebbero esserne la causa. Burstnet informatica © 9 TROUBLESHOOTING Per esempio "Non posso…" Burstnet informatica © È questo l'unico utente che ha segnalato problemi della rete? Se ce ne sono altri, hanno problemi simili? La questione più probabilmente riguarda qualche luogo “esterno” e questo potrebbe significare che forse il vostro server di DNS è spento oppure i servizi del vostro provider di DNS stiano incontrando delle difficoltà. O forse un router sulla vostra rete interna non funziona. Oppure il server a cui i vostri utenti stanno provando di collegarsi può aver avuto un crash. 10 TROUBLESHOOTING Dovreste anche fermarvi e pensare a ogni elemento comune che questi utenti potrebbero avere. Per esempio, le loro macchine sono tutte collegate alla stessa sottorete? Se la risposta è affermativa, allora forse il gateway di default per tale sottorete è configurato in modo errato o il router si è bloccato. O magari qualche malintenzionato ha installato un falso server DHCP su quella sottorete e sta usando illecitamente le macchine al fine di attivare l'assegnamento di indirizzi unroutable per generare una tipica condizione denial of service. Burstnet informatica © 11 TROUBLESHOOTING "… collegarmi a…" Burstnet informatica © Una buona domanda da porre a tale utente è “Cosa significa essere collegato? Che genere di problema di connessione stanno realmente avendo gli utenti? Cosa stanno tentando di fare quando dicono che desiderano “collegarsi” al server? Stanno provando ad accedere a una risorsa condivisa sul server? Gli utenti ottengono un messaggio di “accesso 12 negato” quando eseguono questa operazione? TROUBLESHOOTING Visualizzano Burstnet informatica © un box di login che domanda di digitare le proprie credenziali? Questo box sta rifiutando le loro credenziali? Stanno avendo difficoltà a trovare la condivisione nell'Active Directory? È un drive mappato quello con il quale stanno avendo dei problemi? Stanno provando a effettuare il browsing per individuare il server nelle “Connessioni di rete”? E così via … 13 TROUBLESHOOTING "… al server…" Burstnet informatica © Avete gli utenti da una parte, il server dall'altra e la rete nel mezzo. Non possono collegarsi, perché? Dove si trova esattamente quel server? È sulla sottorete dell'utente? Su una sottorete adiacente? 14 TROUBLESHOOTING In un reparto differente o su un diverso piano? In un altro edificio? Che genere di rete collega l'utente con quel particolare server? Una LAN Ethernet cablata? Una LAN wireless (WLAN)? Una linea DSL? Burstnet informatica © 15 TROUBLESHOOTING Burstnet informatica © In primo luogo, determinate il tipo di connessione (possibilmente diversi tipi) fra l'utente e il server e quindi considerate dove tale connessione potrebbe essersi interrotta. Se state utilizzando switch gestiti, controllate per vedere se avete ricevuto un messaggio di allarme dal vostro software di amministrazione di rete. Forse è mancata la corrente elettrica … 16 TROUBLESHOOTING È un solo server o sono diversi server? L'utente ha avuto difficoltà a collegarsi soltanto a quel server o anche ad altri server? Anche altri utenti hanno avuto problemi a collegarsi ad altri server? Quali sono i punti in comune (se ce ne sono) tra tutti i server che sono interessati? Burstnet informatica © 17 TROUBLESHOOTING "… ora." Burstnet informatica © L'elemento tempo è cruciale nell'analisi guasti. Il problema è appena successo? Quando è stata l'ultima volta che vi siete collegati con successo al server? Per quanto tempo? Il malfunzionamento è continuo o intermittente? I problemi intermittenti della rete che coinvolgono collegamenti Wan inaffidabili e altre questioni possono essere difficili da individuare con un troubleshooting, in particolare se sono transitori, cioè brevi e occasionali. 18 TROUBLESHOOTING Il tempo può anche aiutarvi a mettere in relazione i problemi con altre circostanze che potrebbero avere effetto sulla vostra rete. Il problema è cominciato questa mattina alle 10? Che altro è accaduto sulla vostra rete? Sono state applicate le patch in un server? La manutenzione prevista sul domain controller è stata fatta? Sono stati fatti dei lavori nell'edificio? Burstnet informatica © 19 TROUBLESHOOTING Il nostro approccio all'analisi dei guasti TCP/IP si struttura in tre aree critiche: Definizione degli elementi del problema. Ciò significa: Burstnet informatica © Il lato client: i client che stanno incontrando una o più difficoltà. Il lato server: server, stampanti o altre risorse di rete (come Internet) con cui i client stanno incontrando delle difficoltà. La rete che sta nel mezzo: i cavi (se la rete non è wireless), gli hub, gli switch, i router, i firewall, i proxy server e qualunque altra infrastruttura di rete compresa fra il client e il server. 20 TROUBLESHOOTING L'ambiente: circostanze esterne che possono interessare la rete, come le variazioni nella tensione di alimentazione, la manutenzione dell'edificio e così via. Il contesto: uno o più client/server coinvolti. Il fattore tempo: continuo, intermittente, occasionale; quando è iniziato e così via. Tipo del problema di connessione: fisico, di rete, dello strato di trasporto o dell'applicazione; controllo di accesso o di autenticazione e così via. Segnali: messaggi di errore sulle macchine client; box di login e così via. Burstnet informatica © 21 TROUBLESHOOTING Definizione di quali step del troubleshooting potrebbero applicarsi ai suddetti elementi del problema. Questo include: Verifica della connettività dei media fisici per i client, i server e l'infrastruttura hardware di rete coinvolta. Ciò significa controllare i cavi, assicurarsi che gli adattatori di rete siano disposti correttamente e cercare altre cause tra i possibili collegamenti di rete che potrebbero portare a visualizzare una disconnessone tra i media. Burstnet informatica © 22 TROUBLESHOOTING Sui client e sui server, questo significa indirizzi IP, subnet mask, gateway di default, le regolazioni del DNS e così via. Per l'infrastruttura hardware della rete, tipicamente significa le tabelle di routing sui router e sui gateway Internet. Burstnet informatica © Verifica della configurazione TCP/IP dei client, dei server e dell'infrastruttura hardware della rete in questione. 23 TROUBLESHOOTING Verifica della connettività di percorso fra i client e i server coinvolti. Ciò significa usare ping, pathping, tracert e altri tool simili per verificare la connettività end-to-end del TCP/IP a livello di rete; sniffing del pacchetto per controllare le sessioni dello strato di trasporto; usare nslookup, telnet e altri tool per il troubleshooting di malfunzionamenti inerenti l'application layer che coinvolgono problemi di name resolution, di autenticazione e così via. Burstnet informatica © 24 TROUBLESHOOTING E' più che mai critico capire come funzionano i protocolli, come i pacchetti sono spediti dalle tabelle di routing e cosa possono dirvi tool come Netdiag.exe. Un troubleshooting del TCP/IP di successo è fondato su una buona comprensione del funzionamento del TCP/IP stesso e sui tool che possono essere utilizzati per esaminarlo. Burstnet informatica © Capire, interrogare ed esaminare. 25 TROUBLESHOOTING Anche fare le domande giuste è essenziale per un buon troubleshooting. Imparare quando si deve essere metodici e quando "creativi" è l'essenza dell'arte del troubleshooting Burstnet informatica © Capire, interrogare ed esaminare. 26 TROUBLESHOOTING Burstnet informatica © Infine gettatevi nella ricerca della soluzione effettuando test e tentando di isolare il problema. In questo senso, avrete bisogno di un insieme di tool per il troubleshooting che sapete usare bene. Non c'è niente di più utile di un sacco di esperienza per aiutarvi a risolvere un problema difficile, anche se è qualcosa che non avete mai visto prima. 27 TROUBLESHOOTING La cassetta degli attrezzi Burstnet informatica © Le applicazioni di gestione di rete specializzate nell'individuare i problemi e nella loro risoluzione sono numerose, ma ce n'è una decina davvero indispensabile per chi si occupa di troubleshooting. Si tratta di strumenti davvero utili, dunque conviene assicurarsi che nella "cassetta degli attrezzi" non manchino se si vuole essere certi di gestire la propria rete in modo efficiente. 28 TROUBLESHOOTING Ping - Il ping verifica la connettività end-to-end inviando un pacchetto ICMP (Internet Control Message Protocol) per vedere se un nodo o un dispositivo sono on-line e rispondono. Uno dei primi passi nel troubleshooting di una rete è l'uso dell'indirizzo IP di loopback generico "ping 127.0.0.1" per il test del dispositivo locale. Si può usare il ping anche per testare l'unità massima di trasmissione, cioè la quantità massima di dati che possono essere trasportati in ciascun pacchetto end-toend. Burstnet informatica © 29 TROUBLESHOOTING a ciò, il ping può servire a misurare il tempo di percorrenza in millisecondi fino a un altro dispositivo collegato alla rete. Burstnet informatica © Oltre 30 TROUBLESHOOTING Per fare un esempio, immaginate di inviare un ping a un dispositivo remoto e che ci voglia molto tempo per ottenere una risposta. Per capire dove si verifica il ritardo si può usare traceroute, che esamina i tempi di percorrenza per ciascun router. Burstnet informatica © Traceroute - Il traceroute si basa sulla funzionalità di ping valutando i "salti" (hop) lungo un percorso e calcolando il tempo che occorre a un pacchetto per viaggiare da un router a quello successivo. 31 TROUBLESHOOTING Analizzatore di protocollo o di rete Un analizzatore di protocollo è assolutamente necessario per un Network administrator. Gli analizzatori catturano in un buffer tutti i pacchetti, o solo quelli definiti da un sistema di filtraggio, quindi li decodificano per dare una definizione leggibile del loro contenuto. Alcuni analizzatori particolarmente sofisticati sono in grado di interpretare gli schemi di comunicazione per produrre allarmi e consigli per il troubleshooting. Burstnet informatica © 32 TROUBLESHOOTING Port scanner - La scansione delle porte può dirvi quali servizi sono disponibili su un dispositivo. Tuttavia, come il ping può provocare una reazione da parte del vostro ISP, anche la scansione e il sondaggio delle porte possono essere visti come azioni ostili o intrusioni che violano gli accordi. Nslookup/DIG - Le utility nslookup di base interrogano i server DNS (Domain Name System). Una query nslookup chiede al server DNS di default la traduzione del nome dell'host in indirizzo IP. DIG (Domain Internet Grouper) è simile a nslookup. ma ottiene dal server DNS una risposta più dettagliala. Burstnet informatica © 33 TROUBLESHOOTING ARP - ARP (Address Resolution Protocol) tiene traccia degli indirizzi IP e degli indirizzi di rete corrispondenti. E’ possibile leggere le tabelle ARP per individuare l'indirizzo hardware che viene adoperato per inviare i pacchetti. Route - Route è un'utility che consente di leggere e manipolare le tabelle di routing IP su un dispositivo locale. Le Tabelle determinano il "salto" successivo lungo il percorso verso un host o una rete e indicano il gateway di default. Burstnet informatica © 34 TROUBLESHOOTING Strumenti SNMP - Gli strumenti di gestione SNMP (Simple Network Management Protocol) offrono un modo per raccogliere e visualizzare i dati del MIB (Management Information Base) estratti da dispositivi che supportano agenti SNMP. Si può tenere traccia dei dispositivi SNMP tramite un sistema di allarmi e avvisi che avverte il manager SNMP quando viene superata una soglia definita dall'utente. Uno dei principali ostacoli all'adozione di un sistema SNMP è la mancanza di un prodotto veramente "cross-platform". Burstnet informatica © 35 TROUBLESHOOTING Cable tester - Per eseguire il test e il troubleshooting del cablaggio di rete occorre un cable tester: si tratta di strumenti capaci di produrre resoconti sulla lunghezza totale dei cavi, i risultati dei test, il crosstalk near-end, l'attenuazione, l'impedenza e altro ancora. Alcuni produttori di cable tester definiscono i loro strumenti come analizzatori di rete. Benché questi dispositivi siano in grado di dare alcune informazioni sui tipi di pacchetti che attraversano il cavo, non possono sostituire gli analizzatori di rete veri e propri, che visualizzano il contenuto dei pacchetti stessi Burstnet informatica © 36 TROUBLESHOOTING Burstnet informatica © Strumenti combinati - Esistono numerosi prodotti che combinano vari strumenti di troubleshooting. Ciascuno di essi fornisce un gruppo di utility che consentono di eseguire la scansione delle porte, il ping, il traceroute e l'nslookup risparmiando ore di lavoro. Può anche essere interessante prendere in considerazione altre utility che forniscono informazioni di base sulla configurazione e le connessioni, come IPCONFIG e netstat di Windows. Un calcolatore di indirizzi IP è un altro strumento che può essere comodo avere a portata di mano: è possibile anche trovarne una versione freeware su Internet. 37 TROUBLESHOOTING Burstnet informatica © Risoluzione delle problematiche di rete con linux Gli strumenti di base che si utilizzano per indagare sono ping, traceroute e netstat. ping invia una richiesta di eco ICMP via rete a una macchina di destinazione ed è il punto da cui si parte per affrontare qualsiasi problema di rete, ping fornisce informazioni riguardo all'accessibilità di un altro computer in rete e al tempo che occorre per inviare un pacchetto di dati a un altro computer e riceverlo di ritorno. 38 TROUBLESHOOTING — www.netwharf.com ping statistics — 3 packets transmitted, 3 packets received, 0% packet loss round-trip min/avg/max = 1.0/1.2/1.8 ms Burstnet informatica © Per esempio, per vedere se l'host .netwharf è online: root@ns /root]# ping www.netwharf.com PING www.netwharf.com (209.42.203.228): 56 data bytes 64 bytes from 209.42.203.228: icmp_seq=0 ttl=255 time=1.8 ms 64 bytes from 209.42.203.228: icmp_seq=1 ttl=255 time=1.0 ms 64 bytes from 209.42.203.228: icmp_seq=2 ttl=255 time=1.0 ms 39 TROUBLESHOOTING Se ping non può convertire in un indirizzo IP il nome di host, può significare che esiste un problema con i DNS. Controllate in /etc/resolv.conf che le impostazioni dei DNS siano corretti. Se tutto sembra in ordine, si può usare il comando nslookup per vedere se il vostro server riesce a convertire i nomi: nslookup www. netwharf. com. infine, accertatevi di non avere commesso errori di digitazione nel nome di host. Burstnet informatica © 40 TROUBLESHOOTING A questo punto, ping fornisce un numero sequenziale per segnalare se la connessione sta depositando pacchetti di dati. Infine, ping indica quanto tempo ha impiegato un pacchetto per attraversare la rete. Entrambi i dati danno indicazioni sull'efficienza della rete e sui potenziali problemi. Ma sapere che la rete riesce a inviare e ricevere pacchetti non è sufficiente per individuare il problema che rallenta la rete. Burstnet informatica © 41 TROUBLESHOOTING Usate traceroute per capire dove si trova il collo di bottiglie nella rete. Il programma invia pacchetti di dati e poi indica i percorsi che il pacchetto ha seguito nei tortuosi corridoi di Internet. Quando un pacchetto entra nelle rete, viene pilotato da vari router, e più sono i router attraversati, maggiori sono le probabilità di incontrare problemi. Per vedere quante volte un pacchetto viene deviato nel suo percorso, usate … Burstnet informatica © 42 TROUBLESHOOTING [root@ns /root]# /usr/sbin/traceroute www.mcp.com Burstnet informatica © traceroute to www.mcp.com (198.7C.146.70), 30 hops max, 40 byte packets 80.908 ms 82.393 ms 66.180 ms 66.824 ms gateway (209.42.203.225) 3.764 ns 3.150 ms 3.052 ms max4000-1.rtp.intrex.net (209.42.192.1) 34.528 ms 32.074 ms 31.190 ms 209.42.192.30(209.42.192.30) 33.264 ms 33.012 ms 31.607 ms rtp-rtr1-e1.intrex.net (209.42.255.17) 33.393 ms 44.959 ms 32.609 ms sl-gw4-atl-4-0-2xT1.sprintlink.net (144.228.86.53) 61.957 ms 47.754 ms •» 51.439 ms sl-Pb10-atl-1-2.sprintlink.net (144.232.12.29) ■» 48.498 ms sl-bb10-fw-4-0.sprintlink.net (144.232.8.98) » 69.790 ms 144.232.11.10 (144.232.11.10) 91.006 ms 64.449 ms 70.304 ms 144.232.9.253 (144.232.9.253) 76.865 ms 74.102 ms 78.176 ms 85.514 ms 87.983 ms 90.575 ms 90.760 ms 75.226 ms sl-bb11-chi-4-0.sprintlink.net (144.232.9.118) 92.362 ms 101.582 ms «» 93.251 ms sl-bb11-chi-8-0.sprintlink.net (144.232.10.5) 85.014 ms •» 85.111 ms 12 sl-gw14-chi-8-0-0.sprintlink.net (144.232.0.194) ■» 92.611 ms sl-napnet-2-0-0-T3.sprintlink.net (144.228.159.18) » 77.879 ms chi-f0.iquest.net (206.54.225.250) 92.193 ms 114.950 ms 81.379 ms 204.180.50.9 (204.180.50.9) 85.988 ms 108.888 ms 86.364 ms iq-ind-core1.iquest.net (206.53.249.1) 99.583 ms 91.685 ms 111.068 ms 43 * iq-ss2.iquest.net (206.246.190.161) 96.229 ms 82.107 ms TROUBLESHOOTING Traceroute assegna un nome alla traslazione IP e quindi, per ogni router attraversato dal pacchetto, visualizza una riga di informazioni. Ogni riga contiene il numero corrispondente al router, il nome e il numero IP del router, e il tempo impiegato per raggiungere quel particolare router. Un asterisco indica quanto tempo ha impiegato più del previsto il pacchetto per raggiungere la sua destinazione. Burstnet informatica © 44 TROUBLESHOOTING Se un sito non risponde, traceroute continua a ripetere una riga di tre asterischi per ogni cambio di percorso tentato. Il router finale mostrato dà un'indicazione riguardo alla posizione in cui ha origine il problema, dato che il cambio di percorso successivo non è effettuabile. Naturalmente, bisogna avere la possibilità di uscire dalla propria rete corrente per raggiungere un'altra destinatone. Burstnet informatica © 45 TROUBLESHOOTING Burstnet informatica © Il programma netstat contempla l'uso di numerose opzioni per ottenere informazioni sullo stack TCP/IP in esecuzione sul vostro sistema. I pacchetti di dati vengono indirizzati in base ai valori inseriti nelle tabelle di routing dei vostri sistemi. 46 TROUBLESHOOTING [root@ns /root]# netstat -rv Kernel IP routing table MSS Window irtt Burstnet informatica © Destination Gateway Genmask Flags iface Iface ns2.netwharf.co * 255.255.255.255 UH 0 Eth0:0 www.nightskyweb * 255.255.255.255 UH 0 Eth0:1 209.42.203.224 * 255.255.255.224 U 127.0.0.0 * 255.0.0.0 U Default gateway.netwhar 0.0.0.0 UG 0 1500 0 1500 0 1500 0 3584 0 0 Eth0 0 lo 1500 0 47 TROUBLESHOOTING Il dato più importante da controllare per quanto riguarda l'accesso a Internet e la voce per il gateway di default, elencata nella colonna Destination. Questo è il percorso in cui il computer invia un pacchetto di dati nel caso non sappia dove indirizzare i dati. Dovreste effettuare il ping sul computer indicato nella colonna Gateway per verificare che sia disponibile. Se avete il dubbio di avere configurato il gateway sbagliato, verificate presso il vostro provider o dal vostro amministratore di rete, nel caso in cui non lo siate voi stessi … Burstnet informatica © 48 TROUBLESHOOTING Internet e la comunità rappresenta la vostra più grande risorsa per il troubleshooting. Burstnet informatica © Considerazioni generali: Le Anomalie di rete possono dipendere da più fattori. La maggior parte delle volte si riesce a risolvere con gli strumenti mostrati. Altre volte Malware o altre cause rendono la soluzione difficoltosa. Un approccio metodico alle problematiche di rete vi aiuterà ad inquadrare il problema 49