Re: Timeout
On Tue, Feb 05, 2002 at 10:26:14AM +0100, blitzkrieg wrote:
> On Mon, Feb 04, 2002 at 03:40:54PM +0100, walter valenti wrote:
> > sto usando una Debian GNU/Linux2.2r5 (kernel 2.2.19-ide), ho la
> > necessità di cambiare un timeout dello stack TCP/IP.
>
> > quando cerco di iniziare una connessione con una connect (quindi mando
> > un SYN), lo stack rimane in attesa, per un tempo piuttosto lungo, di
> > ricevere qualcosa (un SYN|ACK se la connessione va a buon fine, o un RST
> > se la connessione viene rifiutata). Può però non roicevere nulla, perchè
> > per eesempio, la porta dall'altra parte è "firewallata" (che brutta
> > parola !!!).
>
> > Qualcuno sa come si può fare ?????
>
> Non e' cosi' semplice, la gestione del timeout tcp e' abbastanza
> complessa, cioe' non e' un valore fisso, ma varia e dipende dai
> timeout precedenti. Questo perche' le possibili cause di un timeout
> sono molte (perdita del pacchetto, intasamento di qualche nodo,
> distanza della destinazione etc.). Se vuoi modificare questo timeout
> per lo stack del kernel (cosa che ti sconsiglio) devi modificare la
> funzione tcp_rtt_estimator in linux/net/ipv4/tcp_input.c e ricompilare
> il tutto. Se questa modifica la devi usare solo per il tuo bel
> portscan devi trovare la funzione che gestisce il timeout (solitamente
> e' gestito internamente nei portscan), modificare e compilare
Penso volesse sapere: setsockopt(2), /usr/include/sys/socket.h,
/usr/include/bits/socket.h e soprattutto /usr/include/asm/socket.h
(SO_RCVTIMEO e SO_SNDTIMEO), ma Stevens (UNP 1990) riporta che questi
valori non sono utilizzati.
vedi anche: ioctl(2), fcntl(2) se non sei sicuro che vada, che
funziona, etc. per fortuna hai sorgenti (Glibc, Linux) che sono la
fonte piu' sicura.
... e magari usa qualche libro, spendi qualche soldo ma risparmi
parecchio tempo (se poi i libri riesci a farteli prestare ...;)
Ciao,
Daniele.
Reply to:
- References:
- Timeout
- From: walter valenti <walter@waltervalenti.it>
- Re: Timeout
- From: blitzkrieg <blitzkrieg@sitoverde.com>