Newsgroup: it.comp.os.linux.sys
Titolo: Disperazione routing

Ciao a tutti,
sono arrivato a un punto di disperazione! Sto cercando di accedere a
Internet da un pc Win dentro una rete che è connessa a Internet tramite
Linux che svolge la funzione di router. Il problema è che non riesco a
configuralo. Ho settatto iptables in modo da accettare qualsiasi cosa:
iptables -A INPUT -j ACCEPT
iptables -A OUTPUT -j ACCEPT
iptables -A FORWARD -j ACCEPT
non c'è verso di far pingare il pc windows con un qualsiasi sito esterno
alla mia rete! :(
facendo un tracert da Win con un indirizzo internet, ho visto che fino
all'indirizzo della scheda ethernet della Linux Box ci arriva:
C:\Documents and Settings\User>tracert 
www.nba.com
Impossibile risolvere il nome del sistema di destinazione 
www.nba.com
.
C:\Documents and Settings\User>tracert 151.5.217.225
Rilevazione instradamento verso 151.5.217.225 su un massimo di 30 punti di
passaggio
  1    <1 ms    <1 ms    <1 ms  192.168.0.1 (indirizzo della scheda del
router connessa alla LAN)
  2     *        *        *     Richiesta scaduta.
  3     *        *        *     Richiesta scaduta.
Come potete notare se metto l'url non funziona mentre se metto l'ip almeno
sino al router ci arriva!
Naturalmente ho abilitato anche il forwarding con:
echo 1 > /proc/sys/net/ipv4/ip_forward
Avete qualche suggerimento per aiutarmi? non devo configurare il router in
nessun modo praticolare, devo solo poter accedere a Internet dal pc con
WinXp!
Vi prego aiutatemi perchè dopo aver letto kili e kili di documentazione
ancora non riesco a vedere la luce in fondo al tunnel!!!
Grazie,
Francesco

 tramite Linux che svolge la funzione di router. Il problema è che non
Il tuo linux svolge egregiamente la funzione che gli hai chiesto, cioe'
quella di router. Il tuo problema e' che tu non vuoi un router ma un NAT,
che con ipchains si ottiene usando:
ipchains -P forward DENY
ipchains -A forward -s 
192.168.0.0/24
 -j MASQ
Con iptables la sintassi dovrebbe essere analoga.
Ciaotutti,
*

 echo 1 > /proc/sys/net/ipv4/ip_forward
Ho letto il tuo thread precedente. Meglio leggere piu' attentamente la
documentazione in 
netfilter.samba.org
, oltretutto per la maggior parte
tradotta in italiano.
Cmq, non basta, devi... "nattare", o meglio, "mascherare":
/sbin/iptables -t nat -s 
10.10.10.0/24
 -A POSTROUTING \
-o eth0 -j MASQUERADE
Dove al posto di 
10.10.10.0/24
 metti la rete privata che vuoi far accedere a
internet.
Meglio "pulire" tutte le catene prima della precedente regola (ogni comando
iptables che dai aggiunge _sempre_, anche se la regola che digiti e' la
stessa).
# Initializating chains and policies
/sbin/iptables -F
/sbin/iptables -t nat -F
/sbin/iptables -t mangle -F
/sbin/iptables -X
/sbin/iptables -P INPUT ACCEPT
/sbin/iptables -P FORWARD ACCEPT
/sbin/iptables -P OUTPUT ACCEPT
Anche se le catene sono tutte in ACCEPT, e' meglio dare questa in input e
forward (non sia che poi le metti in drop, e non ti funzia piu' niente, ne
dalla linux box, ne dalla lan...).
--
La logica non attiene alla verosimiglianza delle ipotesi,
ma alla coerenza delle tesi con le ipotesi.


Finalmente sono riuscito nel mio intento, con iptables la sintassi č:
iptables -t nat -A POSTROUTING -s 
192.168.0.0/24
 -j MASQUERADE
la cosa che non capisco č per cosa sta POSTROUTING?
Grazie,
Francesco

 echo 1 > /proc/sys/net/ipv4/ip_forward
Ho letto il tuo thread precedente (ma sei lo ^spawn^ che conosco io? :-).
Meglio leggere piu' attentamente la
documentazione in 
netfilter.samba.org
, oltretutto per la maggior parte
tradotta in italiano.
Cmq, non basta, devi... "nattare", o meglio, "mascherare":
/sbin/iptables -t nat -s 
10.10.10.0/24
 -A POSTROUTING \
-o eth0 -j MASQUERADE
(la "\" vuol dire continuzione linea, per la shell)
Dove al posto di 
10.10.10.0/24
 metti la rete privata che vuoi far accedere a
internet (/24 corrisponde alla subnet 255.255.255.0).
Meglio "pulire" tutte le catene, prima di tutto (tien i presente che ogni
comando iptables che dai aggiunge _sempre_ una regola, anche se la regola che
digiti e' la stessa).
/sbin/iptables -F
/sbin/iptables -t nat -F
/sbin/iptables -t mangle -F
/sbin/iptables -X
/sbin/iptables -P INPUT ACCEPT
/sbin/iptables -P FORWARD ACCEPT
/sbin/iptables -P OUTPUT ACCEPT
Anche se le catene sono tutte in ACCEPT, e' meglio dare questa in input e
forward (non sia che magari successivamente le metti in drop o reject, e non
ti funzia piu' niente, ne dalla linux box, ne dalla lan...).
/sbin/iptables -A INPUT -m state --state \ ESTABLISHED,RELATED -j ACCEPT
/sbin/iptables -A FORWARD -m state --state \ ESTABLISHED,RELATED -j ACCEPT
Saluti,
G.L.



Senza guardare la documentazione, supporrei che significhi: routa il
routabile e natta il resto.
Ciaotutti,
*

 la cosa che non capisco è per cosa sta POSTROUTING?
E la catena attraversata dopo che e' stata effettuata la decisione di routing.
Complementarmente, PREROUTING viene attraversata prima della decisione di
routing. Se vi' e' routing, dopo la decisione di forwardare il pacchetto, si
attraversa POSTROUTING e FORWARD; altrimenti se non vi e' routing, si va in
INPUT.
bye G.L.


Potrsti fare un sunto dei pasi da eseguire per trasformare una Linux Box in
NAT e possibilmente una spiegazione meticolosa per capire il funzionamento
della cosa??
Sempre se č possibile Grazie
--------------------------------
Inviato via 
http://usenet.libero.it

 della cosa??
Eh no, eh... e che sono? :-))))
Lo fanno meglio gli howto, ed e' comunque IMHO meglio partire da zero che con
script pronti, per assimilare). I mattoncini poi li metti assieme tu, al fine
di diventare autonomo (che e' importante, se non fondamentale)...
http://www.netfilter.org/documentation/
bye G.L.


Penso già di aver capito tutto con questo dibattito...
Era solo per confermare e fare un'pò di "pulizia" in testa.
cmq grazie è anke il mio motto!
