LeoBenelli
Personal WebPage


RETE

 

Indirizzo IP e' composto da due componenti : Numero di Rete (R) e numero di dispositivo (D) all'interno della rete.
In base a come si sceglie di suddividere i 4 byte del numero IP l'indirizzo si identifica con una diversa Classe :


Classe A : RRR.DDD.DDD.DDD
Classe B : RRR.RRR.DDD.DDD
Classe C : RRR.RRR.RRR.DDD

 

Limiti di Classe :
Classe A : Primo byte deve essere compreso tra 0 e 127
Classe B : Primo byte deve essere compreso tra 128 e 191
Classe C : Primo byte deve essere compreso tra 192 e 223

 

L'indirizzo di driver Loopback e' di default : 127.0.0.1 (Classe A)

 

Per identificare la classe esiste la maschera di rete : 255 per la parte di assegnata alla Rete.
Classe A : 255.0.0.0
Classe B : 255.255.0.0
Classe C : 255.255.255.0

 

Quando si desidera inviare un pacchetto a tutti i dispositivi appartenenti ad una rete si imposta a 255 la parte dell'indirizzo IP destinato ai dispositivi, quindi da un dispositivo 129.23.123.2 l'indirizzo di Broadcast sara' 129.23.123.255.

 

Se si desidera uscire verso altre reti si utilizza l'indirizzo Gateway che per convenzione a l'ultimo valore a 1 es. per 129.23.123.96 il Gateway potrebbe essere 129.23.123.1.

 

In caso di utilizzo di Server DNS per la traduzione dei nomi allora si avra' un indirizzo anche per tale servizio.

In /etc/hosts sono specificati gli indirizzi IP della macchina, se ci sono programmi che hanno bisogno di un indirizzo Ip per funzionare correttamente e' possibile creare un'interfaccia fittizia, per farlo e' necessario inserire l'indirizzo nel file hosts per poi creare l'instradamento occorre eseguire i due comandi :
ifconfig dummy nome_macchina
route add nome_macchina

 

In /etc/networks c'e' l'elenco delle reti usate piu' comunemente questo permette di chiamare una rete tramite un nome piuttosto che con un numero.

 

Altri files di configurazione rete sono :
/etc/host.conf
/etc/resolv.conf
/etc/protocols
/etc/services
/etc/hostname o /etc/HOSTNAME
(Questo file deve contenere il nome della macchina locale, molti programma leggono questo file)

 

 

 

COMANDI DI CONTROLLO E IMPOSTAZIONE RETE

Per gestire una connessione di rete occorre attivare alcune impostazioni sul Kernel :
Network Support
TCP/IP networking

Comandi

Descrizione

Ifconfig <Interfaccia> <Famiglia_indirizzamento> <indirizzo> <opzioni>

Permette l'assegnazione e configurazione delle varie interfacce di rete installate.

Interfacce

L'interfaccia viene identificata attraverso il suo nome (lo, eth?, ppp?, plip?)

Famiglie di indirizzamento

Stabilisce il sistema di protocollo usato dall'interfaccia

inet

IPV4 (predefinito)

inet6

IPV6

ax25

AMPR Packet radio

ddp

Appletalk Phase 2

ipx

Novell IPX

netrom

AMPR Packet radio

Indirizzo

L'indirizzo e' il codice assegnato all'interfaccia cioe' il numero univoco con cui viene riconosciuta nella rete

Opzioni

up | down

attiva o disattiva l'intefaccia

arp | -arp

attiva o disattiva l'uso del protocollo ARP per l'interfaccia

allmulti | -allmulti

attiva o disattiva la modalita' promiscua, cio' permette un monitoraggio della rete dei pacchetti che transitano, anche se non diretti all'interfaccia

mtu n

Permette di specificare l'unita' massima di trasferimento (MTU).
Per le schede Ethernet questo valore puo' variare da 1000 a 2000, il valore predefinito e' 1500.
Per il protocollo SLIP si possono usare valori tra 200 e 4096

pointopoint <Indirizzo_di_destinazione> | -pointopoint

attiva o disattiva la modalita' punto-puinto. La modalita' punto-punto e' quella che avviene tra due elaboratori soltando. Se viene indicato l'indirizzo si tratta di quello della'altro nodo.

netmask <Indirizzo_di_netmask>

Stabilisce la netmask della rete.

irq <Numero_di_irq>

Stabilisce l'IRQ dell'interfaccia, (solo per quelle che lo permettono)

broadcast <Indirizzo> | -broadcast

attiva o disattiva la modalita' broadcast.

La sintassi standard nella configurazione di un'interfaccia Ethernet :
ifconfig eth0 192.168.1.1 netmask 255.255.255.0
Mentre per collegare due computer tramite porta parallela si usa una connessione PLIP e' questa e' il comando di configurazione :
ifconfig plip1 192.168.7.1 pointopoint 192.168.7.2 netmask 255.255.255.0
e dall'altro capo della connessione ci dovra' essere il comando inverso cioe' :
ifconfig plip1 192.168.7.2 pointopoint 192.168.7.1 netmask 255.255.255.0
L'indirizzo dopo pointopoint puo' essere messo a 0.0.0.0 se si desidera accettare tutte le connessioni tramite plip senza preoccuparsi dell'ip.
Inoltro con una connessione PLIP conviene impostare la netmask a 255.255.255.255 per non sprecare indirizzi di rete, dato che la connessione avviene tra due soli computer.

netstat

netstat permette di controllare i valori le connessioni, trasmissioni e ricezioni dati in corso.
Con -a si individuano anche i demoni in ascolto.
Con -i si visualizzano specifiche per ogni device di rete e statistiche di trasmissione.

route

Con route si visualizza e si imposta la tabella di instradamento per ogni rete, la maschera, un flag che indica : se il percorso e' attivo (U), se la porta ha un gateway (G) o ad una macchina (H).
Route add ???.???.0.0 netmask 255.255.0.0 dev ??, con tale sintassi e' possibie aggiungere nuovi percorsi.

Per visualizzare la tabella di instradamento si usa :
route <-v> <-n> (Con -v si ha una visualizzazione dettagliata, con -n si visualizzano gli indirizzi IP piuttosto che i nomi degli host.)
Per aggiungere voci alla tabella di instradamento si usa la seguente sintassi :
route Route add [-net|-host] Destinazione netmask 255.255.0.0 [dev device] [gw router].
Per cancellare una voce dalla tabella :
route Route del [-net|-host] Destinazione netmask 255.255.0.0 [dev device] [gw router].

ping

Ping invia dei pacchetti ICMP ad un host per verificare su c'e' una risposta, quindi se un determinato IP e' in ascolto.
In piu' fornisce anche statistiche di comunicazione.

-c <Quantita'>

Imposta un livello massimo di richieste

-f

Invia un numero molto grosso di richieste in un breve periodo di tempo.

-i <N_Secondi>

Secondi di intervallo tra una richiesta e l'altra.

-p <stringa_di_riempimento>

Permette di aggiungere un massimo di 16 byte ai pacchetti utilizzati da ping, specificandone il contenuto in esadecimale.

-s <Dimensione>

Permetti di definire la dimensione dei pacchetti utilizzati (il valore di default e' 56 byte)

traceroute <Lunghezza>

Permette di visualizzare tutto il percorso con i nodi della rete attraversati per portare il pacchetto a destinazione.
Lunghezza e' la dimensione del pacchetto UDP inviato.

-m <TTL_Massimo>

Imposta il numero di hops massimo ( di default il valore e' di 30 salti )

-n

Non traduce gli indirizzi IP

 

 

 

SAMBA (RETE LINUX <-> WINDOWS)

Tramite il demone Samba e' possibile creare un'unica rete tra sistemi windows e Linux.
Una volta installato il software Samba, avremo a disposizione una serie di comandi che permettono la condivisione dei dati tra sistemi operativi differenti, la configurazione del demone sara' gestita dal file /etc/smb.conf.

Il file di configurazione e' possibile gestirlo anche tramite un interfaccia Web con lo strumento swat, per abilitarlo e' necessario aggiungere la seguente linea a /etc/inetd.conf :

swat stream tcp nowait.400 root /usr/sbin/swat swat

Questo permettera' una volta riavviato il servizio inetd di accedere all'interfaccia tramite la porta 901 scrivendo http://<nomehost>:901

COMANDI/APPLICAZIONI DI SAMBA

Comando

Descrizione

Smbd

E' il server di samba, che permette di condividere risorse tra i vari sistemi.

Nmbd

Si occupa di gestire le richieste di nomi dei vari computer, puo' anche funzionare da server Wins

Smb.conf

File di configurazione server Samba

Smbpasswd (file di configurazione)

Contiene gli utenti registrati in Samba

Smbpasswd (eseguibile)

Programma che permette l'inserimento degli utenti nella configurazione di Samba.
L'inserimento avviene tramite smbpasswd -a <nome utente>, mentre la variazione del codice di accesso si esegue con smbpasswd <nome utente>

Smbclient

Programma per accedere alle risorse dei vari client (con lo stile di FTP) o visualizzare le risorse disponibili.
Con smbclient //host/risorsa -U utente.
Con smbclient -L host -U Utente e' possibile vedere le risorse dell'host.
Se la risorsa e' pubblica e' possibile non specificare -U utente.

Smbmount

Permette di montare risorse sotto una directory.
Con smbmount //host/risorsa <directory> -U utente, se la risorsa e' pubblica e' possibile non specificare -U utente.

Smbumount

Smonta una risorsa, tramite la sintassi smbumount <directory>

Smbstatus

Visualizza lo stato del server Samba.

Testparms

Permette di controllare la correttezza del file smb.conf.

Nmblookup

Permette di gestire i nomi secondo il protocollo Netbios, quindi il nome di un server Linux in una rete Windows non deve obbligatoriamente essere il nome Host.

 

 

 

RISOLUZIONE DEI NOMI

Esistono due modi per la risoluzione degli indirizzi : tramite il file /etc/hosts o la richiesta ad un server DNS.

/etc/host.conf

In questo file e' possibile stabilire l'ordine con cui eseguire la ricerca :
order hosts,bind,nis
e se esiste la possibilita' di avere l'associazione di piu' indirizzi IP per lo stesso nome :
multi on (per disattivare off)

Variabili di Ambiente :
RESOLV_HOST_CONF
RESOLV_SERV_ORDER
RESOLV_SERV_MULTI

Se definite sostituiscono hanno la priorita' sulla configurazione standard :
RESOLV_HOST_CONF se definita imposta un file alternativo a /etc/host.conf
RESOLV_SERV_ORDER se definita imposta l'ordine di risoluzione scavalcando le impostazioni in /etc/host.conf
RESOLV_SERV_MULTI se definita scavalca l'impostazione multi on|off in /etc/host.conf

/etc/hosts

In questo file e' possibile associare un indirizzo IP a un nome di dominio.

/etc/networks

In questo file e' possibile associare ad un indirizzo IP a un nome di una sottorete.
Questo file e' usato da route per visualizzare i nomi delle sottoreti.

/etc/resolv.conf

In questo file e' possibile indicare la configurazione per la risoluzione dei nomi tramite DNS.
nameserver <Indirizzo_IP_servente_DNS> Permette di indicare gli indirizzi dei server DNS.
domain <nome_di_dominio> Stabilisce il dominio predefinito per le interrogazioni al server DNS.
search <nome_di_dominio> Definisce un elenco di domini possibili (elenco separato da spazi) per le interrogazioni al server DNS.