In questo articolo/howto cercheremo di installare e

Transcript

In questo articolo/howto cercheremo di installare e
lan.pdf
In questo articolo/howto cercheremo di installare e configurare
un piccola lan e attiveremo la condivisione della connessione internet.
Useremo una macchina linux (slackware 8.1) come gateway :
[root@gw aspi]# uname −a
Linux gw 2.4.19 #1 Mon Aug 5 18:54:03 CEST 2002 i686 unknown
La LAN sarà tra i seguenti o.s :
Linux
Linux
Linux
Windows
LAN è l'acronimo di Local Area Network,è una rete di 2 o più pc che
condividono risorse fra loro : queste possono essere file ,
stampanti , scanner , CONNESSIONE INTERNET ecc ecc.
Il tipo di connessione può essere a 10, 100 ed anche 1000 Mbit/secondo.
Un esempio di rete è il Word Wide Web (internet) amministrato dal
protocollo TCP/IP (Transmission Control Protocol e l’Internet Protocol)
dove ogni pc si indentifica tramite un indirizzo ip assegnato dal proprio ISP,
nel caso dei server,l'ip è fisso e si indentifica ad una precisa macchina.
La LAN come rete si basa sullo stesso protocollo ed ogni macchina che la
costituisce è identificata di solito con un indirizzo ip di classe 192.168.*
I pc compenenti la LAN devono avere installata e configurata una scheda
di rete.Questa è una periferica adatta alla creazione di una rete e che permette
1
lan.pdf
quindi la comunicazione con una o più macchine remote .
Queste periferiche vengono chiamate ethernet.Questo perchè supportano
il protocollo Ethernet che è il più diffuso standard per LAN,nonostante non sia
adatto al real−time, per il suo protocollo semplice.
Se si vuole connettere 2,basta usare un cavo cross che permette una connessione
senza l'uso di HUB.E' un cavo " crosslinked " con attacchi RJ45 a 8 poli schermato.
Se si vuole connettere + pc,bisogna usare una periferica.
2
lan.pdf
Per installare una LAN costituita da più di 2 pc è necessario usare
delle periferiche (immagine in alto), che hanno lo scopo di mettere in
comunicazione tutti i pc della rete.
Le periferiche indicate sono :
HUB
SWITCH
Trasmissione dati in
Trasmissione dati in
*
modalità Half−Duplex modalità Full−Duplex*
Banda condivisa: tutti gli Banda dedicata: ogni
utenti condividono la
utente sfrutta la propria
banda dell'hub
banda senza condivisioni
Invia i pacchetti di dati a
Invia i pacchetti di dati
tutti i nodi della rete
direttamente al nodo
finché non raggiunge
della rete richiesto.
quello giusto.
Un importante proprietà che li caratterizza è che con un HUB la banda viene condivisa,
(ogni utente può sfruttare una banda di 10 Mbit/secondo) mentre con lo switch
la banda è dedicata (ogni utente è a disposizione una banda di 100 Mbit/secondo).
3
lan.pdf
Quindi è ovvio che per un uso "casalingo" l'HUB è un ottima periferica,lo switch
anche per la sua ostica configurazione è più adatto a reti aziendali.
Adesso passiamo alla pratica !!
Come primo passo cerchiamo di "installare" e "configurare" la nostra
scheda ethernet in linux.
Come prima cosa cerchiamo nel nostro hardware la scheda.
[root@gw aspi]# dmesg | grep eth0
[root@gw aspi]#
Non avendo nessun output dobbiamo andare a controllare se la scheda è ben inserita,
se è così dobbiamo ricompilare il kernel o inserire il modulo relativo xkè non è
stata riconosciuta al boot di linux.
Una volta fatto questo..."Ditelo con un modulo"
[root@gw aspi]# modprobe 8139too
[root@gw aspi]#
Con il comando modprobe inseriamo il modulo 8139too nel kernel (modulo
relativo alla mia scheda di rete).
Controlliamo se adesso viene trovata e riconosciuta.
[root@gw aspi]# dmesg | grep eth0
eth0: RealTek RTL8139 Fast Ethernet at 0xd88f3000, 00:10:a7:13:aa:16, IRQ 10
eth0: Identified 8139 chip type 'RTL−8139C'
eth0: Setting half−duplex based on auto−negotiated partner ability 0000.
[root@menomato miope]#
Diamo una controlla,con il comando ifconfig configuriamo le
interfaccie di rete :
[root@gw aspi]# ifconfig
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:234 errors:0 dropped:0 overruns:0 frame:0
TX packets:234 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
4
lan.pdf
RX bytes:20636 (20.1 Kb) TX bytes:20636 (20.1 Kb)
ppp0 Link encap:Point−to−Point Protocol
inet addr:213.255.24.245 P−t−P:213.255.5.236 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1524 Metric:1
RX packets:4185 errors:0 dropped:0 overruns:0 frame:0
TX packets:3949 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:3
RX bytes:2821243 (2.6 Mb) TX bytes:363125 (354.6 Kb)
[root@gw aspi]#
Bene ora dobbiamo assegnare un indirizzo ip alla nostra ethernet.
[root@gw aspi]# ifconfig eth0 192.168.1.1 netmask 255.255.255.0 up
[root@gw aspi]#
eth0 è il device (nome dell'interfaccia) relativo alla scheda ethernet,192.168.1.1 è l'ip della
macchina
mentre netmask indica la classe della rete (in questo caso C),con il comando up attiviamo
l'inferfaccia eth0.
[root@gw aspi]# ifconfig eth0
eth0 Link encap:Ethernet HWaddr 00:10:A7:13:AA:16
inet addr:192.168.1.1 Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:4 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:0 (0.0 b) TX bytes:2360 (2.3 Kb)
Interrupt:10 Base address:0x3000
[root@gw aspi]#
Abbiamo configurato correttamente la scheda di rete.
Per vedere se tutto è andato a buon fine proviamo a pingare la eth0
[root@gw aspi]# ping −c 5 192.168.1.1
PING 192.168.1.1 (192.168.1.1) from 192.168.1.1 : 56(84) bytes of data.
64 bytes from 192.168.1.1: icmp_seq=1 ttl=255 time=0.183 ms
64 bytes from 192.168.1.1: icmp_seq=2 ttl=255 time=0.107 ms
64 bytes from 192.168.1.1: icmp_seq=3 ttl=255 time=0.115 ms
64 bytes from 192.168.1.1: icmp_seq=4 ttl=255 time=0.114 ms
64 bytes from 192.168.1.1: icmp_seq=5 ttl=255 time=0.106 ms
5
lan.pdf
−−− 192.168.1.1 ping statistics −−−
5 packets transmitted, 5 received, 0% loss, time 3998ms
rtt min/avg/max/mdev = 0.106/0.125/0.183/0.029 ms
[root@gw aspi]#
La scheda di rete è stata installata a dovere ! :)
Adesso bobbiamo controllare la tabella di routing anche se le entry vengono
configurate automaticamente,ma noi siamo pignoli..
[root@gw aspi]# /sbin/route −n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
213.255.5.236 0.0.0.0 255.255.255.255 UH 0 0 0 ppp0
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo
0.0.0.0 213.255.5.236 0.0.0.0 UG 0 0 0 ppp0
[root@gw aspi]#
< 192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0 >
E` stata creata la entry nella tabella di route per la classe di appartenenza dell'
interfaccia.Questo perchè abbiamo tirato su l'interfaccia di ifconfig per dargli l'ip.
Il comando per inserire la entry è :
~# route add −net 192.168.1.0 netmask 255.255.255.0 dev eth0
In alcuni casi ,a causa di problemi con ppp il gateway nella tabella può uscir male,
in questo caso darete il comando :
~# route add default gw ip dove ip lo trovi in ~# ifconfig ppp0
Adesso che abbiamo finito con il gateway passiamo al client.
Lo stesso procedimento va fatto nell'altra linux.
[root@feof /]# ifconfig eth0 192.168.1.2 netmask 255.255.255.0 up
[root@feof /]#
Il procedimento come vedete è lo stesso ..
Per avere la conferma che il tutto è ben installato basta far pingare le
due macchine.Il ping invia pacchetti ( icmp ) ad un host e attende che
6
lan.pdf
l'host raggiunto risponda ( icmp echo reply),calcolando il tempo di ritorno.
[root@gw aspi]# ping −c 5 192.168.1.2
PING 192.168.1.2 (192.168.1.2) from 192.168.1.1 : 56(84) bytes of data.
64 bytes from 192.168.1.1: icmp_seq=1 ttl=255 time=0.183 ms
64 bytes from 192.168.1.1: icmp_seq=2 ttl=255 time=0.107 ms
64 bytes from 192.168.1.1: icmp_seq=3 ttl=255 time=0.115 ms
64 bytes from 192.168.1.1: icmp_seq=4 ttl=255 time=0.114 ms
64 bytes from 192.168.1.1: icmp_seq=5 ttl=255 time=0.106 ms
−−− 192.168.1.1 ping statistics −−−
5 packets transmitted, 5 received, 0% loss, time 3998ms
rtt min/avg/max/mdev = 0.106/0.125/0.183/0.029 ms
[root@gw aspi]#
[root@feof /]# ping −c 3 192.168.1.1
PING 192.168.1.1 (192.168.1.1) from 192.168.1.2 : 56(84) bytes of data.
64 bytes from 192.168.1.1: icmp_seq=1 ttl=255 time=0.183 ms
64 bytes from 192.168.1.1: icmp_seq=2 ttl=255 time=0.107 ms
64 bytes from 192.168.1.1: icmp_seq=3 ttl=255 time=0.115 ms
−−− 192.168.1.1 ping statistics −−−
3 packets transmitted, 3 received, 0% loss, time 1405ms
rtt min/avg/max/mdev = 0.106/0.125/0.183/0.029 ms
[root@feof /]#
Le due macchine rispondo al ping,quindi siamo sicuri che sono collegate
correttamente.Dobbiamo sempre stare attenti ai pacchetti ricevuti e persi,
questi possono indicarci se ci sono eventuali problemi , lo stesso dobbiamo
fare per il tempo di risposta che deve essere intorno ai 3−400 ms per un
valore ottimale,altra cosa più importante è l'agv che indica l'adamento
del ping.Questo deve avere come tempo medio un tempo regolare ,
se è troppo alto potrebbe essere anche un problema di un singolo pacchetto.
Adesso ci occuperemo di condividere la connessione internet.
Useremo ipchains e non iptables anche se è più performante e flessibile
solo per non ricompilare il kernel nella mia macchina.
Per vedere se è presente nella vostra linux box date il comando
7
lan.pdf
# iptables −L
Se non volete ricompilare il kernel userete come in questo esempio
ipchains che dovreste avere nella vostra linux box
Se iptables fosse già presente nella vostra linubox il comando da lanciare (in
alternativa a quello di ipchains) è :
[root@gw aspi]# iptables −A POSTROUTING −t nat −s 192.168.0.0/24 −d 0/0 −p all −j MASQUERADE −o
ppp0
# ipchains −L
Uno dei 2 pc farà da gateway e l'altro da client.
1 gw 192.168.1.1 è il gateway
2 feof 192.168.0.2 è un client
[root@gw aspi]# echo 1 > /proc/sys/net/ipv4/ip_forward
Così si abilita l'ip forwarding per la tabella di routing
[root@gw aspi]# ipchains −I forward −s 192.168.1.0/24 −d 0/0 −j MASQ
Con questa regola si natta tutto il traffico con sorgente 192.168.1.0
Per avere una completa conoscenza del comando ipchais # man ipchains
[root@feof /]# route add default gw 192.168.1.1
Con questo comando abbiamo aggiunto il gw nella tabella di routing.
Come potete vedere adesso è tutto ben installato e configurato..
Lo stesso procedimento si ripete nel caso avete altri pc nella vostra
LAN,settateli con indirizzi 192.168.1.3 192.168.1.4 e così via.
Sono sicuro che vi aspettavate più difficile installare una LAN e
invece è stato semplice.Consiglio sempre di leggersi la relativa
8
lan.pdf
documentazione.
Prima di chiudere,come promesso ad inizio articolo,spiegherò come
configurare la scheda ethernet in windows e condividere la connessione
internet.
Avviate windows,cliccate con il tasto destro su Risorse di rete , poi
scendete a Proprietà cliccate e, vi si aprirà una bella schermata.
Selezionate la voce TCP/IP relativa alla scheda di rete,e cliccate nuovamente Proprietà.
Come da copione settate l'ip della scheda di rete e la netmask poi andate
nella cartella gateway è aggiungete l'ip 192.168.1.1.
Poi nella cartella "Configurazione DNS" mettete i 2 dns del vostro provider.
Riavviate e siete OK !
Adesso...
Penso proprio di aver finito :)
Se qualcosa non va,non esitate a mandarmi un email oppure contattarmi in irc.
Vi consigli di leggermi questo favoloso HOWTO .
http://www.tldp.org/HOWTO/mini/Home−Network−mini−HOWTO.html
Come contattarmi :
[email protected] slackit.org
[email protected] autistici.org/aspinall noflyzone.org
@ #slackware #noflyzone @azzurranet
@ #hackit99 #handshake @autisticinet
9