erlug
[Top] [All Lists]

Re: [Erlug] traceroute/ping (era: ping di un ip dinamico)

To: ERlug - Lista Pubblica <erlug@xxxxxxxxxxxxxx>
Subject: Re: [Erlug] traceroute/ping (era: ping di un ip dinamico)
From: Maurizio Lemmo - Tannoiser <tannoiser@xxxxxxxxxxx>
Date: Sat, 16 Dec 2006 14:16:19 +0100
* sabato 16 dicembre 2006, alle 12:01, Guido Bolognesi [Zen] scrive:
> >protocolli di rete. traceroute traffica icmp, e quindi subisce lo  
> >stesso
> >trattamento di ping. Al limite ti e` utile per capire dove avviene il
> 
> Immagino tu stessi semplificando a scopi divulgativi, perche` come sai
> non e` completamente vero.

Of Course. Questione di "scala del problema". Se mi dici "non raggiungo
il mio host perche` non mi risponde al ping", mi sento di portare il
tutto a classe di problemi.

Nello specifico, a beneficio della platea:

ping manda pacchetti icmp di tipo ECHO (ECHO_REQUEST e possibilmente si
attende un ECHO_REPLY).

traceroute, di _default_, almeno l'implementazione unix (quella windows
e` diversa), utillizza il campo "time to live" del datagramma ip, per
definire, sulla base della risposta *icmp* TIME_EXCEEDED, i vari hop.

Risultato, se io filtro icmp _tutto_, sia ping (perche` non arriva
ECHO_REQUEST e/o non parte ECHO_REPLY), sia traceroute (perche` non
parte TIME_EXCEEDED) funzionano come ci si aspetta.

L'opzione -I di traceroute, permette di usare ECHO_REQUEST per fare
probing ma il problema non si risolve, essendo anche esso parte delle
richieste icmp (anzi sposto tutto su icmp).

Per questi host (che io considero malconfigurati), l'unica e` uscire da
udp e da icmp e andare di probing via tcp. O con tcptraceroute che
implementa la tecnica di inviare dei tcp SYN per calcolare il path
anziche` udp o icmp, aggirando cosi la molteplicita` dei firewall
configurati in questo modo, o con software piu` complesso come nmap.

Prima che me lo chiedi: per i firewall stateless, puoi usare l'opzione
-A che imposta il flag tcp ACK nei pacchetti uscenti.

Fa anche altre cose utili.

E` meno killer-app rispetto a nmap, nmap e` molto casinaro (e
ovviamente, fa centomilioni di cose in piu`).

> Traceroute sotto unix di default manda pacchetti udp in un range di  
> porte
> che partono dalla 33434 e si basa sui pacchetti icmp time exceeded che
> tornano indietro al sender.

Appunto. Se filtro icmp, non ti tornano i pacchetti, e l'effetto
"visivo" e` che traceroute non va. ;)

> Solo l'implementazione di Windows utilizza icmp in entrambi i sensi.[1]
> Non so sotto linux, l'implementazione che ho io (4.3BSD) permette di  
> specificare
> quale delle due modalita` usare (-I / -P icmp), e pare supporti pure  
> GRE.
> 
> Questa e` solo una delle dimostrazioni del perche` bloccare icmp in
> modo indiscriminato e` una cagata pazzesc^W^W^W^W non ha molto senso.

Ti quoto con il sangue (c). ;)

> >Pubblico e dinamico e` un concetto
> >commerciale, non tecnico.
> 
> Eh? pubblico/non pubblico mi pare che sia un concetto dipendente da  
> RFC1918,
> storture fastweb-like a parte. Dinamico/fisso, al limite puo` essere
> una distinzione commerciale per le offerte di adsl/ppp casalinghe,
> in altri contesti e` piuttosto chiara (tecnicamente) la differenza. :P

Yep, volevo poi scrivere statico/dinamico.

> yo!

bring the noise!

-- 
                          Maurizio - Tannoiser - Lemmo
                 Founder Member of ERLUG http://erlug.linux.it
-------------------------------------------------------------------------------
Oggi come oggi RIP1 su un router e` utile ed attuale come la
regolazione manuale dell'anticipo su un'automobile.
        -- ap

<Prev in Thread] Current Thread [Next in Thread>