From: Simone Piccardi Date: Mon, 30 Jul 2007 16:57:58 +0000 (+0000) Subject: Alcune precisazioni su alcuni parametri di IP. X-Git-Url: https://gapil.gnulinux.it/gitweb/?a=commitdiff_plain;h=da2b0f696398beb712a79c373c21bf5d1317ad71;p=gapil.git Alcune precisazioni su alcuni parametri di IP. --- diff --git a/biblio.bib b/biblio.bib index ed43c9a..53ba68a 100644 --- a/biblio.bib +++ b/biblio.bib @@ -304,3 +304,17 @@ OPTnote = {}, OPTannote = {} } +@Book{FwGL, + title = {Firewall e VPN con GNU/Linux}, + author = {Simone Piccardi}, + editor = {Truelite Srl}, + publisher = {Truelite Srl}, + year = {2004}, + OPThowpublished = {http://sources.truelite.it/sw/documentazione/docs/firewall.pdf}, + OPTkey = {}, + OPTaddress = {}, + OPTmonth = {}, + OPTyear = {}, + OPTnote = {}, + OPTannote = {} +} \ No newline at end of file diff --git a/sockctrl.tex b/sockctrl.tex index 3204a75..a4cbced 100644 --- a/sockctrl.tex +++ b/sockctrl.tex @@ -2924,11 +2924,12 @@ sez.~\ref{sec:net_sendmsg}). ricerca è disabilitata ed è responsabilità del programma creare pacchetti di dimensioni appropriate e ritrasmettere eventuali pacchetti persi. Se l'opzione viene abilitata, il kernel si incaricherà di tenere traccia - automaticamente della \textit{Path MTU} verso ciascuna destinazione, e - rifiuterà immediatamente la trasmissione di pacchetti di dimensioni maggiori - della MTU con un errore di \errval{EMSGSIZE}.\footnote{in caso contrario la - trasmissione del pacchetto sarebbe effettuata, ottenendo o un fallimento - successivo della trasmissione, o la frammentazione dello stesso.} + automaticamente della \itindex{Maximum~Transfer~Unit} \textit{Path MTU} + verso ciascuna destinazione, e rifiuterà immediatamente la trasmissione di + pacchetti di dimensioni maggiori della MTU con un errore di + \errval{EMSGSIZE}.\footnote{in caso contrario la trasmissione del pacchetto + sarebbe effettuata, ottenendo o un fallimento successivo della + trasmissione, o la frammentazione dello stesso.} \item[\const{IP\_MTU}] Permette di leggere il valore della \textit{Path MTU} di percorso del socket. L'opzione richiede per \param{optval} un intero che @@ -4084,7 +4085,6 @@ accessibile con \texttt{man 7 ip}, sono i seguenti: quanto in caso di problemi di routing si allunga inutilmente il numero di ritrasmissioni. - \item[\procrelfile{/proc/sys/net/ipv4}{ip\_forward}] abilita l'inoltro dei pacchetti da una interfaccia ad un altra, e può essere impostato anche per la singola interfaccia. Prende un valore logico (0 disabilita, diverso da @@ -4103,7 +4103,7 @@ accessibile con \texttt{man 7 ip}, sono i seguenti: l'indirizzo IP è stato configurato automaticamente dal kernel all'avvio attraverso DHCP, BOOTP o RARP; è un valore logico (0 falso, 1 vero) accessibile in lettura, è inutilizzato nei kernel recenti ed eliminato a - partire dal 2.6.18. + partire dal kernel 2.6.18. \item[\procrelfile{/proc/sys/net/ipv4}{ip\_local\_port\_range}] imposta l'intervallo dei valori usati per l'assegnazione delle porte effimere, @@ -4116,9 +4116,28 @@ accessibile con \texttt{man 7 ip}, sono i seguenti: 1024 (o meglio ancora di 4096) per evitare conflitti con le porte usate dai servizi noti. -\item[\procrelfile{/proc/sys/net/ipv4}{ip\_no\_pmtu\_disc}] imposta la - disciplina di ricerca della \itindex{Maximum~Transfer~Unit} \textit{Path - MTU} (vedi sez.~\ref{sec:net_lim_dim} e sez.~\ref{sec:sock_ipv4_options}). +\item[\procrelfile{/proc/sys/net/ipv4}{ip\_no\_pmtu\_disc}] permette di + disabilitare per i socket \const{SOCK\_STREAM} la ricerca automatica della + \itindex{Maximum~Transfer~Unit} \textit{Path MTU} (vedi + sez.~\ref{sec:net_lim_dim} e sez.~\ref{sec:sock_ipv4_options}); prende un + valore logico e di default è disabilitato (cioè la ricerca viene eseguita). + + In genere si abilita questo parametro quando per qualche motivo il + procedimento del \itindex{Maximum~Transfer~Unit} \textit{Path MTU discovery} + fallisce; dato che questo può avveniera a causa di router\footnote{ad + esempio se si scartano tutti i pacchetti ICMP, il problema è affrontato + anche in sez.~1.4.4 di \cite{FwGL}.} o interfacce\footnote{ad esempio se i + due capi di un collegamento \textit{point-to-point} non si accordano sulla + stessa MTU.} mal configurate è opportuno correggere le configurazioni, + perché disabilitare globalmente il procedimento con questo parametro ha + pesanti ripercussioni in termini di prestazioni di rete. + +\item[\procrelfile{/proc/sys/net/ipv4}{ip\_always\_defrag}] fa si che tutti i + pacchetti IP frammentati siano riassemblati, anche in caso in successivo + immediato inoltro;\footnote{introdotto con il kernel 2.2.13, nelle versioni + precedenti questo comportamento poteva essere solo in fase di compilazione + del kernel con l'opzione \texttt{CONFIG\_IP\_ALWAYS\_DEFRAG}.} prende un + valore logico e di default è disabilitato. \item[\procrelfile{/proc/sys/net/ipv4}{ipfrag\_high\_thresh}] limite massimo (espresso in numero di byte) sui pacchetti IP frammentati presenti in coda; @@ -4129,13 +4148,6 @@ accessibile con \texttt{man 7 ip}, sono i seguenti: (specificata in byte) cui viene riportata la coda dei pacchetti IP frammentati quando si raggiunge il valore \texttt{ipfrag\_high\_thresh}. -\item[\procrelfile{/proc/sys/net/ipv4}{ip\_always\_defrag}] se abilitato - (prende un intero come valore logico) tutti i pacchetti IP frammentati - saranno riassemblati, anche in caso in successivo immediato - inoltro.\footnote{introdotto con il kernel 2.2.13, nelle versioni precedenti - questo comportamento poteva essere solo in fase di compilazione del kernel - con l'opzione \texttt{CONFIG\_IP\_ALWAYS\_DEFRAG}.} - \item[\procrelfile{/proc/sys/net/ipv4}{ip\_nonlocal\_bind}] se abilitato (prende un intero come valore logico) è possibile che una applicazione possa collegarsi (con \func{bind} su un indirizzo non locale. Questo può risultare