Pagina 1 di 3

LAN -- connessione ad internet

Inviato: sab 19 feb 2005, 11:25
da gallows
vorrei condividere tramite LAN la connessione ad internet, come si fa?
<BR>
<BR>ho un modem ethernet (dlink300t) connesso al server.
<BR>i due pc si "vedono" e riesco a montare i fs tramite nfs.
<BR>
<BR>grazie in anticipo :)<br>

LAN -- connessione ad internet

Inviato: sab 19 feb 2005, 12:10
da meritil
Devi offrire il servizio di NAT al pc client tramite questa regola iptables:
<BR>
<BR>iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to 1.2.3.4 (indirizzo ip del server)
<BR>
<BR>Poi al client puoi offrire anche un servizio di dhcp serving attivando il demone dhcpd sul server o altrimenti puoi settare l´indirizzo del client a mano (quindi statico) l´importante è che il client abbia: DNS (del tuo isp) GATEWAY (l´indirizzo IP del server quindi del pc che ha il modem ethernet) finito...
<BR>
<BR>La regola iptables puoi metterla in rc.local o wrapparla in uno script tipo rc.nat e richiamarlo sempre da rc.local
<BR>
<BR>Ciao :-]
<BR>
<BR>ps: Sei sicuro che il tuo modem non sia anche un router? altrimenti le cose sarebbero molto più semplici, quantomeno non devi avere per forza acceso il pc server per usare la connessione sul client.. controlla mi pare che con un aggiornamento del firmware il tuo modem diventa router...
<BR>
<BR>ps2: eth0, nella regola ipt, deve essere l´interfaccia nella quale arrivano le richieste del pc client... <br>

LAN -- connessione ad internet

Inviato: sab 19 feb 2005, 12:58
da Bart
Meritil mi spiegheresti questa regola perfavore:
<BR><!-- BBCode Start --><TABLE BORDER=0 ALIGN=CENTER WIDTH=85%><TR><TD><font size=-1>Code:</font><HR></TD></TR><TR><TD><FONT SIZE=-1><PRE> iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to 1.2.3.4 (indirizzo ip del server) </PRE></FONT></TD></TR><TR><TD><HR></TD></TR></TABLE><!-- BBCode End -->
<BR>Da quello che so io il natting viene usato per assegnare ip agli host ma credo che in questo caso sia diverso.
<BR>Tempo fa avevo messo in lan un paio di pc e non avevo usato regole del genere perciò la cosa mi incuriosisce. Se non ti scoccia mi faresti un piacere. Grazie mille :-) <br>

LAN -- connessione ad internet

Inviato: sab 19 feb 2005, 13:41
da meritil
Assegnare gli IP agl´host è il lavoro del DHCP (dynamic host configuration prot.)
<BR>Il NAT (network addres traslator) è una macchina che ha la possibilità di raggiungere altre reti (internet per esempio) e offre la possibilità alle macchine nella sua LAN di arrivare verso queste altre reti tramite il suo IP, praticamente si fa intermediario tra le 2 reti, solitamente il NAT infatti coincide con il GATEWAY.
<BR>Come fa?
<BR>Premesse:
<BR>1) I client impostano come gateway il NAT anche se il gateway effettivo potrebbe essere un altro..
<BR>2) LAN 192.168.1.0/24
<BR>3) NAT= IP interno: 192.168.1.1 IP esterno: 213.155.195.196
<BR>
<BR>Un client 192.168.1.2 richiede una connessione TCP verso 10.0.0.1 sulla porta 21 quindi l´header del pacchetto per l´apertura della connessione risulterà:
<BR>
<BR>sourceIP sourcePRT destIP destPRT
<BR>192.168.1.2 12345 10.0.0.1 21
<BR>
<BR>il pacchetto che non è per la rete interna raggiungerà il GATEWAY verso il resto del mondo, cioè 192.168.1.1
<BR>
<BR>Il NAT appena arriva tale pacchetto che fa?
<BR>Sceglie una porta tra quelle disponibili (54321 per es.) e ci mappa la connessione del client in questo modo:
<BR>
<BR>Cambia l´header del pacchetto in uscita e ci si mette lui come mittente..
<BR>
<BR>sourceIP sourcePRT destIP destPRT
<BR>213.155.195.196 54321 10.0.0.1 21 (effettua la sostituzione cioè si prende carico della connessione)
<BR>
<BR>poi per poter fornire al client i "pacchetti di ritorno" mantiene un opportuna tabella detta Network Address Traslation Table fatta più o meno così:
<BR>
<BR>sourceIP sourcePRT destIP destPRT
<BR>213.155.195.196 54321 192.168.1.2 12345
<BR>
<BR>Con questa tabella effettua le TRADUZIONI ossia il demultiplexing dei pacchetti in entrata.
<BR>
<BR>Caso particolare quando nella LAN c´è un server che necessita di poter essere contattato dall´esterno..
<BR>In questo caso bisogna definire una mappatura fissa degl´indirizzi tramite un altra tabella ancora:
<BR>Assumendo che 192.168.1.100 sia il server web della LAN
<BR>
<BR>
<BR>PORTA IPaddress
<BR>80 192.168.1.100
<BR>
<BR>In questo modo ogni pacchetto per l´apertura di connessione proveniente dall´esterno (quindi sull´ip 213.ecc.ecc.ecc) verso la porta 80 viene rediretto in maniera statica sulla porta 80 di 192.168.1.100.. in questo caso si dice che 192.168.1.100 è trasparente rispetto la porta 80.
<BR>
<BR>
<BR>Tornando alla regola di iptables:
<BR>
<BR>iptables -t nat -A POSTROUTING
<BR>
<BR>Questa parte specifica che la macchina deve lavorare come NAT sulla tabella POSTROUTING ossia dei pacchetti in uscita..
<BR>
<BR> -o eth0
<BR>
<BR>Specifica l´interfaccia sulla quale accettare pacchetti da tradurre
<BR>
<BR>-j SNAT --to 1.2.3.4
<BR>
<BR>SNAT=SourceNAT ossia cambiare il source_address con 1.2.3.4 e la source_port con la prima disponibile (regole sulle porte non vanno specificate sono intrinseche dal momento in cui metti -t nat -A POSTROUTING )
<BR>
<BR>
<BR>
<BR>Ciao :-]
<BR>
<BR>ps: Spero di essere stato chiaro.. cmqe c´è un sacco di doc in giro per la rete..<br>

LAN -- connessione ad internet

Inviato: sab 19 feb 2005, 13:41
da Michele84
Ciao,
<BR>in effetti quella regola è un po dubbiosa.... ho appena provato ad azzerare il nat nella mia Lan e impostarla con quel comando ma purtroppo non mi funziona nulla.
<BR>Ho ripritinato il nat tramite MASQUERADE e tutto funziona perfettamente.
<BR>
<BR>Ciauz!<br>

LAN -- connessione ad internet

Inviato: sab 19 feb 2005, 13:43
da Michele84
Azz... abbiam postato assieme!
<BR>
<BR>MI riferivo al messaggio di bart<br>

LAN -- connessione ad internet

Inviato: sab 19 feb 2005, 13:51
da meritil
Probabilmente ti servi di un modem per connetterti ad altre reti, tramite l´interfaccia ppp0 e quindi hai necessariamente bisogno del MASQUERADE, quindi con la regola che ho suggerito a Gallows non ci fai nulla..
<BR>Tu dovresti approcciare in questo modo:
<BR>
<BR>iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
<BR>
<BR>e attivare il forwarding
<BR>
<BR>echo 1 > /proc/sys/net/ipv4/ip_forward
<BR>
<BR>Non sono sicuro di queste regole non ho mai avuto modem dialer
<BR>
<BR>Ciao :-] <br>

LAN -- connessione ad internet

Inviato: sab 19 feb 2005, 13:53
da useless
MASQUERADE e SNAT sono sostanzialmente la stessa cosa. la prima è + indicata x chi ha un ip variabile, dato che resetta la tabella delle connessioni attive quando cade la connessione. tutta lì la differenza (o qualcosa di simile, comunque è nel man di iptables se non erro).
<BR>
<BR><!-- BBCode Start --><A HREF="http://www.danasoft.com" TARGET="_blank"><!-- BBCode Start --><IMG SRC="http://www.danasoft.com/sig-ita.jpg"><!-- BBCode End --></A><!-- BBCode End -->
<BR>Think free @ <!-- BBCode Start --><A HREF="http://www.nyft.org" TARGET="_blank">http://www.nyft.org</A><!-- BBCode End -->
<BR><BR><BR>[ Questo Messaggio è stato Modificato da: useless il 19-02-2005 13:54 ]<br>

LAN -- connessione ad internet

Inviato: sab 19 feb 2005, 13:59
da Michele84
Ho appena impostato il modem come router ma lo stesso non c´è nulla da fare.
<BR>ho adsl e normalmente uso il router come modem con rp-pppoe (preferisco cosi).
<BR>Questa è la regola che uso io
<BR>
<BR>iptables -t nat -A POSTROUTING -d ! 1.2.3.4/XX -j MASQUERADE
<BR>
<BR>In ogni caso gallows con questi post potrà fare un bel po di prove e riuscire a condividere internet!
<BR>
<BR>Ciauz alls!!! :-] :-] :-] <br>

LAN -- connessione ad internet

Inviato: sab 19 feb 2005, 14:08
da meritil
Cmqe per tagliare la testa al toro se avete a che fare con condivisioni internet affidatevi a un router lasciate perdere i modem e i NAT tramite iptables.
<BR>Perchè:
<BR>
<BR>1° Un router è hardware dedicato quindi più veloce di un sistema operativo (tranne in rari casi)
<BR>2° Vi evita di dover avere acceso il Pc server se volete navigare da altri pc nella LAN
<BR>3° A seconda di quanti Pc si servono del NAT e di quanto è grande il traffico di tali pc il server comincia ad accusare questo overhead di lavoro, e il canale dello switch verso il Pc server risulterebbe costantemente bombardato, riducendo la probabilità che il Pcserver trovi il canale libero per comunicare i fattacci suoi verso altri pc della LAN. (vedi ethernet)
<BR>4° Il NATTING è solo un trucchetto che fu inventato per sopperire al costante incremento delle richieste di IP publici.. quindi un IP viene sfruttato da un intera LAN tramite NAT riducendo le richieste...(in attesa di IPv6 con indirizzi a 128bit range adeguato per fornire un IP ad ogni granello di sabbia del pianeta :-] )
<BR>
<BR>Fastweb ci campa con il NATTING, infatti chi ha fastweb è dietro enormi NAT, ecco perchè dall´esterno risultate inesistenti.
<BR>
<BR>Ciao :-] <br>

LAN -- connessione ad internet

Inviato: sab 19 feb 2005, 14:11
da meritil
@Michele: Come è collegato il tuo modem/router al PC e come è collegato a sua volta il PC al resto della LAN?<br>

LAN -- connessione ad internet

Inviato: sab 19 feb 2005, 14:14
da meritil
e più che altro se hai un router perchè fai transitare il traffico per il Pc?<br>

LAN -- connessione ad internet

Inviato: sab 19 feb 2005, 14:28
da Michele84
I motivi sono questi... preferisco avere un modem al posto del router perchè cosi ho il pc direttamente collegato con l´esterno senza bypassare da router.
<BR>Seconda cosa ho molti servizi es pop3 imap ssh http ecc e con un router mi verrebbe difficile mappare tutte le porte e calcolando che non ho ipstatico se spengo il server non ho più il reverse del mio ip, quindi perderei sito, mail ecc.
<BR>
<BR>In ogni caso ho un pc con 2 schede di rete dove eth1 va direttamente collegata tramite cavo crossover al modem mentre con eth0 vado a collegarmi ad uno switch con i relativi pc in rete.
<BR>
<BR>Premetto che è tutto casalingo e per la mia sicurezza non è il massimo (anche se sto implementando pian piano un firewall)
<BR>
<BR>Ps: quando ho fatto la prova impostando il modem come router ho preso un cavo patch e ho collegato direttamente il router allo switch.
<BR>A me interessa che tutto passi attraverso il server.
<BR>
<BR>Ciauz!<br>

LAN -- connessione ad internet

Inviato: sab 19 feb 2005, 14:43
da meritil
Allora se vuoi provare la soluzione router da me proposta:
<BR>
<BR>Imposta il gateway dei client come l´IP del PCServer (indirizzo IP di eth0), imposta i dns e
<BR>
<BR>iptables -t nat -A POSTROUTING -o eth1 -j SNAT --to 1.2.3.4 (indirizzo IP di eth1)
<BR>
<BR>
<BR>Nella tabella di traduzione statica del router invece di mettere porta per porta puoi mettere:
<BR>
<BR>PORTA IPADDRESS
<BR>Default "indirizzo_del_server" (default è una parola chiave)
<BR>
<BR>In modo che il PcServer risulti totalmente trasparente, ossia un mapping P2P con le porte del router. Praticamente diventano la stessa macchina!
<BR>
<BR>Ciao :-] <br>

LAN -- connessione ad internet

Inviato: sab 19 feb 2005, 14:47
da useless
io, come michele, sono fanatico del nat con iptables, xké ho mooooolto + controllo (sia in potenza che in velocità) rispetto ad un routerino hw. poi be´, il carico di cpu a smazzare pacchetti è veramente irrisorio. hai ragione sui motivi ethernet, ma dipende molto dalla tipologia di traffico che si fa.
<BR>quanto al nat, è un trucchetto sì, ma decisamente geniale!<br>