Avanti Indietro Indice

7. Altre Tecnologie di Rete

Le sottosezioni successive contengono informazioni specifiche a particolari tecnologie di rete. Le informazioni contenute in queste sezioni non si applicano necessariamente ad altri tipi di tecnologie di rete. Gli argomenti sono presentati in ordine alfabetico.

7.1 ARCNet

I nomi delle periferiche ARCNet sono `arc0e', `arc1e', `arc2e' eccetera, oppure `arc0s', `arc1s', `arc2s' eccetera. La prima scheda che viene vista dal kernel prende il nome di `arc0e' o `arc0s' e le altre prendono sequenzialmente gi altri nomi, nell'ordine in cui vengono viste. La lettera finale indica se l'interfaccia usa un incapsulamento dei pacchetti di tipo ethernet o il formato standard secondo l'RFC1051.

Opzioni di compilazione del kernel:

        Network device support  --->
            [*] Network device support
            <*> ARCnet support
            [ ]   Enable arc0e (ARCnet "Ether-Encap" packet format)
            [ ]   Enable arc0s (ARCnet RFC1051 packet format)
        

Una volta che il kernel è stato propriamente ricompilato per supportare le schede di rete ARCNet, la configurazione delle schede stesse risulta abbastanza semplice.

Normalmente verranno usati comandi come:

        root# ifconfig arc0e 192.168.0.1 netmask 255.255.255.0 up
        root# route add -net 192.168.0.0 netmask 255.255.255.0 arc0e
        

Consiglio di riferirsi ai file /usr/src/linux/Documentation/networking/arcnet.txt e /usr/src/linux/Documentation/networking/arcnet-hardware.txt per avere ulteriori informazioni sull'argomento.

Il supporto per ARCNet è stato sviluppato da Avery Pennarun, apenwarr@foxnet.net.

7.2 Appletalk (AF_APPLETALK)

Il protocollo Appletalk non ha bisogno di nomi particolari per i dispositivi, in quanto usa i dispositivi di rete esistenti.

Opzioni di compilazione del kernel:

        Networking options  --->
            <*> Appletalk DDP
        

Il supporto per Appletalk permette alle macchine Linux di lavorare insieme alle reti Apple. Un uso importante di questa abilità è la condivisione di risorse, come stampanti e dischi, tra computer Linux e Apple. Per utilizzare Appletalk occorre del software aggiuntivo, che prende il nome di netatalk. Wesley Craig netatalk@umich.edu è il rappresentante di un gruppo chiamato `Research Systems Unix Group' che lavora all'Università del Michigan e ha prodotto il pacchetto netatalk, contenente software che implementa lo stack di protocolli Appletalk e alcuni utili programmi di servizio. Il pacchetto netatalk. se non è supportato dalla vostra distribuzione, deve essere recuperato dal suo sito tramite ftp: University of Michigan

Per compilare ed installare il pacchetto occorre fare qualcosa come:

        user% tar xvfz .../netatalk-1.4b2.tar.Z
        user% make
        root# make install
        

Potrebbe essere utile editare il `Makefile' prima di chiamare make per compilare effettivamente il programma. In particolare potrebbe essere utile cambiare la variabile DESTDIR, che definisce dove verranno successivamente installati i file. Una buona scelta è il valore predefinito /usr/local/atalk.

Configurazione del software Appletalk.

La prima cosa che occorre fare perché tutto funzioni correttamente è assicurarsi che il proprio file /etc/services contenga le voci appropriate. Le voci di cui si ha bisogno sono:

        rtmp    1/ddp   # Routing Table Maintenance Protocol
        nbp     2/ddp   # Name Binding Protocol
        echo    4/ddp   # AppleTalk Echo Protocol
        zip     6/ddp   # Zone Information Protocol
        

Il passo successivo consiste nella creazione dei file di configurazione Appletalk nella directory /usr/local/atalk/etc (o in quella in cui il pacchetto è stato installato).

Il primo file da creare è /usr/local/atalk/etc/atalkd.conf. Questo file inizialmente deve contenere solo una linea, che specifica il nome dell'interfaccia di rete sulla quale sono raggiungibili le macchine Apple:

        eth0
        

Il programma-demone Appletalk aggiungerà altri dettagli al file nel momento in cui verrà eseguito.

Esportare un disco tramite Appletalk.

Si possono esportare dei filesystem Linux verso la rete, in modo che le macchine Apple sulla rete possano accedervi.

A questo fine occorre configurare il file /usr/local/atalk/etc/AppleVolumes.system. Un altro file di configurazione, chiamato /usr/local/atalk/etc/AppleVolumes.default, ha esattamente lo stesso formato e descrive quali filesystem verranno visti dagli utenti che si collegano come "guest".

I dettagli riguardo la configurazione di questi file e le varie opzioni si trovano nella pagina del manuale relativa al comando afpd.

Un semplice esempio potrebbe somigliare a:

        /tmp Scratch
        /home/ftp/pub "Area Pubblica"
        

L'esempio mostrato esporta il filesystem /tmp come volume AppleShare con il nome di `Scratch', e la directory pubblica di ftp come volume AppleShare con il nome di `Area Pubblica'. Specificare i nomi dei volumi non è obbligatorio, in quanto il programma-demone li può assegnare autonomamente, ma specificarli esplicitamente non ha alcuna controindicazione.

Condividere le stampanti Linux usando Appletalk.

E abbastanza semplice condividere una stampante Linux con le macchine Apple. A tal fine occorre far girare il programma papd, il demone per il protocollo di accesso alle stampanti Appletalk (Printer Access Protocol). Quando il programma viene fatto girare accetta le richieste da parte delle macchine Apple e passa il lavoro di stampa al server lpd locale per la stampa.

Occorre editare il file /usr/local/atalk/etc/papd.conf per configurare il servizio. La sintassi del file è la stessa del più noto /etc/printcap. Il nome che viene dato ad ogni definizione viene registrato tramite il protocollo di gestione dei nomi Appletalk (NBP).

Una semplice configurazione potrebbe essere:

        TricWriter:\
           :pr=lp:op=cg:
        

Questo esempio rende disponibile sulla rete Appletalk una stampante chiamata `TricWriter', e tutti i lavori accettati via rete verranno stampati sulla stampante `lp' come definita nel file /etc/printcap, usando lpd. La voce `op=cg' dice che l'utente Linux `cg' è l'operatore della stampante.

Far partire il software appletalk.

A questo punto si dovrebbe essere pronti a provare la configurazione di base. Il file rc.atalk distribuito con il pacchetto netatalk dovrebbe funzionare bene per questa prova, perciò l'unica cosa che resta da fare è:

        root# /usr/local/atalk/etc/rc.atalk
        

e tutto dovrebbe essere attivo e girare correttamente. Non si dovrebbero vedere messaggi di errore a questo punto, ma il software manderà dei messaggi sulla console per indicare ogni passo che viene fatto partire.

Provare il software appletalk.

Per verificare che il software stia funzionando correttamente occorre andare ad una delle macchine Apple, attivare il menu principale, scegliere "Chooser", poi "AppleShare". A questo punto il calcolatore Linux dovrebbe apparire.

Alcune attenzioni con il software appletalk.

Ulteriori informazioni.

Per una descrizione molto più dettagliata su come configurare Appletalk per Linux occorre riferirsi alla pagina Linux Netatalk-HOWTO di Anders Brownworth, presso thehamptons.com.

7.3 ATM

Werner Almesberger <werner.almesberger@lrc.di.epfl.ch> sta gestendo un progetto per fornire a Linux il supporto per ATM (Asynchronous Transfer Mode). Informazioni aggiornate sullo stato del progetto possono essere ottenute da: lrcwww.epfl.ch.

7.4 AX25 (AF_AX25)

I nomi di periferica AX.25 nei kernel versione 2.0.* sono `sl0', `sl1' eccetera, mentre nei kernel 2.1.* sono `ax0', `ax1' eccetera.

Opzioni di compilazione del kernel:

        Networking options  --->
            [*] Amateur Radio AX.25 Level 2
        

I protocolli AX25, Netrom e Rose sono ampiamente trattati nel documento AX25-HOWTO. Questi protocolli sono usati dagli utenti di radio amatoriali per la sperimentazione di trasmissione radio di pacchetti in tutto il mondo.

La maggior parte del lavoro di implementazione di questi protocolli è stata fatta da Jonathan Naylor, jsn@cs.nott.ac.uk.

7.5 DECNet

Al supporto per DECnet si sta lavorando adesso. È plausibile che appaia in uno degli ultimi kernel versione 2.1.

7.6 FDDI

I nomi delle periferiche FDDI sono `fddi0', `fddi1', `fddi2' eccetera. La prima scheda rilevata dal kernel prende il nome `fddi0' e alle altre vengono sequenzialmente assegnati gli altri nomi nell'ordine in cui vengono riconosciute.

Larry Stefani, lstefani@ultranet.com, ha scritto un driver per le schede FDDI per EISA e PCI della Digital.

Opzioni di compilazione del kernel:

        Network device support  --->
            [*] FDDI driver support
            [*] Digital DEFEA and DEFPA adapter support
        

Dopo aver ricompilato il kernel per supportare il driver FDDI, la configurazione dell'interfaccia è praticamente identica alla configurazione di una scheda ethernet. Occorre solo specificare il nome dell'interfaccia FDDI nei comandi ifconfig e route.

7.7 Frame Relay

I nomi delle periferiche Frame Relay sono `dlci00', `dlci01' eccetera per i dispositivi ad incapsulazione DLCI, mentre `sdla0', `sdla1' eccetera sono i nomi per le periferiche FRAD.

Frame Relay è una nuova tecnologia di rete, progettata per adattarsi a traffico di comunicazione dati che sia di natura intermittente. Ci si connette ad una rete Frame Relay usando un FRAD (Frame Relay Access Device). Il supporto Frame Relay per Linux usa IP-su-Frame-Relay, come specificato nell'RFC 1490.

Opzioni di compilazione del kernel:

        Network device support  --->
            <*> Frame relay DLCI support (EXPERIMENTAL)
            (24)   Max open DLCI
            (8)   Max DLCI per device
            <*>   SDLA (Sangoma S502/S508) support
        

Il supporto per Frame Relay e i relativi strumenti di configurazione sono stati sviluppati da Mike McLagan, mike.mclagan@linux.org.

Al momento i soli FRAD supportati sono i Sangoma Technologies S502A, S502E e S508.

Dopo aver ricompilato il kernel, per configurare le periferiche FRAD e DLCI occorrono gli strumenti di configurazione per Frame Relay. Questi sono disponibili da ftp.invlogic.com. La compilazione e l'installazione di questi strumenti non presenta alcun problema, ma l'assenza di un Makefile nella directory principale fa sì che il processo sia abbastanza "manuale":

        user% tar xvfz .../frad-0.15.tgz
        user% cd frad-0.15
        user% for i in common dlci frad; make -C $i clean; make -C $i; done
        root# mkdir /etc/frad
        root# install -m 644 -o root -g root bin/*.sfm /etc/frad
        root# install -m 700 -o root -g root frad/fradcfg /sbin
        root# install -m 700 -o root -g root dlci/dlcicfg /sbin
        

Si noti che i comandi sopracitati usano la sintassi sh, se si usa una shell di tipo csh, come tcsh, il ciclo for apparirà diversamente.

Dopo l'installazione di questi programmi occorre creare un file /etc/frad/router.conf. Si può usare come esempio il seguente, che è una versione modificata di uno dei file di esempio del pacchetto:

# /etc/frad/router.conf
# Questo è uno schema di configurazione per frame relay.
# Tutte le parole chiave sono presenti. I valori di default sono basati
# sul codice fornito con il driver DOS per il Sangoma S502A.
#
# Un '#' all'interno di una linea segna un commento
# Spazi e caratteri TAB sono ignorati
# Voci [] sconosciute e chiavi ignote sono ignorate
#

[Devices]
Count=1                 # numero di periferiche da configurare
Dev_1=sdla0             # nome di periferica
#Dev_2=sdla1            # nome di periferica

# Se specificate qui, queste voci si applicano a tutte le periferiche,
# ma possono essere specificati valori alternativi per ciascuna scheda.
#
Access=CPE
Clock=Internal
KBaud=64
Flags=TX
#
# MTU=1500              # Massima lunghezza del IFrame trasmesso,
                        # il default è 4096
# T391=10               # valore di T391    5 - 30, il default è 10
# T392=15               # valore di T392    5 - 30, il default è 15
# N391=6                # valore di N391    1 - 255, il default è 6
# N392=3                # valore di N392    1 - 10, il default è 3
# N393=4                # valore di N393    1 - 10, il default è 4

# Se specificate qui, queste voci si applicano a tutte le schede
# CIRfwd=16             # CIR forward   1 - 64
# Bc_fwd=16             # Bc forward    1 - 512 
# Be_fwd=0              # Be forward    0 - 511
# CIRbak=16             # CIR backward  1 - 64
# Bc_bak=16             # Bc backward   1 - 512
# Be_bak=0              # Be backward   0 - 511


#
#
# Configurazione specifica per ciascuna interfaccia
#
#

#
# La prima periferica è una Sangoma S502E
#
[sdla0]
Type=Sangoma            # Tipo di periferica. Attualmente viene riconosciuto
                        # solo il nome SANGOMA
#
# Queste chiavi sono specifiche al tipo "Sangoma"
#
# Tipo di scheda - S502A, S502E, S508
Board=S502E
#
# Nome del firmware (ROM) di prova della scheda
# Testware=/usr/src/frad-0.10/bin/sdla_tst.502
#
# Nome del firmware FR
# Firmware=/usr/src/frad-0.10/bin/frm_rel.502
#
Port=360                # Porta di I/O per questa scheda
Mem=C8                  # Indirizzo della finestra di memoria (A0-EE)
IRQ=5                   # Numero di interrupt, non specificare per la S502A
DLCIs=1                 # Numero di DLCI attaccati alla periferica
DLCI_1=16               # Numero del primo DLCI, 16 - 991
# DLCI_2=17
# DLCI_3=18
# DLCI_4=19
# DLCI_5=20
#
# Se specificate qui, queste voci si applicano solo a questa periferica,
# e rimpiazzano i valori specificati prima
#
# Access=CPE            # CPE o NODE, default: CPE
# Flags=TXIgnore,RXIgnore,BufferFrames,DropAborted,Stats,MCI,AutoDLCI
# Clock=Internal        # External o Internal, default: Internal
# Baud=128              # Valore nominale di baud rate per il CSU/DSU
# MTU=2048              # Massima lunghezza del IFrame trasmesso,
                        # il default è 4096
# T391=10               # valore di T391    5 - 30, il default è 10
# T392=15               # valore di T392    5 - 30, il default è 15
# N391=6                # valore di N391    1 - 255, il default è 6
# N392=3                # valore di N392    1 - 10, il default è 3
# N393=4                # valore di N393    1 - 10, il default è 4

#
# La seconda periferica è qualche altro tipo
#
# [sdla1]
# Type=FancyCard        # Tipo di periferica
# Board=                # Tipo di scheda Sangoma
# Key=Value             # Valori specifici a questo tipo di scheda


#
# Valori di default per la configurazione DLCI
# Questo posso essere rimpiazzati nella configurazione specifica
# di ciascun DLCI
#
CIRfwd=64               # CIR forward   1 - 64
# Bc_fwd=16             # Bc forward    1 - 512 
# Be_fwd=0              # Be forward    0 - 511
# CIRbak=16             # CIR backward  1 - 64
# Bc_bak=16             # Bc backward   1 - 512
# Be_bak=0              # Be backward   0 - 511

#
# Configurazione di DLCI
# Queste voci sono tutte opzionali. Il nome usato è
# [DLCI_D<devicenum>_<DLCI_Num>]
#

[DLCI_D1_16]
# IP=
# Net=
# Mask=
# Flags defined by Sangoma: TXIgnore,RXIgnore,BufferFrames
# DLCIFlags=TXIgnore,RXIgnore,BufferFrames
# CIRfwd=64
# Bc_fwd=512
# Be_fwd=0
# CIRbak=64
# Bc_bak=512
# Be_bak=0

[DLCI_D2_16]
# IP=
# Net=
# Mask=
# Flags defined by Sangoma: TXIgnore,RXIgnore,BufferFrames
# DLCIFlags=TXIgnore,RXIgnore,BufferFrames
# CIRfwd=16
# Bc_fwd=16
# Be_fwd=0
# CIRbak=16
# Bc_bak=16
# Be_bak=0

Dopo aver costruito il file /etc/frad/router.conf, l'unico passo che resta da fare è configurare le periferiche stesse. Questo è solo leggermente più difficile che la configurazione di una normale periferica di rete. Occorre ricordare di attivare il FRAD prima dei dispositivi di incapsulamento DLCI. I comandi necessari sono numerosi, meglio quindi metterli in uno script:

        #!/bin/sh
        # Configurazione dell'hardware FRAD e parametri DLCI
        /sbin/fradcfg /etc/frad/router.conf || exit 1
        /sbin/dlcicfg file /etc/frad/router.conf
        #
        # Attivazione del dispositivo FRAD
        ifconfig sdla0 up
        #
        # Configurazione delle interfacce di incapsulamento DLCI
        # e instradamento
        ifconfig dlci00 192.168.10.1 pointopoint 192.168.10.2 up
        route add -net 192.168.10.0 netmask 255.255.255.0 dlci00
        #
        ifconfig dlci01 192.168.11.1 pointopoint 192.168.11.2 up
        route add -net 192.168.11.0 netmask 255.255.255.0 dlci00
        #
        route add default dev dlci00
        #
        

7.8 IPX (AF_IPX)

Il protocollo IPX è il più comunemente utilizzato nelle reti locali Novell NetWare(tm). Linux include il supporto per questo protocollo, e può essere configurato come punto di rete o come router per IPX.

Opzioni di compilazione del kernel:

        Networking options  --->
            [*] The IPX protocol
            [ ] Full internal IPX network
        

Il protocollo IPX ed NCPFS sono trattati in maggior dettaglio nel documento IPX-HOWTO.

7.9 NetRom (AF_NETROM)

I nomi delle periferiche NetRom sono `nr0', `nr1' eccetera.

Opzioni di compilazione del kernel:

        Networking options  --->
            [*] Amateur Radio AX.25 Level 2
            [*] Amateur Radio NET/ROM
        

I protocolli AX25, Netrom e Rose sono trattati nell' AX25-HOWTO. Questi protocolli vengono usati dagli operatori di radio amatoriali in tutto il mondo per sperimentare con la trasmissione dati via radio.

La maggior parte del lavoro di implementazione di questi protocolli è stato fatto da Jonathon Naylor, jsn@cs.nott.ac.uk.

7.10 Il protocollo Rose (AF_ROSE)

I nomi delle periferiche Rose nei kernel 2.1.* sono `rs0', `rs1' eccetera. Rose è solo disponibile nelle versioni 2.1 del kernel.

Opzioni di compilazione del kernel:

        Networking options  --->
            [*] Amateur Radio AX.25 Level 2
            <*> Amateur Radio X.25 PLP (Rose)
        

I protocolli AX25, Netrom e Rose sono trattati nel documento AX25-HOWTO. Questi protocolli vengono usati dagli operatori di radio amatoriali in tutto il mondo per sperimentare la trasmissione dati via radio.

La maggior parte del lavoro di implementazione di questi protocolli è stata fatta da Jonathon Naylor, jsn@cs.nott.ac.uk.

7.11 Supporto SAMBA - `NetBEUI', `NetBios'.

SAMBA è un'implementazione del protocollo "Session Management Block". Samba permette ai sistemi Microsoft e ad altri di montare i dischi Linux e di accedere alle stampanti Linux.

SAMBA e la sua configurazione sono trattati in dettaglio nel documento SMB-HOWTO.

7.12 Supporto STRIP (Starmode Radio IP)

I nomi delle periferiche STRIP sono `st0', `st1', eccetera.

Opzioni di compilazione del kernel:

        Network device support  --->
                [*] Network device support
                ....
                [*] Radio network interfaces
                < > STRIP (Metricom starmode radio IP)
        

STRIP è un protocollo designato specificatamente per una serie di modem radio Metricom per un progetto di ricerca della Stanford University, chiamato Progetto MosquitoNet. Vi si trova un sacco di materiale interessante da leggere, anche per chi non è direttamente interessato al progetto.

Le radio Metricom si connettono alla porta seriale, impiegano tecnologia "spread spectrum" e sono tipicamente in grado di trasmettere circa 100kbps. Informazioni riguardo alle radio Metricom sono disponibili presso Server web della Metricom.

Al momento gli strumenti di rete e i programmi di utilità standard non supportano il driver STRIP, per cui occorre scaricare dei programmi modificati a tal fine dal server www di MosquitoNet. Ulteriori dettagli riguardo al software necessario si trovano alla pagina STRIP di MosquitoNet.

In sintesi, occorre usare un programma slattach modificato per assegnare la disciplina di linea dell'interfaccia seriale a "STRIP"; occorre poi configurare i dispositivi `st[0-9]' come si farebbe con l'ethernet, tranne per una importante differenza: per ragioni tecniche, STRIP non supporta il protocollo ARP, per cui bisogna fornire manualmente al sistema le voci ARP per gli host della propria sottorete. Questo non è comunque un compito oneroso.

7.13 Token Ring

I nomi delle periferiche token ring sono `tr0', `tr1' eccetera. Token Ring è un protocollo di LAN standardizzato da IBM che evita le collisioni fornendo un meccanismo che ad ogni istante autorizza a trasmettere solo una stazione sulla rete locale. Un `gettone' (token) è in mano ad una stazione per volta, e solo la stazione che detiene il gettone ha il diritto di trasmettere. Dopo aver trasmesso i dati il gettone verrà passato alla stazione successiva. Il gettone viene passato tra tutte le stazioni attive, da cui il nome `Token Ring'.

Opzioni di compilazione del kernel:

        Network device support  --->
                [*] Network device support
                ....
                [*] Token Ring driver support
                < > IBM Tropic chipset based adaptor support
        

La configurazione di token ring è identica a quella di ethernet, e l'unica differenza sta nel nome della periferica di rete da configurare.

7.14 X.25

X.25 è un protocollo a commutazione di pacchetto basato su un circuito, ed è definito dal C.C.I.T.T. (un gruppo di standard riconosciuto dalle compagnie di telecomunicazione in quasi tutto il mondo). Un'implementazione di X.25 e LPB è in lavorazione, e i kernel 2.1.* più recenti includono lo stato attuale del lavoro.

Jonathon Naylor jsn@cs.nott.ac.uk sta coordinando lo sviluppo ed esiste una mailing list per discutere di X.25 sotto Linux e di argomenti connessi. Per iscriversi occorre mandare un messaggio a majordomo@vger.rutgers.edu con il testo "subscribe linux-x25" nel corpo del messaggio.

Le versioni attuali degli strumenti di configurazione si possono ottenere dal sito ftp di Jonathon: ftp.cs.nott.ac.uk.

7.15 Scheda WaveLan

I nomi delle periferiche Wavelan sono `eth0', `eth1', eccetera.

Opzioni di compilazione del kernel:

        Network device support  --->
                [*] Network device support
                ....
                [*] Radio network interfaces
                ....
                <*> WaveLAN support
        

La scheda WaveLAN card è una scheda di rete radio ad ampio spettro. In pratica la scheda assomiglia molto ad una scheda ethernet, e viene configurata praticamente allo stesso modo.

Si possono ottenere informazioni sulla scheda Wavelan da Wavelan.com.


Avanti Indietro Indice