Sophie

Sophie

distrib > Mandriva > 9.1 > i586 > by-pkgid > f1098342ec4a2b28475e34123ce17201 > files > 1401

howto-html-it-9.1-0.5mdk.noarch.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
 <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
 <TITLE>LINUX PLIP MINI-HOWTO</TITLE>


</HEAD>
<BODY>
<H1>LINUX PLIP MINI-HOWTO</H1>

<H2>Andrea Controzzi, <CODE>controzz@cli.di.unipi.it</CODE></H2>v2.1, 12 marzo 1998 
<P><HR>
<EM>Questo HOWTO insegna a impostare ed usare il Protocollo di Interfaccia
su Linea Parallela ("Parallel Line Interface Protocol").  Traduzione
di Giovanni Bortolozzo (
<A HREF="mailto:borto@pluto.linux.it">borto at pluto.linux.it</A>).</EM>
<HR>
<P>
<DL>
<DT><B>NOTA</B><DD><P>Questa &egrave; una nuova versione.  Ci sono molte modifiche e un sacco di
miglioramenti, ma ci saranno ancora errori di grammatica e battitura
(l'inglese non &egrave; la mia lingua madre) e, anche se non voluti,
&egrave; possibile ci siano un po' di informazioni vecchiotte.  INVITO ad
informarmi su qualsiasi errore per aiutarmi a fornire a tutti le
informazioni corrette.
<P>Le modifiche pi&ugrave; sostanziali in questa versione sono:
<P>
<UL>
<LI> formato SGML</LI>
<LI> una risposta generale alla domanda molto ricorrente su "PLIP
con win95" (la risposta &egrave; negativa, mi spiace)</LI>
<LI>  una sezione di FAQ pi&ugrave; grande e migliore (grazie ai report di
un sacco di utenti: molti di loro, come promesso, troveranno qui i loro
commenti!) </LI>
<LI>  rimozione dei file Quick PLIP Installation, che erano inutili
e obsoleti.</LI>
<LI>  aggiornamento dell'addendum sulla connessione PLIP Dos-Linux</LI>
</UL>
<P>Per qualsiasi domanda, correzione, commento e/o suggerimento, il mio
indirizzo email: controzz@cli.di.unipi.it.  
<P>Mi si scriva liberamente ogni qual volta si ha bisogno di aiuto.
Qualche volta non risponder&ograve; immediatamente, ma lo far&ograve;.  Se capita
che non si riceve niente da me passate due settimane, significa che il
nostro sistema di posta ha qualche problema: non si esiti a scrivermi
ancora: aiutare &egrave; il mio compito.  Non posso garantire che risolver&ograve;
tutti i problemi, ma ci prover&ograve;.  Se dopo molte mail non si riceve
ancora risposta, si controlli il proprio indirizzo di ritorno.  Spesso
le mie risposte non arrivano a causa di problemi di questo tipo,
solitamente perch&eacute; l'indirizzo di ritorno &egrave; impostato a root@myhost.
<P>Prima di scrivermi, si leggano le FAQ. La mia risposta alle domande
gi&agrave; l&igrave; presenti non sar&agrave; sicuramente la migliore rispetto alle
risposte che si sono gi&agrave; lette (probabilmente &egrave; peggiore e meno
completa). 
<P>Per domande a proposito di PLIP con DOS e Win95, invito a scrivere
agli autori di quei capitoli: io non posso aiutarvi.
<P>Prima di tutto, un sacco di informazioni tecniche provengono dal NET-2
HOWTO di Terry Dawson.  Questo mini-HOWTO non si suppone copra altri
aspetti e/o rimpiazzi il suddetto HOWTO: il mio scopo era di fornire
una strada per installare in maniera veloce una connessione PLIP
permanente, *SOLO* questo.  Tutte le altre informazioni provengono
dalla mia esperienza personale e dall'aiuto di molti utenti che mi
hanno inviato commenti e informazioni.
<P>Si legga il NET-2 HOWTO e altri documenti per informazioni generali
sulla rete e sui file di configurazione che suggerisco di modificare. 
<P>
</DL>
<H2><A NAME="s1">1. Introduzione: cos'&egrave; il PLIP e perch&eacute; dovrei usarlo?</A></H2>

<P>Ci sono molti modi per creare una connessione tra diversi host.
PLIP, similmente a SLIP, permette una connessione locale tra due
macchine, usando invece le porte parallele.
<P>Le porte parallele trasferiscono pi&ugrave; di un bit per volta e ci&ograve;
significa che &egrave; possibile raggiungere velocit&agrave; pi&ugrave; elevate rispetto a
quelle ottenibili con le interfacce seriali.
<P>La velocit&agrave; raggiungibile dipende completamente dal proprio hardware
(CPU e porta parallela) e dal carico del sistema, ed in generale pu&ograve;
variare da un minimo di 5 Kb/sec fino a 40 Kb/sec.
<P>L'interfaccia PLIP &egrave; abbastanza veloce da permettere alcune funzioni
decenti di tcp/ip, come NFS.  Quindi si pu&ograve; avere un computer con
tutte le proprie cose di Linux e un altro con solamente un sistema
minimo, nel quale si pu&ograve; montare tutto il resto dalla macchina
principale. 
<P>Lo svantaggio &egrave; che la maggior parte degli utenti posseggono solamente
una porta parallela, e ci&ograve; implica che non si sar&agrave; in grado di
stampare e usare PLIP contemporaneamente.  Anche con due porte
parallele &egrave; impossibile stampare e usare PLIP senza usare i moduli del
kernel. 
<P>Questo svantaggio pu&ograve; anche essere eliminato se si hanno due o pi&ugrave;
porte parallele, applicando una patch che si trova in questo mini-HOWTO.
<P>Finalmente sono in grado di dare un buon metodo per impostare una
connessione PLIP tra DOS e Linux.
<P>Non mi stancher&ograve; mai di ripeterlo: finora nessuno &egrave; riuscito ad
instaurare un collegamento funzionante tra Linux e Windows95.
<P>
<H2><A NAME="s2">2. Hardware richiesto per usare PLIP.</A></H2>

<P>L'hardware richiesto per impostare una interfaccia PLIP &egrave; (ovviamente)
una porta parallela libera in entrambe le macchine e un cavo.  Se &egrave;
possibile configurare la parallela dal proprio BIOS, la si imposti
almeno a "bidirezionale", ma se possibile meglio in modalit&agrave; ECP o EPP.
<P>Per quanto riguarda il cavo, quanto segue &egrave; quello che &egrave; scritto nel
file plip.c presente nei sorgenti del kernel 2.0.33:
<BLOCKQUOTE><CODE>
<PRE>
  Il cavo usato di fatto &egrave; un cavo parallelo nullo ("parallel null
  cable") standard -- venduto in diversi posti come cavo "Laplink".
  Si avr&agrave; bisogno di un cavo a 12 conduttori per farselo da soli.  
  I collegamenti sono: 
    SLCTIN      17 - 17        
    GROUND      25 - 25
    D0->ERROR   2 - 15          15 - 2
    D1->SLCT    3 - 13          13 - 3
    D2->PAPOUT  4 - 12          12 - 4
    D3->ACK     5 - 10          10 - 5
    D4->BUSY    6 - 11          11 - 6
  Non si connettano gli altri piedini. Sono
    D5,D6,D7 sono 7,8,9
    STROBE &egrave; 1, FEED &egrave; 14, INIT &egrave; 16
    le masse aggiuntive sono 18,19,20,21,22,23,24
</PRE>
</CODE></BLOCKQUOTE>

Ma consiglio caldamente di leggere i file
/usr/src/linux/drivers/net/README1.PLIP e README2.PLIP per maggiori
informazioni sul cavo.
<P>La mia opinione &egrave; che si dovrebbe evitare di costruirsi il proprio
cavo parallelo nullo.  Un cavo fatto in casa pu&ograve; far risparmiare
davvero pochi soldi, ma pu&ograve; provocare un sacco di mal di testa.  Se si
vuole costruirsi il proprio cavo parallelo si ricordi che lo si sta
facendo a proprio rischio: io ho riportato esattamente quanto scritto
in plip.c ma non do garanzie. 
<P>Alcune cose sulla lunghezza del cavo: cavi lunghi (i.e. pi&ugrave; di 10
piedi o 3 metri) possono portare problemi dovuti a interferenze
radio.  Se si ha bisogno di un cavo lungo si dovrebbe usare un buon
cavo ben schermato, ma comunque non sono raccomandati cavi troppo
lunghi: penso che la massima lunghezza del cavo dovrebbe essere 15
metri (30 piedi). 
<P>Ad ogni modo, qualcuno mi ha scritto che il suo cavo da 100 piedi (30
metri) funziona bene; se qualcuno vuole veramente provare una
connessione PLIP tra l'ufficio e casa sua (a 200 metri di distanza), ed
ha abbastanza soldi da spendere, pu&ograve; provarla, ma lo fa a suo rischio.
<P>
<H2><A NAME="s3">3. Riconfigurare il kernel.</A></H2>

<P>Si assume che si sia gi&agrave; in grado di configurare e compilare il
kernel, altrimenti conviene leggere qualcosa in proposito (Kernel
HOWTO ed altre guide).  Grazie al lavoro dei ragazzi del kernel,
ricompilarne uno degli ultimi &egrave; veramente un compito facile anche per
la gente "comune", e quindi lo si faccia.  Comunque, per amor di
completezza, ecco qui un breve sunto di quanto si deve fare:
<P><B>NOTA</B>: assumo che si stia usando un kernel della serie
2.0.xx.  Ormai non &egrave; pi&ugrave; necessario tenersi i kernel 1.2.xx.  Non ci
sono istruzioni sui kernel 2.1.xx in quanto sono per lo sviluppo. 
<P>Assumer&ograve; che si usi menuconfig per scegliere le opzioni del kernel, ma
gli altri strumenti sono equivalenti.  Mostrer&ograve; come farlo con
menuconfig: 
<P>
<BLOCKQUOTE><CODE>
<PRE>
#make menuconfig
</PRE>
</CODE></BLOCKQUOTE>
<P>Suggerisco caldamente di selezionare
<P>
<BLOCKQUOTE><CODE>
<PRE>
Loadable module support  --->
</PRE>
</CODE></BLOCKQUOTE>
<P>ed abilitare
<P>
<BLOCKQUOTE><CODE>
<PRE>
[*] Enable loadable module support
</PRE>
</CODE></BLOCKQUOTE>
<P>e, se possibile (i.e. si ha modules.2.0.0) 
<P>
<BLOCKQUOTE><CODE>
<PRE>
[*] Kernel daemon support (e.g. autoload of modules)
</PRE>
</CODE></BLOCKQUOTE>
<P>Si torni indietro e si scelga
<P>
<BLOCKQUOTE><CODE>
<PRE>
Networking options  --->
</PRE>
</CODE></BLOCKQUOTE>
<P>dove si deve scegliere almeno
<P>
<BLOCKQUOTE><CODE>
<PRE>
[*] Network firewalls
[*] TCP/IP networking
[*] IP: forwarding/gatewaying
</PRE>
</CODE></BLOCKQUOTE>
<P>Si torni indietro e si scelga almeno
<P>
<BLOCKQUOTE><CODE>
<PRE>
[*] Network device support
&lt;M> PLIP (parallel port) support
</PRE>
</CODE></BLOCKQUOTE>
<P>Se si usano i moduli consiglio di impostare il PLIP come modulo.  Se
lo si fa e se si ha bisogno di usare una stampante, si pu&ograve; andare
anche in 
<P>
<BLOCKQUOTE><CODE>
<PRE>
Character devices  --->
</PRE>
</CODE></BLOCKQUOTE>
<P>e impostare come modulo il 
<P>
<BLOCKQUOTE><CODE>
<PRE>
&lt;M> Parallel printer support
</PRE>
</CODE></BLOCKQUOTE>
<P>Ora si &egrave; abilitato il supporto per il PLIP nel kernel.  Se &egrave; la prima
volta che si compila il kernel si dia un occhiata pure alle altre
opzioni, poi si salvi e si esca.
<P>Alla fine si compili il tutto con
<P>
<BLOCKQUOTE><CODE>
<PRE>
#make dep ; make clean
#make zlilo
</PRE>
</CODE></BLOCKQUOTE>
<P>e se si usano i moduli
<P>
<BLOCKQUOTE><CODE>
<PRE>
# make modules 
# make modules_install
</PRE>
</CODE></BLOCKQUOTE>
<P>Ora si riavvii il proprio sistema.
<P>
<H2><A NAME="s4">4. Messaggi del kernel sull'interfaccia PLIP.</A></H2>

<P>Dopo aver riconfigurato e compilato il kernel abilitando il supporto
per il PLIP, quando si riavvia il sistema, se il kernel supporta
direttamente il PLIP, o quando si carica il modulo del PLIP se si &egrave;
compilato il supporto come modulo, si dovrebbe vedere qualcosa di
simile (i numeri possono essere diversi):
<P>
<BLOCKQUOTE><CODE>
<PRE>
NET3 PLIP version 2.2 gniibe@mri.co.jp
plip1: Parallel port at 0x378, using assigned IRQ 7.
</PRE>
</CODE></BLOCKQUOTE>
<P>A seconda della configurazione di klogd e syslogd il messaggio sul
plip pu&ograve; essere stato salvato nei file di log del sistema: non ci si
faccia prendere dal panico se non si vede il suddetto messaggio.  Se
si &egrave; compilato il PLIP come modulo e lsmod mostra che il modulo plip &egrave;
caricato, questo &egrave; sufficiente.
<P>Prego si prenda nota del nome dell'interfaccia.  Solitamente &egrave; plip1,
ma potrebbe essere plip0 e anche plip2, plip3 e cos&igrave; via.  Dipende
dall'indirizzo IO.
<P>
<H2><A NAME="s5">5. Impostare i file di configurazione.</A></H2>

<P><B>NOTA</B>: Alcune distribuzioni, come Debian, usano file di
configurazione diversi.  Se si ha un'installazione standard e non si
trovano i file rc.inet*, si cerchino i file di configurazione
(diversi) nella directory /etc/init.d.
<P>Prima di tutti si ricordi di salvare una copia di tutti i file che si
modificheranno, 
<P>
<BLOCKQUOTE><CODE>
<PRE>
#cp rc.inet1 rc.inet1.BACKUP 
</PRE>
</CODE></BLOCKQUOTE>
<P>potrebbe essere una buona idea.
<P>Ora, se non lo si &egrave; gi&agrave; fatto, si deve scegliere l'indirizzo IP delle
due macchine.  Nel mio esempio user&ograve; una coppia di IP d'esempio per
gli IP che si andranno a scrivere, nel formato standard xxx.xxx.xxx.xxx.
<P>Nel file /etc/rc.d/inet1.rc di entrambe le macchine si aggiunga questa
riga (meglio se verso la fine del file):
<P>
<HR>
<PRE>
/sbin/route add -net ${NETWORK} netmask ${NETMASK}
</PRE>
<HR>
<P>Dove NETWORK e NETMASK dovrebbero essere state impostate
precedentemente.  Se non si sa come, invito a leggere il NET-2 HOWTO.
<P>Se dopo questo comando route si ottiene un messaggio simile a questo:
<P>
<BLOCKQUOTE><CODE>
<PRE>
SIOCADDRT: network unreachable
</PRE>
</CODE></BLOCKQUOTE>
<P>allora si usi questo:
<P>
<HR>
<PRE>
/sbin/route add -net ${NETWORK} netmask ${NETMASK} dev plip1  
</PRE>
<HR>
<P>dove, come al solito, si dovr&agrave; usare il nome di interfaccia riportato
dai messaggi del kernel (si veda sopra).
<P>Si possono tranquillamente ignorare queste variabili solo nei seguenti
casi: 
<P>Se si vuole solamente connettere due macchina in una rete isolata, si
pu&ograve; prendere qualsiasi coppia di indirizzi IP, ad esempio 200.0.0.1 e
200.0.0.2 rispettivamente.  In questo caso si pu&ograve; tranquillamente
mettere NETWORK="200.0.0.0" e NETMASK="255.255.255.0".  Questi sono
gli IP di esempio che uso nella mia Installazione PLIP Rapida (si veda
pi&ugrave; sotto).
<P>
<P><B>NOTA</B>: 200.0.0.1 e 200.0.0.2 sono solo IP di esempio, e vi
avviso di non usare questi numeri perch&eacute; potrebbero essere indirizzi
di host reali su Internet!
<P>Invito caldamente a scegliere i proprio indirizzi negli intervalli di
"indirizzi privati":
<P>
<BLOCKQUOTE><CODE>
<PRE>
        10.0.0.0        -   10.255.255.255
        172.16.0.0      -   172.31.255.255
        192.168.0.0     -   192.168.255.255
</PRE>
</CODE></BLOCKQUOTE>
<P>Nel file /etc/hosts di entrambe le macchine si dovrebbe aggiungere una
voce con l'IP della macchina a cui ci si connette via PLIP.  Nel mio
esempio le voci sono:
<P>
<HR>
<PRE>
200.0.0.1       uno             # questo &egrave; l'indirizzo IP di "uno"
200.0.0.2       due             # questo &egrave; l'indirizzo IP di "due"
</PRE>
<HR>
<P>Dove "uno" e "due" sono i nomi scelti per i due host.
<P>Se si vuole attivare l'NFS, a patto di aver risposto affermativamente
durante la configurazione del kernel, si devono aggiungere in
/etc/exports le voci che descrivono le directory che si vogliono
esportare.  Nel mio esempio, per poter montare la directory /usr, si
deve aggiungere questa voce:
<P>
<HR>
<PRE>
 /usr                          due (ro)
</PRE>
<HR>
<P>Per maggiori informazioni su NFS, si legga la documentazione
specifica; non mi si segnalino problemi con NFS, non sar&ograve; in grado di
aiutare.
<P>Ora si riavvia il proprio sistema.
<P>
<H2><A NAME="activate"></A> <A NAME="s6">6. Attivare la connessione PLIP.</A></H2>

<P>E finalmente, questi sono i comandi, da eseguire con i privilegi di
root, che attivano l'interfaccia PLIP (naturalmente il cavo deve
essere gi&agrave; collegato correttamente).
<P><B>NOTA</B>: Se succede qualcosa di inaspettato, si ricontrolli il
cavo ed eventuali errori di battitura nei comandi.  Se nonostante si
seguano correttamente le istruzioni ci sono ancora errori, si legga il
paragrafo delle FAQ, nel quale sono gi&agrave; disponibili un sacco di
risposte. 
<P>Per prima cosa ci si assicuri che non sia presente il dispositivo lp: 
<BLOCKQUOTE><CODE>
<PRE>
# cat /proc/devices
</PRE>
</CODE></BLOCKQUOTE>
<P>Non ci deve essere nessun riferimento ad lp simile al seguente:
<P>
<BLOCKQUOTE><CODE>
<PRE>
 6 lp
</PRE>
</CODE></BLOCKQUOTE>
<P>Se c'&egrave;, si rimuova (temporaneamente) il dispositivo lp prima di
continuare: se PLIP funziona allora lo si pu&ograve; provare con lp pi&ugrave;
tardi.  Per rimuovere il dispositivo lp si dovr&agrave; usare rmmod se &egrave; un
modulo; se invece &egrave; compilato staticamente nel kernel, si deve
ricompilare il kernel con il supporto di lp come modulo (idea molto
saggia). 
<P>Negli esempi, uso ancora i nomi uno e due.  Su uno si dovranno fare le
seguenti cose.
<P>Se non si ha il demone che monta automaticamente i moduli e si &egrave;
compilato PLIP come modulo, lo si deve montare:
<P>
<BLOCKQUOTE><CODE>
<PRE>
# insmod plip
</PRE>
</CODE></BLOCKQUOTE>
<P><B>NOTA</B>: se la propria porta parallela non &egrave; sull'IRQ 7 e/o il
suo Indirizzo IO &egrave; diverso da 0x378, allora lo si deve dire a
insmod.  Si trovi quali sono l'IRQ e l'Indirizzo IO veri (potrebbe
andare bene anche il comando DOS MSD, ma non ci si fidi troppo) e
scrivere qualcosa del genere:
<P>
<BLOCKQUOTE><CODE>
<PRE>
# insmod plip io=0x278 irq=5
</PRE>
</CODE></BLOCKQUOTE>
<P>Solitamente l'IRQ &egrave; il 7 o il 5, mentre l'Indirizzo IO &egrave; 0x378, 0x278
o 0x3bc.  &Egrave; importante verificare che gli indirizzi e gli IRQ
corrispondano alle impostazioni hardware (tramite ponticelli nelle
vecchie schede, nel BIOS nelle schede madri moderne).
<P>Se si &egrave; paranoici si verifichi che il modulo &egrave; caricato con:
<P>
<BLOCKQUOTE><CODE>
<PRE>
  # lsmod

Module:        #pages:  Used by:
plip               3            0
</PRE>
</CODE></BLOCKQUOTE>
<P>Ci si annoti il nome dell'interfaccia (plip0, plip1, e cos&igrave; via; per
maggiori dettagli si legga il precedente capitolo sui messaggi del
kernel) e si imposti poi l'interfaccia PLIP:
<P>
<BLOCKQUOTE><CODE>
<PRE>
# ifconfig plip1 uno pointopoint due up
</PRE>
</CODE></BLOCKQUOTE>
<P><B>NOTA</B>: se la propria porta parallela non &egrave; sull'IRQ 7 e/o il
suo Indirizzo IO &egrave; diverso da 0x378, allora lo si deve dire a
ifconfig.  Si usino gli stessi IRQ e Indirizzo IO riportati dai
messaggi del kernel e si scriva qualcosa del genere: 
<P>
<BLOCKQUOTE><CODE>
<PRE>
# ifconfig plip1 irq 7
# ifconfig plip1 io_addr 0x3bc
</PRE>
</CODE></BLOCKQUOTE>
<P>Solitamente IRQ &egrave; 7 oppure 5, mentre l'Indirizzo IO &egrave; 0x378, 0x278 o
0x3bc. 
<P>Ora si controlli che funziona...
<P>
<BLOCKQUOTE><CODE>
<PRE>
# ifconfig



 .....
 .....
 plip1     Link encap:10Mbps Ethernet  HWaddr FC:FC:C8:00:00:01
           inet addr:200.0.0.1  P-t-P:200.0.0.2  Mask:255.255.255.0
           UP POINTOPOINT RUNNING NOARP  MTU:1500  Metric:1
           RX packets:0 errors:0 dropped:0 overruns:0
           TX packets:0 errors:0 dropped:0 overruns:0
           Interrupt:7 Base address:0x378 
</PRE>
</CODE></BLOCKQUOTE>
<P>Si aggiunga l'intradamento verso due...
<P>
<BLOCKQUOTE><CODE>
<PRE>
# route add due plip1
</PRE>
</CODE></BLOCKQUOTE>
<P>E, se si vuole, si pu&ograve; aggiungere anche l'NFS per due:
<P>
<BLOCKQUOTE><CODE>
<PRE>
# rpc.portmap
# rpc.mountd
# rpc.nfsd
</PRE>
</CODE></BLOCKQUOTE>
<P>Su "due" i comandi sono gli stessi, ma si deve scrivere uno invece di
due e viceversa.
<P>Una delle due macchine probabilmente avr&agrave; solamente la connessione
PLIP.  Se questo &egrave; vero e quella macchina &egrave; due, si pu&ograve; anche scrivere:
<P>
<BLOCKQUOTE><CODE>
<PRE>
# route add default gw uno
</PRE>
</CODE></BLOCKQUOTE>
<P>su quella macchina.  Nel mio esempio precedente, due &egrave; un portatile
che ha solamente una connessione PLIP con uno, cos&igrave; uso il comando
suddetto su due.
<P>Alla fine si controlli se il tutto funziona con un
<P>
<BLOCKQUOTE><CODE>
<PRE>
# ping due
</PRE>
</CODE></BLOCKQUOTE>
<P>da uno e un
<P>
<BLOCKQUOTE><CODE>
<PRE>
# ping uno
</PRE>
</CODE></BLOCKQUOTE>
<P>da due.
<P>Naturalmente sarebbe meglio far s&igrave; che tutti questi comandi siano
lanciati da uno script all'avvio del sistema.  Si deve solamente
creare uno script che esegua questi comandi: ora lo si pu&ograve; lanciare
come root quando serve, oppure si pu&ograve; aggiungere un comando (in
/etc/rc.d/rc.inet2) che lo chiami all'avvio.
<P>Per regolare il PLIP si pu&ograve; usare anche in comando plipconfig.  Si
veda la pagina man per maggiori informazioni.
<P>Per disabilitare il PLIP, si deve solamente far questo:
<P>
<BLOCKQUOTE><CODE>
<PRE>
# ifconfig plip1 down
</PRE>
</CODE></BLOCKQUOTE>
<P>il quale rimuove contemporaneamente anche le voci di instradamento.
Se non si ha il demone per il caricamento automatico dei moduli,
allora si rimuova anche il modulo.
<P>
<BLOCKQUOTE><CODE>
<PRE>
# rmmod plip
</PRE>
</CODE></BLOCKQUOTE>
<P>
<H2><A NAME="s7">7. FAQ (Filza di Assilli Quotidiani).</A></H2>

<P>Questa sezione dovrebbe (almeno spero) risolvere i vostri problemi.
Se si ha qualsiasi altra domanda, me la si invii liberamente.
<P>
<UL>
<LI>Ricevo questo messaggio all'avvio del sistema (o quando carico
il modulo del plip):
<BLOCKQUOTE><CODE>
<PRE>
SIOCSIFADDR: No such device
SIOCADDRT: Network is unreachable
</PRE>
</CODE></BLOCKQUOTE>

e quando provo a instaurare la connessione come spiegato in
precendenza ricevo ancora dei messaggi d'errore simili a:
<BLOCKQUOTE><CODE>
<PRE>
SIOCSIFADDR: No such device
SIOCSIFDSTADDR: No such device
SIOCADDRT: Network is unreachable
mount clntudp_create: RPC: Port Mapper failure - RPC: Unable to send
</PRE>
</CODE></BLOCKQUOTE>

<UL>
<LI>Il kernel, per qualche ragione, non &egrave; stato abilitato a
supportare il PLIP.  Ci&ograve; pu&ograve; essere dovuto a:
<UL>
<LI>Non si &egrave; risposto affermativamente a "PLIP support? " durante la
configurazione del kernel.</LI>
<LI>Non si &egrave; risposto affermativamente a "Printer support? " durante la
configurazione del kernel.</LI>
<LI>Si &egrave; compilato il PLIP come modulo, e quindi si deve caricarlo.</LI>
<LI>Si sta indirizzando la porta sbagliata, i.e. si &egrave; scritto plip1
invece di plip0 per esempio.</LI>
</UL>
</LI>
</UL>

</LI>
<LI>C'&egrave; modo, a parte tramite i moduli, di supportare sia PLIP che
LP? Forse con due porte parallele?
<UL>
<LI>S&igrave;, a quanto ne so ci sono due modi, descritti in "Patches to
make PLIP and LP live together":
<UL>
<LI>Si pu&ograve; applicare una patch al kernel per far s&igrave; che quest'ultimo
supporti entrambi.</LI>
<LI>Si pu&ograve; applicare un'altra patch al kernel per far s&igrave; che questo
usi una porta parallela per il PLIP e l'altra per LP.</LI>
</UL>
</LI>
</UL>

</LI>
<LI>Ho creato uno script che connette i miei 2 computer.  Imposto
automaticamente la connessione nel mio rc.inet2, dove chiamo uno
script che crea la connessione e abilita l'NFS.  La mia macchina "due"
monta alcune directory di "uno"; ho aggiunto le voci corrette nel
/etc/fstab di "due".  Se avvio "due" quando "uno" &egrave; gi&ugrave;, "due" di
blocca per alcuni minuti durante il mount dei filesystem remoti.
<UL>
<LI>Ci&ograve; avviene perch&eacute; "due" aspetta per montare i filesystem di
"uno", ma se "uno" &egrave; gi&ugrave; bisogna attendere finch&eacute; "due" si &egrave; stancata
di aspettare.  Per evitarlo, si pu&ograve;:
<UL>
<LI>Commentare in rc.inet2 il comando che monta i filesystem remoti.</LI>
<LI>Rimuovere le voci nel /etc/fstab di "due" e montare manualmente
i filesystem remoti quando e se servono.</LI>
<LI>Una soluzione migliore sarebbe se "due" fosse in grado di
determinare all'avvio se "uno" &egrave; attiva, e se lo &egrave; montare i
filesystem.  Questo pu&ograve; essere ottenuto rimpiazzando il comando mount
in rc.d e dove necessario con qualcosa di simile a questo:

<HR>
<PRE>
     if ping -c 5 one ; then
       mount one:/.....
     fi
</PRE>
<HR>
</LI>
</UL>
</LI>
</UL>
</LI>
<LI>La mia connessione &egrave; attiva, ma il ping fallisce.  Ricevo il
seguente messaggio dal kernel:

<BLOCKQUOTE><CODE>
<PRE>
      
plip1: timed out (1, 89)
</PRE>
</CODE></BLOCKQUOTE>


o un messaggi simili.

<UL>
<LI>Ci&ograve; significa che il "proprio lato della connessione" funziona,
la propria macchina invia il segnale, ma "l'altra parte" non risponde
o dalla propria parte non si aspetta su IRQ/Indirizzo IO giusti.
Questo &egrave; il problema pi&ugrave; comune e, per quanto ne so, ha un sacco di
motivi plausibili, solitamente problemi con il cavo oppure IRQ e/o
Indirizzo IO sbagliati.  L'IRQ sbagliato &egrave; causa di oltre il 60% dei
problemi, quindi &egrave; molto facile che cambiandolo si rimuova il
problema.  Di seguito un elenco dettagliato di possibili motivi:
<UL>
<LI>Il cavo non &egrave; inserito correttamente, oppure &egrave; rotto o
sbagliato.  Lo si controlli, se possibile, usandolo con due macchine
Linux che abbiano una connessione PLIP che gi&agrave; funziona.  Se non &egrave;
possibile, allora almeno si controlli il cavo con un tester.  Il fatto
che il cavo funzioni o meno con DOS/win95 &egrave; un buon/brutto presagio
ma non &egrave; una prova.</LI>
<LI>La macchina "dall'altra parte" non ha il PLIP attivo.</LI>
<LI>Si &egrave; connessi con un portatile che non ha una porta parallela
adatta (si veda pi&ugrave; avanti).</LI>
<LI>Si ha una porta parallela veramente economica che &egrave;
semplicemente una porta "stampante", e quindi pu&ograve; inviare ma non
ricevere. </LI>
<LI>La propria porta parallela non &egrave; impostata (almeno) come
bidirezionale.  Lo si faccia nella configurazione del BIOS.
Vanno bene anche impostazioni avanzate della porta parallela come EPP
e ECP. </LI>
<LI>La porta parallela ha un IRQ diverso, cos&igrave; si deve caricare il
modulo plip (o il modulo lp con un diverso IRQ.  Si torni al capitolo
<A HREF="#activate">Attivare la connessione PLIP</A> e si scelga un
IRQ diverso.</LI>
<LI>Altri dispositivi, ad esempio una scheda aiudio, potrebbero
condividere il proprio irq (che solitamente &egrave; l'irq 7).  Non ci si
fidi dei programmi DOS come MSD, si provi invece a caricare il modulo
plip con un diverso irq.</LI>
</UL>
</LI>
</UL>

</LI>
<LI>Ho messo l'IRQ e l'Indirizzo IO corretti, ma ancora non
funziona.  L'indirizzo l'ho scoperto usando il comando MSD.
<UL>
<LI>Mi &egrave; stato segnalato che MSD restituisce indirizzi delle porte
errati.  Si provi ad usare questo programma: 
<A HREF="http://www.cs.caltech.edu/~huny/para13.zip">http://www.cs.caltech.edu/~huny/para13.zip</A>. </LI>
</UL>

</LI>
<LI>La mia connessione &egrave; attiva e il ping funziona.  Qualche volta
ricevo dal kernel il seguente messaggio:
<BLOCKQUOTE><CODE>
<PRE>
plip1: timed out (1, 89)   
</PRE>
</CODE></BLOCKQUOTE>

e simile.
<UL>
<LI>Significa che l'altro capo della connessione non ha risposto
prima del timeout.  Se tutto funziona, si possono ignorare questi
messaggi: solitamente significano che l'altro capo &egrave; molto pi&ugrave; lento
del proprio, a causa di hardware pi&ugrave; vecchio o di un carico maggiore.
Si pu&ograve; provare a regolare il PLIP con il comando plipconfig.</LI>
</UL>

</LI>
<LI>Ho installato la connessione PLIP ma se faccio ping ho il 100%
di perdita dei dati.  Ho connesso il mio desktop ad un portatile.
<UL>
<LI>Alcune porte parallele dei portatili non vanno bene per il PLIP,
poich&eacute; sono semplicemente "porte stampante", i.e. possono solo
trasmettere ma non ricevere dati.  Non ho idea se esista un modo per
farle funzionare.  La sola speranza &egrave;:
<UL>
<LI>Si controlli la configurazione del proprio notebook, forse c'&egrave;
un modo per configurare la porta parallela come porta parallela invece
di porta stampante.  Solitamente &egrave; chiamato "modalit&agrave; parallela
avanzata" ("parallel enhanced mode").</LI>
<LI>Si provi la modalit&agrave; 0 del plip.  Non ho idea di come fare n&eacute; se
funziona o &egrave; ancora disponibile negli ultimi kernel.</LI>
</UL>
</LI>
</UL>

</LI>
<LI>Quali velocit&agrave; posso raggiungere con PLIP?
<UL>
<LI>Questa &egrave; una domanda di difficile risposta, poich&eacute; ci sono MOLTI
fattori che possono profondamente cambiare le prestazioni:
<UL>
<LI>La velocit&agrave; della CPU ad entrambi i capi della connessione.</LI>
<LI>Il tipo e l'impostazione delle porta parallela.</LI>
<LI>Il carico del sistema.</LI>
<LI>L'uso che si fa del PLIP.</LI>
</UL>

Solo per dare un'idea di massima, si dovrebbero raggiungere circa i
40Kb/sec, molto pi&ugrave; veloce di quanto si possa fare con una qualsiasi 
connessione seriale e prossima alla velocit&agrave; raggiungibile con una
scheda ethernet di basso livello.</LI>
</UL>

</LI>
<LI>Cosa succede se ho bisogno di fare ifconfig up e ifconfig porta
gi&ugrave; un sacco di volte plip1?
<UL>
<LI>Sembrerebbe che sia necessario aggiungere -arp al comando
ifconfig, tranne per la prima volta dopo l'avvio.  Io non ne ho
bisogno, ma forse qualcun'altro s&igrave;.</LI>
</UL>

</LI>
<LI>Ho letto quali sono i numeri IP riservati per le reti private e
i tuoi 200.0.0.1 e 200.0.0.2 non sono in questi intervalli.
Dovrebbero essere cambiati?
<UL>
<LI>S&igrave;, lo devono.  Ma, come ho sottolineato sin dall'inizio, li ho
scelti solo per la loro semplicit&agrave;, liberissimi di cambiarli a proprio
piacimento.  Di seguito un estratto dal NET-2 HOWTO:

<BLOCKQUOTE><CODE>
<PRE>
  
L'RFC1597 ha specificatamente riservato alcuni indirizzi IP per le
reti private.  Li si dovrebbe usare in quanto prevengono qualsiasi
cosa di spiacevole possa succedere se ci si connette accidentalmente
ad Internet.  Gli indirizzi riservati sono:

   10.0.0.0        -   10.255.255.255
   172.16.0.0      -   172.31.255.255
   192.168.0.0     -   192.168.255.255
</PRE>
</CODE></BLOCKQUOTE>
</LI>
</UL>

</LI>
<LI>C'&egrave; un modo per regolare i parametri del PLIP senza modificare
il codice sorgente?
<UL>
<LI>S&igrave;.  Si provi il comando /sbin/plipconfig. Si veda la pagina man
per maggiori informazioni.</LI>
</UL>

</LI>
<LI>Uso la Debian GNU/Linux, e sotto Debian i file
/etc/rc.d/rc.inet1 e 2 non esistono.  Dove devo scrivere il comando di
configurazione del plip?
<UL>
<LI>Nella Debian GNU/Linux di deve modificare /etc/init.d/network,
dove sui devono mettere tutti i comandi che dovrebbero stare in
rc.inet1 e 2. </LI>
</UL>

</LI>
<LI>Ho alcuni problemi a connettere due macchine con il PLIP.  La
prima ha l'ultimo kernel, mentre la seconda usa ancora la versione
PLIP del 1.0.x.: &egrave; questo il problema?
<UL>
<LI>S&igrave;, &egrave; molto meglio, quando possibile, avere la stessa versione
del PLIP ad entrambi i capi.  In plip.c sta scritto che il PLIP
attuale non pu&ograve; funzionare con il PLIP del 1.0.x.</LI>
</UL>

</LI>
<LI>Bene, il PLIP funziona con 4 bit, ma che ne &egrave; del PLIP a 8 bit
di cui ho letto nei documenti del kernel?  Penso si chiami Modo 1.
<UL>
<LI>Questo mini HOWTO &egrave; per la configurazione, per le informazioni
tecniche si leggano i file /usr/src/linux/drivers/net/README*.PLIP o
si contatti l'autore.  Quello che so &egrave; solo questo: il PLIP standard
usa i cavi "null printer" ed &egrave; il Modo 0 (da non confondere con plip0,
che &egrave; il nome dell'interfaccia) ed usa 4 bit; il Modo 1 usa 8 bit e
dovrebbe gi&agrave; essere disponibile, ma necessita di un cavo fatto a mano
e funziona solo tra due macchine Linux.  Non so, una volta che ci si &egrave;
procurati il cavo, come impostare una connessione PLIP Modo 1; se
qualcuno lo sa me lo faccia sapere.</LI>
</UL>
</LI>
</UL>
<P>
<H2><A NAME="s8">8. Patch per far convivere PLIP e LP.</A></H2>

<P>Il modo migliore per far convivere PLIP e LP &egrave; di usare i moduli del
kernel: si pu&ograve; caricare plip.o e scaricarlo quando serve la stampante
o viceversa.  Se veramente si ha bisogno di usare sia PLIP che LP, si
provino le patch che seguono.
<P>
<H2>8.1 PLIP e LP assieme sulla stessa porta.</H2>

<P>Se per qualche ragione si vuole avere PLIP e LP supportati
direttamente dal kernel, si possono provare queste patch.
<P>Si deve modificare il seguente pezzo di codice, ma prima <EM>si faccia
il backup</EM> dei file:
<P>
<HR>
<PRE>
******** modifiche a linux/drivers/char/lp.c *************************
struct lp_struct lp_table[] = {
        { 0x3bc, 0, 0, LP_INIT_CHAR, LP_INIT_TIME, LP_INIT_WAIT, NULL,
NULL, },
/*      { 0x378, 0, 0, LP_INIT_CHAR, LP_INIT_TIME, LP_INIT_WAIT, NULL,
NULL, },
        { 0x278, 0, 0, LP_INIT_CHAR, LP_INIT_TIME, LP_INIT_WAIT, NULL,
NULL, },
*/
};
#define LP_NO 1

******** modifiche a linux/drivers/net/Space.c ***********************
#if defined(PLIP) || defined(CONFIG_PLIP)
    extern int plip_init(struct device *);
    static struct device plip2_dev = {
        &quot;plip2&quot;, 0, 0, 0, 0, 0x278, 2, 0, 0, 0, NEXT_DEV, plip_init, };
    static struct device plip1_dev = {
        &quot;plip1&quot;, 0, 0, 0, 0, 0x378, 7, 0, 0, 0, &amp;plip2_dev, plip_init, };
/*    static struct device plip0_dev = {
        &quot;plip0&quot;, 0, 0, 0, 0, 0x3BC, 5, 0, 0, 0, &amp;plip1_dev, plip_init, };
*/
#   undef NEXT_DEV
#   define NEXT_DEV     (&amp;plip1_dev)
#endif  /* PLIP */
</PRE>
<HR>
<P>Ovviamente c'&egrave; una liberatoria standard: <EM>ho ricevuto queste patch
e le rendo disponibili "cos&igrave; come le ho ricevute". Ci&ograve; significa che
le si possono provare a proprio rischio e pericolo.</EM>  Ad ogni
modo, il problema pi&ugrave; grosso dovrebbe essere solamente quello di
ripristinare i file originali e ricompilare.
<P>
<H2>8.2 PLIP e LP su porte diverse.</H2>

<P>Se si posseggono almeno 2 porte parallele si possono provare queste
patch, che dovrebbero permettere di usare PLIP su una porta e LP
sull'altra. 
<P>
<OL>
<LI>Si commenti una riga in un file sorgente del kernel,
drivers/char/lp.c. 

<HR>
<PRE>
struct lp_struct lp_table[] = {
{ 0x3bc, 0, 0, LP_INIT_CHAR, LP_INIT_TIME, LP_INIT_WAIT, NULL, NULL, },
{ 0x378, 0, 0, LP_INIT_CHAR, LP_INIT_TIME, LP_INIT_WAIT, NULL, NULL, },
/* { 0x278, 0, 0, LP_INIT_CHAR, LP_INIT_TIME, LP_INIT_WAIT, NULL, NULL, }, */
}; 
    3 -> 2
</PRE>
<HR>

</LI>
<LI>Configurazione del kernel

<BLOCKQUOTE><CODE>
<PRE>
PLIP (parallel port) support (CONFIG_PLIP) [n] y

Parallel Printer support [y] y
</PRE>
</CODE></BLOCKQUOTE>

</LI>
<LI>Messaggi del kernel all'avvio

<BLOCKQUOTE><CODE>
<PRE>
lp1 at 0x0378, using polling driver
.....
NET3 PLIP version 2.0 gniibe@mri.co.jp
plip2: Parallel port at 0x278, using assigned IRQ 5.
</PRE>
</CODE></BLOCKQUOTE>

</LI>
</OL>
<P>Ancora si applica la liberatoria della sezione precendente.
<P>
<P>
<H2><A NAME="s9">9. Una connessione PLIP tra DOS e Linux.</A></H2>

<P>Dopo la prima versione di questo mini HOWTO molti mi hanno scritto per
avere informazioni sulla connessione tra computer Linux e DOS (o
Windows).  L'interesse generale mi ha portato ad aggiungere questo
capitolo che spero sia d'aiuto a tutti.
<P>Questa sezione &egrave; tratta da un articolo di James McDuffie
&lt;mcduffie@scsn.net&gt; che ho trovato nella Linux Gazzette.  Tratta
l'installazione di base di una connessione PLIP tra Linux e DOS usando
Windows e Trumpet WinSock e d&agrave; l'indirizzo di un utile programma che
permette di usare i programmi X-Window su Windows.
<P>L'ultima sezione &egrave; un addendum di James Vahn 
<A HREF="mailto:jvahn@short.circuit.com">&lt;jvahn@short.circuit.com></A>
che descrive pi&ugrave; approfonditamente come impostare questa connessione e
come risolvere molti problemi.
<P><B>Per qualsiasi domanda su questo capitolo vi invito a contattare
lui e non me.</B>
<P>
<H2>9.1 Connessione DOS-Linux.</H2>

<P>Si suppone che si sia gi&agrave; impostato correttamente il supporto PLIP dal
lato Linux e si abbia gi&agrave; il cavo giusto, altrimenti si torni ai
capitoli precedenti.
<P>Ora, per il lato DOS, per prima cosa si ha bisogno di un gestore dei
pacchetti ("packet driver").  Pu&ograve; essere trovato qui:
<P>
<A HREF="ftp://ftp.crynwr.com/drivers/plip.zip">ftp://ftp.crynwr.com/drivers/plip.zip</A><P>Il programma funziona sotto DOS e si comporta come l'Ethernet Packet
driver.  Se si vuole usare PLIP con Windows serve anche Trumpet
Winsock.  Questo funziona come interfaccia TCP/IP.  Altrimenti, si
deve trovare un qualche software di TCP/IP per DOS.
<P>Ora si torni alla macchina Linux e si aggiunga l'indirizzo del
computer DOS ad /etc/hosts.  Se la macchina DOS non ha un indirizzo IP
registrato, se ne pu&ograve; scegliere uno qualsiasi (si ricordino gli
avvertimenti del capitolo 3 sugli indirizzi IP).
<P>Si supponga ora di aver scelto il nome linux per la macchina Linux e
dos per quella DOS.  Si deve scrivere:
<P>
<BLOCKQUOTE><CODE>
<PRE>
ifconfig plip1 linux pointopoint dos arp up
route add dos
</PRE>
</CODE></BLOCKQUOTE>
<P>Naturalmente se si vuole che questo sia fatto ogni volta che si avvia la
macchina linux si possono aggiungere queste righe nel file /etc/rc.d/rc.inet1:
<P>
<HR>
<PRE>
/sbin/ifconfig plip1 linux pointopoint dos arp up
/sbin/route add dos
</PRE>
<HR>
<P>Ci&ograve; imposta l'interfaccia e poi aggiunge l'instradamento. Naturalmente
se si usa la seconda porta parallela si deve scrivere plip2. 
<P>Si torni al computer con DOS/Windows e si modifichi autoexec.bat.  Si
devono aggiungere le righe seguenti:
<P>
<HR>
<PRE>
c:\plip\plip.com 0x60
c:\tcpip\winsock\winpkt.com 0x60
</PRE>
<HR>
<P>Naturalmente si suppone di aver messo plip.com (il packet driver)
nella directory c:/plip e winpkt.com in c:/tcpip, diversamente bisogna
specificare i percorsi corretti.
<P>Ci&ograve; imposta il programma plip.com sul vettore di pacchetti 0x60 e poi
carica il programma winpkt.com distribuito con Trumpet Winsock sullo
stesso vettore.  Se il cavo &egrave; in qualcosa di diverso da lpt1 si devono
dire a plip.com il numero IRQ e l'Indirizzo IO.  Inoltre, winpkt.com
dev'essere eseguito per rendere disponibile a Windows questo vettore
di pacchetti.  D'ora in poi si vedr&agrave; l'effettiva configurazione sotto
Trumpet Winsock.  Tutto quel che si deve fare &egrave; di deselezionare SLIP
o PPP ed inserire 60 nella casella etichettata Packet vector.  Poi
specificare l'indirizzo IP che si &egrave; scelto, l'indirizzo IP della
macchina Linux come gateway predefinito e il Name Server che pu&ograve;
essere la macchina stessa o l'indirizzo del name server del proprio
provider se si ha intenzione di connetterla ad Internet (si veda pi&ugrave;
avanti).  Si chiuda il setup e si riavvii Windows e tutto dovrebbe
essere a posto!  Si metta winsock nel proprio gruppo Avvio e tutto
sar&agrave; impostato automaticamente!
<P>Se si vuole accedere ad Internet attraverso la macchina Linux dal
computer Windows, si deve impostare il mascheramento IP.  Per
informazioni si veda il NET-2 HOWTO.  Questo semplicemente maschera il
computer Windows con l'indirizzo IP della propria macchina Linux.
<P>Ho trovato anche un programma che permette di eseguire programmi
X-Window sotto Windows!  Lo si pu&ograve; trovare a:
<P>
<A HREF="http://www.tucows.com/">http://www.tucows.com/</A><P>Lo si installi come spiegato e poi tutto quel che resta da fare &egrave; fare
telnet dal computer Windows e impostare il display sul computer
Windows (`DISPLAY=dos:0.0` per esempio) e avviare il programma
desiderato.  Non c'&egrave; niente di meglio che eseguire xv sotto Windows!
Spero che tutto ci&ograve; aiuti.
<P>
<H2>9.2 Una esperienza di connessione PLIP tra DOS e Linux.</H2>

<P><B>NOTA:</B> Ho ricevuto questo documento da James Vahn 
<A HREF="mailto:jvahn@short.circuit.com">&lt;jvahn@short.circuit.com></A>. 
L'ho messo qui senza modifiche.  Ci&ograve; significa che <B>per qualsiasi
domanda su questa sezione lui &egrave; molto pi&ugrave; qualificato di me, e quindi
vi invito a scrivere a lui piuttosto che a me</B>.  La sua esperienza
con una connessione PLIP su un computer DOS con il solo dischetto e
uno Linux &egrave; un perfetto esempio di come risolvere problemi comuni.
<P><B>Ultimo aggiornamento 11 luglio 1996</B>
<P>La mia macchina DOS con solo dischetto &egrave; in rete attraverso il PLIP
con la seconda porta parallela della macchina Linux.  Alla prima porta
parallela della macchina Linux &egrave; connessa una stampante, entrambe sono
permanentemente connesse e dalla macchina DOS &egrave; possibile fare telnet
in Linux.  Questi sono i miei appunti su quanto ho fatto per ottenere
questa configurazione.
<P>Quando il kernel tenta di rilevare le porte parallele, se le prende
tutte a meno che non se ne rimuova qualcuna da tale rilevamento.  Se
non si fa cos&igrave; il PLIP non potrebbe avere niente.  Un metodo &egrave; di
caricare i driver come moduli quando servono...
<P>&lt;gniibe@mri.co.jp&gt; scrive:
<P>Raccomando di usare PLIP/LP come moduli per il kernel, in quanto
<UL>
<LI>i moduli sono flessibili rispetto alle modifiche nella configurazione</LI>
<LI>(ri)compilare il kernel non &egrave; facile per i nuovi utenti</LI>
<LI>la coesistenza di PLIP e LP &egrave; possibile solamente con i moduli</LI>
</UL>
<P>Usando PLIP/LP come moduli per il kernel, si pu&ograve; specificare in quale
porta &egrave; PLIP e in quale &egrave; LP.  Di seguito un esempio:
<P>
<BLOCKQUOTE><CODE>
<PRE>
# insmod lp.o io=0x378
# insmod plip.o io=0x278 irq=2
</PRE>
</CODE></BLOCKQUOTE>
<P>Si possono pure usare due porte parallele:
<P>
<BLOCKQUOTE><CODE>
<PRE>
# insmod plip.o io=0x278,0x3bc irq=2,5
</PRE>
</CODE></BLOCKQUOTE>
<P>Nell'esempio qui sopra
<P>plip0 &egrave; assegnato su 0x278 e il suo irq &egrave; il 2, e rispettivamente
<P>plip1 &egrave; assegnato su 0x3bc e il suo irq &egrave; il 5.
<P>
<P>
<P>L'uso dei moduli sembra proprio la strada da seguire.  Il metodo seguente
mostra come applicare una patch al kernel per permettere la
coesistenza di sia una stampante che del PLIP su porte differenti,
senza i moduli.  Se non si ha familiarit&agrave; con il concetto dei moduli,
si dovrebbe trovare questo metodo un po' pi&ugrave; veloce.
<P>Sar&agrave; necessario modificare due file nell'albero dei sorgenti del
kernel.  Io sto usando un kernel 1.2.13 e ho scoperto che per
sistemare il mio sistema sono necessarie alcune modifiche in
../linux/drivers/net/Space.c.  Si veda attorno alla riga 205 per le
definizioni del PLIP per assicurarsi che la propria porta e IRQ
corrispondano, e si prenda nota di quale driver sar&agrave; (plip0, plip1,
plip2).  Nel mio caso la porta 0x278 usa l'IRQ 5 (la scheda ha i
ponticelli messi in questo modo) ma in Space.c la definisce con l'IRQ
2.  Ho fatto qui le modifiche piuttosto che aprire il computer e
spostare i ponticelli.  L'alternativa &egrave; di specificare l'IRQ pi&ugrave; tardi
tramite il comando ifconfig, ma il kernel partir&agrave; con l'IRQ sbagliato
per il PLIP e ci&ograve; potrebbe alla fine risultare noioso.  &Egrave; una modifica
semplice (un solo carattere).
<P>Il passo seguente e pi&ugrave; difficile &egrave;:
<P>In .../drivers/char/lp.c si trover&agrave; quello che segue attorno alla riga
38:
<P>
<HR>
<PRE>
struct lp_struct lp_table[] = {
    { 0x3bc, 0, 0, LP_INIT_CHAR, LP_INIT_TIME, LP_INIT_WAIT, NULL, NULL, },
    { 0x378, 0, 0, LP_INIT_CHAR, LP_INIT_TIME, LP_INIT_WAIT, NULL, NULL, }, 
/*  { 0x278, 0, 0, LP_INIT_CHAR, LP_INIT_TIME, LP_INIT_WAIT, NULL, NULL, }, 
 * 0x278 reserved for plip1
 *
 * }; 
 * #define LP_NO 3 
 */
}; 
#define LP_NO 2 
</PRE>
<HR>
<P>Si notino le modifiche da fare: una porta &egrave; commentata, cos&igrave; ora sono
definite solo 2 porte.  La porta 0x3BC probabilmente non funzioner&agrave;
con il PLIP: in queste porte la linea IRQ &egrave; solitamente rotta, come
nei vecchi adattatori monocromatici (MDA).
<P>Si &egrave; fatto un backup di questi file prima di modificarli, vero?  Ora
si compili un nuovo kernel con il supporto per stampante, rete, dummy
e plip.
<P>Si configuri il sistema.  Questo &egrave; il mio file /etc/rc.d/rc.inet1:
<P>
<HR>
<PRE>
#!/bin/bash
#
/sbin/ifconfig lo 127.0.0.1
/sbin/route add -net 127.0.0.0

/sbin/ifconfig dummy 200.0.0.1
/sbin/route add -net 200.0.0.0 netmask 255.255.255.0
/sbin/ifconfig plip1 arp 200.0.0.1 pointopoint 200.0.0.2 up
/sbin/route add 200.0.0.2
/sbin/ifconfig dummy down
</PRE>
<HR>
<P>Si noti che arp &egrave; usato per la connessione DOS-Linux, ed apparentemente
non usata nelle connessioni Linux-Linux.
<P>E in /etc/hosts si pu&ograve; aggiungere quanto segue, solo per dare un nome
alle due macchine:
<P>
<HR>
<PRE>
200.0.0.1       console1
200.0.0.2       console2
</PRE>
<HR>
<P>La macchina DOS &egrave; console2.  Si ricordi l'avvertimento di Andrea su
questi... meglio usare gli schemi di numerazione standard.
<P>Si riavvii in modo che queste modifiche ed il nuovo kernel abbiano
effetto.  Durante la sequenza di boot (o eseguendo dmesg), se si sono
effettuate le modifiche, altrimenti quando si caricano i moduli:
<BLOCKQUOTE><CODE>
<PRE>
lp0 at 0x03bc, using polling driver
lp1 at 0x0378, using polling driver
[....]
NET3 PLIP version 2.0 gniibe@mri.co.jp
plip1: Parallel port at 0x278, using assigned IRQ 5.
</PRE>
</CODE></BLOCKQUOTE>
<P>Il comando "route" mostra questo:
<P>
<BLOCKQUOTE><CODE>
<PRE>
Kernel routing table
Destination     Gateway         Genmask         Flags MSS    Window Use Iface
console2        *               255.255.255.255 UH    1436   0      136 plip1
loopback        *               255.0.0.0       U     1936   0      109 lo
</PRE>
</CODE></BLOCKQUOTE>
<P>E "ifconfig plip1" mostra:
<P>
<BLOCKQUOTE><CODE>
<PRE>
plip1     Link encap:10Mbps Ethernet  HWaddr FC:FC:C8:00:00:01
          inet addr:200.0.0.1  P-t-P:200.0.0.2  Mask:255.255.255.0
          UP POINTOPOINT RUNNING  MTU:1500  Metric:1
          RX packets:132 errors:0 dropped:0 overruns:0
          TX packets:136 errors:0 dropped:0 overruns:0
          Interrupt:5 Base address:0x278 
</PRE>
</CODE></BLOCKQUOTE>
<P>Si veda in /etc/inetd.conf se il telnet &egrave; abilitato.  &Egrave; bene leggere
la pagina man di tcpd e l'uso di /etc/hosts.allow (ALL: LOCAL) e 
/etc/hosts.deny (ALL: ALL).  Si dovrebbe essere in grado di fare
"telnet localhost". 
<P>La parte su Linux &egrave; fatta, ora viene quella DOS.  Ancora, non ci si
fidi della porta 0x3BC se ne risulta una presente.
<P>Io uso il telnet della NCSA e il driver PLIP della Crynwr reperibili
su questi siti: 
<P>
<A HREF="ftp://ftp.ncsa.uiuc.edu/Telnet/DOS/ncsa/tel2308b.zip">ftp://ftp.ncsa.uiuc.edu/Telnet/DOS/ncsa/tel2308b.zip</A><P>
<A HREF="ftp://ftp.crynwr.com/drivers/plip.zip">ftp://ftp.crynwr.com/drivers/plip.zip</A><P>Ci si assicuri di usare la versione 2.3.08 del telnet della NCSA e la
versione 11.1 del driver PLIP della Crynwr.  Invito a trovare e
leggere il file SUPPORT.DOC della Crynwr.
<P>Il file CONFIG.TEL.   La maggior parte di questo file sono cose
predefinite e per risparmiare un po' di spazio ho provato a riportare
qua solo le informazioni che servono (almeno spero).  La seconda porta
su questa macchina &egrave; impostata come 0x278 sull'IRQ 5.
<P>
<HR>
<PRE>
myip=200.0.0.2 
netmask=255.255.255.0       # maschera della sottorete
hardware=packet             # scheda di rete (packet driver interface)
interrupt=5                 # IRQ sul quale &egrave; impostata la scheda
ioaddr=60                   # vettore di interrupt software che usa il driver
#
#[...un sacco di cose non modificate...]
#
# e alla fine del file, si metta questa riga:
name=console1 ; hostip=200.0.0.1 ; nameserver=1 ; gateway=1 
</PRE>
<HR>
<P>(console1 &egrave; il nome della macchina Linux, si pu&ograve; usare quello che si vuole)
<P>Ho fatto un cavo null da 12 piedi tra le due macchine, e (dopo aver
scoperto subito che era mal connesso) non ci sono stati problemi.
Dovrebbe funzionare anche un cavo null per stampante a 11 linee.  Il
file sorgente plip.c mostra la connessione. Sebbene il mio cavo abbia
la connessione 17-17, non penso sia usato per qualcos'altro e non era
presente fra i cavi gi&agrave; pronti.
<P>
<HR>
<PRE>
@echo off
plip.com 0x60 5 0x278
telbin -s console1
</PRE>
<HR>
<P>Questo dovrebbe connettere alla macchina Linux su /dev/ttyp.  Il
telnet della NCSA fornisce 8 schermi virtuali e funziona anche da
server ftp.  L'interfaccia PLIP fornisce un discreto throughput, ed io
ho raggiunto i 6.5K/s con le mie antichit&agrave;.  Questo fa sperare che voi
possiate fare meglio.  :-)
<P>
<H2><A NAME="s10">10. PLIP tra Linux e Windows 95.</A></H2>

<P>Questa sezione &egrave; vuota.  Non uso Windows 95 per niente di serio a parte i
giochi, e quindi non ho provato e non mi interessa una connessione
PLIP con Linux.  Le domande su questa connessione hanno vinto la gara
sulla domanda posta pi&ugrave; spesso, e cos&igrave; do qui (finalmente) la risposta
definitiva. 
<P>No, finora nessuno mi ha segnalato una connessione PLIP funzionante
tra Linux e Windows 95.  Se qualcuno ha successo nell'instaurare
questa connessione, me lo faccia sapere immediatamente: migliaia di
utilizzatori del PLIP aspettano questa notizia!
<P>
<H2><A NAME="s11">11. Domande? Commenti? Inviatemeli.</A></H2>

<P>Per qualsiasi domanda e commento mi si pu&ograve; contattare via e-mail
all'indirizzo 
<A HREF="mailto:controzz@cli.di.unipi.it">controzz@cli.di.unipi.it</A>. 
<P>Qualsiasi responso &egrave; benvenuto, qualsiasi segnalazione di errori &egrave;
preziosa.  La release successiva avr&agrave; una sezione di FAQ ancora pi&ugrave;
grande se mi inviate domande e, naturalmente, anche le risposte se le
trovate da soli. 
<P>Vi invito a non porre domande gi&agrave; presenti nella FAQ.
<P>Se mi si deve chiedere aiuto, ci si assicuri di farmi sapere tutte le
informazioni che mi servono, tra cui, almeno, la versione del kernel,
i comandi usati, i messaggi d'errore, il cavo che si usa e qualsiasi
altro messaggio di sistema relativo al PLIP.
<P><B>Si ricordi di non inviarmi domande sul PLIP con DOS/Windows
3.1/Windows 95, non posso aiutare.  Queste domande dovrebbero essere
spedite a James Vahn 
<A HREF="mailto:jvahn@short.circuit.com">jvahn@short.circuit.com</A>, che mi ha spedito l'addendum sul DOS.
Ancora: &egrave; inutile chiedere a lui o a me a riguardo del PLIP con
Windows 95.</B>
<P>
<H2><A NAME="s12">12. Dove trovare le nuove versioni si questo mini HOWTO.</A></H2>

<P>Questo mini HOWTO &egrave; mantenuto dai coordinatori degli HOWTO ed &egrave;
postato mensilmente su 
<A HREF="news:comp.os.linux.answers">comp.os.linux.answers</A> e pu&ograve; essere trovato nella directory
HOWTO a sunsite e nei suoi mirror.
<P>Un altro modo per trovarlo (e per contattarmi) &egrave; attraverso la mia
Home Page, 
<P>
<A HREF="http://www.cli.di.unipi.it/~controzz/intro.html">http://www.cli.di.unipi.it/~controzz/intro.html</A> (in italiano)
<P>
<A HREF="http://www.cli.di.unipi.it/~controzz/intro_e.html">http://www.cli.di.unipi.it/~controzz/intro_e.html</A> (in inglese).
<P>
<H2><A NAME="s13">13. Crediti.</A></H2>

<P>Molti ringraziamenti a:
<UL>
<LI>Rick Lim &lt;ricklim@freenet.vancouver.bc.ca&gt; per le patch
per far convivere PLIP e LP.</LI>
<LI>Takeshi Okazaki &lt;GBA03552@niftyserve.or.jp&gt; per le patch
per usare PLIP e LP su due distinte porte parallele.</LI>
<LI>Jim Van Zandt &lt;jrv@vanzandt.mv.com&gt; per alcuni avvisi sul
&quot;tutorial&quot; di questo HOWTO.</LI>
<LI>Fernando Molina &lt;fmolina@nexo.es&gt; per gli utili commenti
su IRQ e Indirizzi IO.</LI>
<LI>James Vahn &lt;jvahn@short.circuit.com&gt; per l'utile addendum
al capitolo sull'uso del PLIP tra DOS e Linux.</LI>
<LI>A tutti gli utenti che hanno postato articoli relativi al PLIP
nei newsgroup di Linux e/o spediti a me.  L'elenco di quanti mi hanno
aiutato con informazioni e commenti potrebbe essere lunga quanto il
mini HOWTO stesso: grazie a tutti!</LI>
</UL>
<P>
<H2><A NAME="s14">14. Messaggio di Copyright (in inglese).</A></H2>

<P>Unless otherwise stated, Linux HOWTO documents are copyrighted by
their respective authors. Linux HOWTO documents may be reproduced and
distributed in whole or in part, in any medium physical or electronic,
as long as this copyright notice is retained on all copies. Commercial
redistribution is allowed and encouraged; however, the author would
like to be notified of any such distributions.
<P>All translations, derivative works, or aggregate works incorporating
any Linux HOWTO documents must be covered under this copyright notice.
That is, you may not produce a derivative work from a HOWTO and impose
additional restrictions on its distribution. Exceptions to these rules
may be granted under certain conditions; please contact the Linux
HOWTO coordinator at the address given below.
<P>In short, we wish to promote dissemination of this information through
as many channels as possible. However, we do wish to retain copyright
on the HOWTO documents, and would like to be notified of any plans to
redistribute the HOWTOs.
<P>If you have questions, please contact Greg Hankins, the Linux HOWTO
coordinator, at
linux-howto@sunsite.unc.edu via email.
</BODY>
</HTML>