  SLIP/PPP Emulator HOWTO
  a cura di Irish <irish@eskimo.com>
  Versione 3.0 (aggiornata al 8/7/97)
  ____________________________________________________________

  Indice Generale


  1. Introduzione
  2. Come funziona un emulatore?
     2.1 Cos' il TIA?
     2.2 Cos' lo SLiRP?
     2.3 Che dire di Term?
     2.4 Che dire del vero SLIP/PPP?
     2.5 Ne ho abbastanza! Come inizio?

  3. Preparare la vostra macchina Linux
     3.1 Compilare il vostro kernel
     3.2 Editare qualche file in /etc
     3.3 DIP
     3.4 PPP

  4. E ora?
     4.1 Posta
     4.2 News
     4.3 Mosaic/Netscape

  5. Miscellanea
     5.1 Riferimenti


  ______________________________________________________________________

  11..  IInnttrroodduuzziioonnee

  Questo documento descriver come riuscire a far connettere la vostra
  macchina Linux ad un sito qualunque usando un emulatore SLIP/PPP, ad
  esempio SLiRP o TIA. Non mi assumo nessuna responsabilit per il
  vostro utilizzo di queste informazioni, ma le correzioni sono
  benvenute.

  Non prover a descrivere tutto quello che pu essere fatto su questa
  connessione dopo che  stata stabilita, ma far riferimento ad altri
  documenti o siti che conterranno le informazioni pi importanti.

  Fatto questo, cominciamo!


  22..  CCoommee ffuunnzziioonnaa uunn eemmuullaattoorree??


   importante capire come funziona in generale un emulatore SLIP/PPP,
  per rendersi conto dei suoi limiti. Innanzitutto, non  necessario che
  installiate l'emulatore sulla vostra macchina.  L'emulatore gira
  soltanto sul vostro host remoto.  richiesta l'installazione dei
  protocolli TCP/IP e SLIP o PPP nel kernel sulla vostra macchina (cose
  che tra un po' approfondiremo), e di qualche client.

  Ecco cosa succede: voi spedite delle richieste di rete dalla vostra
  macchina al vostro host remoto attraverso il collegamento SLIP/PPP.
  L'emulatore le cattura e le invia in generale fuori sulla Rete. Poi i
  dati in ingresso vengono mandati indietro dalla Rete al vostro account
  sull'host remoto, dove l'emulatore le cattura e le invia indietro sul
  collegamento SLIP/PPP alla vostra macchina. Sicch, alla Rete sembra
  come se voi steste operando dal vostro account sull'host remoto, ma a
  voi appare come se foste davvero connessi proprio alla Rete.
  Come potete vedere, ci pu confondere la roba che  in arrivo dalla
  Rete.  Ad esempio, talk non funziona con un emulatore, perch la
  richiesta in ingresso di talk cerca di lanciare il demone talk
  sull'host remoto, non sul vostro.

  L'altra profonda differenza tra un emulatore ed un vero SLIP/PPP  che
  NON vi viene assegnato un indirizzo IP univoco; ricordate, state
  soltanto convertendo un dialup account in una connessione SLIP/PPP.


  22..11..  CCooss'' iill TTIIAA??

  "The Intenet Adaptor" (L'Adattatore Internet ndt)  stato scritto dai
  genietti di marketplace.com. Ora hanno smesso di lavorarci sopra e lo
  considerano un prodotto 'maturo'. L'ultima versione  la 2.05; se
  avete intenzione di utilizzare TIA, procuratevi per cortesia questa
  versione.

  NNOOTTAA Secondo le ultime voci, sono disponibili ora soltanto licenze per
  siti.


  22..22..  CCooss'' lloo SSLLiiRRPP??

  Si tratta di un programma freeware, coperto dalla GNU Public License.
  Al momento ne  uscita una beta, ed  molto stabile. Sfoggia un po' di
  funzionalit in pi rispetto a TIA, ed  (a quanto dicono) pi
  accomodante sulle risorse dell'host.  Disponibile dappertutto presso i
  siti FTP su Linux.


  22..33..  CChhee ddiirree ddii TTeerrmm??

  Se non avete l'accesso di root presso la vostra macchina per una
  ragione o per un'altra, e non potete convincere qualcuno che ce l'ha
  ad installare SLIP e dip, allora non avrete molte possibilit tranne
  l'utilizzo di Term. Se ne volete sapere di pi su Term, per favore
  leggete l'HOWTO su Sunsite.


  22..44..  CChhee ddiirree ddeell vveerroo SSLLIIPP//PPPPPP??

  Hey, oggigiorno un sacco di posti stanno offrendo del vero SLIP/PPP
  per dialup non dedicate a prezzi ragionevoli. Se ve lo potete
  permettere o ne sentite il bisogno, prendetelo. La Cosa Vera  sempre
  migliore dell'emulazione. Comunque uno dei vantaggi di un emulatore 
  la sicurezza; funziona come un firewall impenetrabile, e usandolo
  siete corazzati abbastanza, esattamente come il vostro provider.
  Dovrete tuttavia pagare per questo vantaggio, l'emulazione  pi lenta
  e non supporta appieno tutti i protocolli. Ancora, e concludo,
  l'emulazione  sufficiente per la maggior parte delle persone ed  una
  buona maniera di collegarsi alla Rete/Internet.


  22..55..  NNee hhoo aabbbbaassttaannzzaa!! CCoommee iinniizziioo??

  Va bene, ci stiamo arrivando, ma prima c' qualche informazione di cui
  avete bisogno, ed un paio di spiegazioni.

  Innanzitutto, avete bisogno di ottenere l'indirizzo IP del vostro
  provider, se non lo avete gi. Potete ottenerlo scrivendo 'who' al
  prompt di shell presso di loro, o leggendo il loro /etc/hosts, o anche
  soltanto chiedendoglielo. Mentre ve lo procurate, prendete l'indirizzo
  IP dell'host POP/SMTP e del server NNTP (se non sapete cosa sono
  queste cose, fidatevi di me e chiedetele lo stesso, ne avrete
  bisogno).
  In secondo luogo, fatemi spiegare velocemente qualcosa sull'hostname e
  sul nome di dominio. L'hostname  la prima parte di un nome delle
  macchine, il dominio  la sua parte restante. Pi o meno cos:
  nomehost.dominio.nome (una divisione in quattro sarebbe
  nomehost.do.minio.nome). Insieme essi formano un Fully Qualified
  Domain Name o FQDN (Nome di Dominio Pienamente Qualificato ndt).

  Il nome della vostra macchina Linux viene conservato in /etc/HOSTNAME,
  e s, potete cambiarlo. Infatti, per favore fatelo (se state usando
  Slackware, sar per default "darkstar.frop.org"). Basta editare il
  file /etc/HOSTNAME per essere qualunque cosa vogliate - ricordate, se
  state usando un emulatore, allora siete praticamente invisibile per la
  Rete in generale, sicch potete essere creativi.  Comunque, se state
  progettando di ottenere prima o poi una vera connessione SLIP/PPP,
  probabilmente vorrete adattarvi ad essere un sub-host del vostro
  provider. Ad esempio, se il vostro provider  "info.superhiway.com",
  il dominio  "superhiway.com" e il nome dell'host  "info". Allora
  potreste essere sia "offramp.info.superhiway.com" che soltanto
  "offramp.superhiway.com".  Funzionerebbero entrambi, ed in entrambi i
  casi il vostro hostname  "offramp".


  33..  PPrreeppaarraarree llaa vvoossttrraa mmaacccchhiinnaa LLiinnuuxx


  In due parole, ecco di cosa avete bisogno. Spiegher le prime tre cose
  approfonditamente.


    Compilare il vostro kernel per includere SLIP e TCP/IP

    Editare qualche file in /etc

    Installare e configurare dip

    Installare pppd (facoltativo, solo per PPP)

  Avrete anche bisogno di prendere un appropriato emulatore binario per
  il vostro host remoto e di installarlo. SLiRP  disponibile presso
  Sunsite e altri siti FTP su Linux. Tutte le informazioni importanti
  per TIA sono disponibili presso il sito principale di TIA.

  Fatto! Cominciamo.


  33..11..  CCoommppiillaarree iill vvoossttrroo kkeerrnneell

  Se non l'avete mai fatto, allora dovreste farlo. E dovreste leggere
  prima le FAQ, ma non vi preoccupate,  facile. Se volete, mi potete
  spedire una e-mail e vi dar una mano.

  Dar per scontato che sappiate farlo, per amore di brevit. Quando
  fate il 'make config', cercate "Network Devices". Mettete 'y',
  naturalmente, poi mettete 'y' a SLIP, CSLIP, (o PPP) e TCP/IP e 'n' a
  tutto il resto, a meno che non abbiate delle schede ethernet oppure
  abbiate bisogno di qualche altro protocollo per qualcos'altro. _S_e _n_o_n
  _l_o _f_a_t_e_, _n_o_n _f_u_n_z_i_o_n_e_r__! Terminate la compilazione e l'installazione
  del nuovo kernel, poi,


  33..22..  EEddiittaarree qquuaallcchhee ffiillee iinn //eettcc

  Questi file inizializzeranno i vostri percorsi verso il vostro host
  remoto.  /etc  la directory per le configurazioni del sistema.
  Sostituite tutto quello che  tra virgolette con i valori appropriati,
  naturalmente (ma non inserite le virgolette, servono da promemoria).
  Ci sono tre file che dovete cambiare e sono:


    /etc/hosts:


       # La riga successiva deve essere ESATTAMENTE come questa.
       127.0.0.1       localhost

       # Notate che al termine delle prossime due voci l'hostname viene
       # ripetuto.
       # Questa abbreviazone  un alias, ed  necessaria per la prima voce.
       # Se siete su una LAN, avrete bisogno di sostituire il vostro
       # indirizzo IP nella prima riga qui sotto.
       192.0.2.1       "vostrohostname.dominio.nome  vostrohostname"
       "XXX.XXX.XX.XX" "hostnameremoto.dominio.nome  hostnameremoto"



    /etc/host.conf:


       order hosts, bind
       multi on



    /etc/resolv.conf:


       domain "vostrodominio.nome"
       # La riga successiva di solito usa lo stesso indirizzo IP remoto che 
       # presente in /etc/hosts
       nameserver "XXX.XXX.XX.XX"



    Per usare un server NNTP, inserite questa riga in /etc/profile:



       export NNTPSERVER="hosts.remoto.nntpnomeserver"



  33..33..  DDIIPP


  DIP (Dialup Internet Protocol)  ci che userete per chiamare l'host
  remoto, lanciare l'emulatore e convertire la linea in un SLIP/PPP.  
  presente nel pacchetto "N" della Slackware, insieme ad un sacco di
  client e di utility, qualcuna delle quali potreste anche volerla
  installare =).  anche disponibile presso Sunsite in un singolo file
  .tar

  Una volta installato, avrete bisogno di uno script dip.  Qui c' un
  esempio, basta inserire la roba giusta dove stanno le virgolette (ma
  non inserite le virgolette, servono solo da promemoria).



  ----------TAGLIA QUI--------------------------------

  main:
    get $local "vostrohostname.dominio.nome"
    get $remote "hostnameremoto.dominio.nome"

  # La vostra porta qui
    port cua"?"

  # Usate 115200 per i modem 28.8
    speed 57400
    reset

  # non usate gli spazi nella vostra stringa di comando AT!
    init AT "string of commands"
    wait OK 5

  # Questo far richiamare. Se non funziona, giocate con il tempo di attesa
  # (ascoltate il vostro modem). Se non funziona ancora, scrivetemi.
  # _Guardate anche la nota alla fine dello script re: error codes._

  dial:
    dial "phonenumber"
    print Dialing...
    if $errlvl != 0 goto error

  # Potreste aver bisogno di cambiare questo tempo di attesa per
  # adattarlo al vostro modem
    wait BUSY 20
    if $errlvl == 0 goto dial

  login:
    print Connected and Logging in...

  # Questo "wait" e "send" mi fa superare i miei host Annex. _Cambiatelo
  # per il vostro sito!_
    wait ==> 60
    send 4\n
    wait ogin: 60
    if $errlvl != 0 goto login_error1
    send "LOGIN"\n
    wait assword: 60
    if $errlvl != 0 goto login_error2
    send "PASSWORD"\n

  loggedin:
    wait "SYSTEM PROMPT" 60
    if $errlvl != 0 goto shell_error
    print Logged in!
    send "emulator startup command"\n
    wait "emulator startup response" 60
    if $errlvl != 0 goto emu_error

  # Il valore raccomandato di mtu  1500, ma questo  pi veloce in modo
  # interattivo. L'ftp potrebbe essere pi lento, sicch modificatelo a
  # piacere.
    get $mtu 296
    default

  done:
    print CONNECTED to $remote with address $rmtip
    mode CSLIP
    goto exit

  error:
    print Dialing Error
  login_error1:
    print No Login

  login_error2:
    print No Password prompt

  shell_error:
    print No shell prompt

  emu_error:
    There was a problem starting the emulator

  exit:

  # Questo provocher un errore quando si usa il flag -v, ma funziona
  # quando lo lanciate normalmente (termina dip ad un prompt locale).
    \r
  -------------TAGLIA QUI-----------------------------



  Dip fa notare che versioni pi recenti di dip non ritornano i codici
  dello status del modem (BUSY, NO CONNECT, etc.), al loro posto usano
  dei numeri. Ecco una tabella:

    0 = OK

    1 = CONNECT

    2 = ERROR

    3 = BUSY

    4 = NO CARRIER


  Questo dovrebbe rendere la vostra sezione di composizione telefonica
  somigliante a questo:



       dial:
         dial "phonenumber"
         print Dialing...
         if $errlvl != 0 goto error
         wait 1 20
         if $errlvl != 1 goto dial



  Ringrazio Lee Olds (lee@eskimo.com) per questa parte.

  \n = nuova linea, \r = a capo. Potreste aver bisogno di uno dei due (o
  di entrambi) nei posti giusti. Se quelli forniti non funzionano, fate
  degli esperimenti.

  Una nota sul modo in cui sono scritti il "wait" e i "send". Se non
  risulta chiaro dall'esempio, ecco cosa sta succedendo:

    wait ogin: 60 (lo script aspetter per 60 secondi che il remoto
     invii 'ogin:'.  Quando lo ottiene, lo script va avanti. Se non gli
     arriva, allora andr avanti dopo una sospensione di 60 secondi.)

    if $errlvl != 0 goto login_error1 (tutta questa riga  opzionale)
     (se lo script sta andando avanti perch ha ottenuto quello che
     stava aspettando, questo viene saltato. Se lo script continua
     perch  scaduto il tempo, andr dove gli dite di andare
     ('login_error1' in questo caso))

    send "LOGIN"\n (DIP invier 'LOGIN' ed un carattere di nuova riga)


  Potete inserire dei comandi di pausa se ne avete bisogno, in questo
  modo: "sleep 10" Questo metter in pausa lo script per 10 secondi.

  Dopo aver scritto questo file, rinominatelo, diciamo, come remote.dip
  ed inseritelo in /root. Poi, come root, avviate 'dip remote'. Usate il
  flag -v la prima volta per fare un debug ('dip -v remote'), questo
  flag vi mostrer tutti i passi che dip compie.

  Dip si avvier soltanto come root, ma c' un modo per farlo partire da
  un account utente. Per ora, se avete bisogno di questa informazione,
  chiedetemela. Posso inserirla in questo file pi in l, se la vogliono
  abbastanza persone.

  Se il dip emette subito un segnale d'errore, provate a togliere i
  commenti dallo script.


  33..44..  PPPPPP


  Quanto detto sopra vi fa navigare con il CSLIP, il che  davvero
  un'ottima cosa la maggior parte delle volte.  davvero facile farlo
  funzionare, dal momento che il protocollo  supportato al livello del
  kernel - soltanto accertatevi che stia l e che funzioni.

  Comunque, qualcuno di voi vorr il PPP, per motivi che soltanto voi
  potete dire. Non vi dir qui come installarlo, esiste un altro intero
  HOWTO scritto apposta. Quello che far  dirvi cosa c' da capire
  quando si usa il PPP con un emulatore.

  Innanzitutto, nell'ultima versione del DIP si afferma che potete
  usarlo per lanciare il PPP e potete farlo, MA fa partire soltanto il
  demone PPP - nessun flag, niente. Sicch se volete usare DIP per
  lanciare il PPP, assicuratevi di inserire tutte le informazioni di
  avvio nel file /etc/ppp/options, altrimenti non funzioner.

  Parlando del file delle opzioni, una delle cose che DEVONO essere
  presenti al suo interno a prescindere da come lanciate il pppd 
  questa: '192.0.2.1:XXX.XXX.XX.XX'. Che 
  'indirizzoIPlocale:indirizzoIPremoto'. Ne avete bisogno perch di
  norma il pppd pu riempire da solo questa riga vuota, ma non ci riesce
  se si connette ad un emulatore.

  Assicuratevi di prendere l'ultima release del pacchetto pppd e la pi
  grande. Sembra che recentemente ci siano state alcune versioni che
  avevano qualche problema.

  Infine, a meno che non abbiate una buona ragione per usare il PPP, o
  vogliate soltanto imparare come funziona, non ne avete veramente
  bisogno. Ho sperimentato entrambi e non ho notato nessuna differenza
  di prestazione con il set standard dei client.  Naturalmente, il
  Vostro Chilometraggio Pu Variare. :)



  44..  EE oorraa??

  Hey, se  andato tutto bene, ora siete connessi ad Internet!  Provate
  un 'telnet remotehostname' (ricordate quella abbreviazione nel vostro
  file host?). Dovreste ottenere il prompt remoto di login del telnet.
  Continuate, provatelo! Ora potete usare telnet/FTP/ecc. dappetutto
  sulla Rete dalla vostra macchina locale. Come? La vostra macchina sta
  utilizzando quella remota come un nameserver per risolvere gli
  indirizzi (resolv.conf).  Sperimentate, scoprite cosa funziona e cosa
  no.

  Non potrete usare i servizi che non siano gi attivati sul vostro host
  remoto!  Ad esempio, se il vostro server non permette i telnet, 
  probabile che neanche voi possiate farlo. Perch? Perch l'emulatore
  sta soltando trasferendo quello che  gi disponibile.


  44..11..  PPoossttaa


  L'ovvia soluzione non grafica  Pine, che si pu scaricare
  dall'Universit di Washington.

  La mia scelta per il 'Miglior Programma di Posta, Basato su X ' va a
  XFmail.  Al momento ne  uscita la beta, e va forte. Facile da
  installare; non ha bisogno di un sistema locale di posta installato
  (ma funzioner con gli spool locali) perch ha in s il POP - basta
  con popclient/fetchpop!  Facile da usare; completamente
  personalizzabile dalla GUI. Supporta anche il MIME. Prendetelo dal
  sito principale di The XFmail.


  44..22..  NNeewwss


  Il News Reader testuale SLRN  in tutta onest semplice da installare
  e di facile utilizzo.  un vero NNTP newsreader, il che significa che
  _n_o_n _ _n_e_c_e_s_s_a_r_i_o _n_e_s_s_u_n _t_r_a_s_p_o_r_t_o _l_o_c_a_l_e _d_i _n_e_w_s per farlo funzionare
  (non  necessario che installiate Cnews o INN).   necessario,
  naturalmente, che abbiate accesso ad un server NNTP, ma questo
  servizio  fornito dalla maggior parte degli ISP.  un programma
  testuale, ma usa i colore ed ha il supporto per il mouse, e funziona
  bene in una finestra rxvt.

  Il News Reader KNews, funzionante in X,  quasi perfetto. Come per il
  precedente SLRN, non  necessario alcun trasporto locale, ma necessita
  di un server NNTP. Vale quanto meno un'occhiata.


  44..33..  MMoossaaiicc//NNeettssccaappee


  Ovviamente, avrete bisogno che X sia attivo per farlo funzionare, ma
  si tratta semplicemente di scaricare via FTP il file binario,
  spacchettarlo, ed installarlo.



  55..  MMiisscceellllaanneeaa


  Se ho dimenticato qualcosa, o avete ancora delle domande, io leggo la
  mia posta quotidianamente. Questo articolo viene aggiornato abbastanza
  regolarmente, perci tornate a controllarlo piuttosto spesso (cambier
  i numeri della versione). Naturalmente, pi contribuite, pi
  informazioni saranno inserite qui, perci non esitate a dirmi
  qualunque cosa avete da offrire.

  Se voleste avere un aiuto, o state sperimentando dei problemi con il
  vostro setup, vi aiuter, _m_a _d_o_v_e_t_e _i_n_v_i_a_r_m_i _l_e _s_e_g_u_e_n_t_i _i_n_f_o_r_m_a_z_i_o_n_i:

  1. Una copia dei vostri tre file /etc.

  2. Una copia dell'output prodotto dal vostro script, lanciato con la
     -v flag (_p_e_r _f_a_v_o_r_e togliete la vostra password da l!).

     Anche se non avete nessuna aggiunta da fare, ma avete usato questo
     documento con successo, PER FAVORE SCRIVETEMI.  Voglio sapere
     quanto in realt risulta utile quello che ho scritto.


  55..11..  RRiiffeerriimmeennttii


  Sunsite  il sito FTP di sunsite.unc.edu, una autentica pletora di
  ogni cosa su Linux, comprese quasi tutte le FAQ, gli HOWTO e i README
  scritti.

  Marketplace.com  il sito principale del TIA, l'unico posto dove 
  disponibile. Io sono Irish, irish@eskimo.com, disponibile per commenti
  su Linux praticamente ogni giorno, quando non sto coccolando il mio
  gatto o abbracciando mio figlio.

  Documentazione tradotta da Francesco Rana <francesco.rana@libero.it>


  Questo HOWTO  disponibile nei seguenti posti:

    http://www.eskimo.com/ irish

    ftp://ftp.eskimo.com/u/i/irish

    ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO/mini/TIA



