Dos IPv4

Come sistemi operativi liberi, i sistemi GNU costituiscono la scelta ottimale, se non altro dal punto di vista economico, per la realizzazione di reti locali. Ma anche il recupero di vecchia tecnologia può essere di grande aiuto: il vecchio hardware basato su i286 può essere introdotto in una rete TCP/IP per servizi classici quali TELNET, FTP e altro.

Negli esempi che appaiono nelle sezioni che seguono si immagina di avere una piccola rete locale con due elaboratori.

  1. 192.168.1.1 dinkel.brot.dg, sistema GNU, con funzionalità di router e di servente DNS;

  2. 192.168.1.15 dos.brot.dg con il sistema Dos.

Il secondo elaboratore è quello che si vuole utilizzare con i programmi Dos descritti in questo capitolo. Per quanto riguarda il caso particolare del programma PCroute, vengono mostrati esempi con dati differenti.

Prima di proseguire, è importante evitare di farsi illusioni: si tratta di programmi molto deboli, utili solo per IPv4 e a volte incapaci di attraversare i router.

Driver di pacchetto

Per poter comunicare attraverso un elaboratore con sistema operativo Dos in una rete TCP/IP occorre un cosiddetto driver di pacchetto (packet driver), ovvero un driver software in grado di fornire un minimo servizio basato sul protocollo IP. La raccolta di driver di pacchetto più comune è quella della Crynwr (1) (http://www.crynwr.com).

I programmi che si intendono utilizzare devono essere predisposti per il tipo di driver di pacchetto a disposizione.

Una raccolta di driver di pacchetto organizzata da Crynwr, può essere ottenuta presso Simtel.Net (la nota distribuzione di software shareware e freeware per Dos e MS-Windows) all'indirizzo ftp://ftp.simtel.net/pub/simtelnet/msdos/pktdrvr/pktd11.zip.

All'interno della raccolta si può trovare un lungo elenco di driver per vari modelli di schede di rete Ethernet. In particolare, vale la pena di soffermarsi sui driver per le schede Ethernet NE2000 e per la connessione PLIP attraverso la porta parallela.

I driver di pacchetto Crynwr e altri simili, possono essere rimossi dalla memoria residente attraverso un programma speciale che accompagna la raccolta stessa. Si tratta di TERMIN.COM che richiede soltanto l'indicazione dell'indirizzo IRQ software con il quale è stato installato il driver:

TERMIN.COM irq_software

Per esempio, per eliminare il driver installato utilizzando l'indirizzo 7E16, viene eliminato dalla memoria residente con il comando seguente:

TERMIN.COM 0x7e

Libreria WATTCP

pericolo: software non libero software non libero: non è consentita la distribuzione di versioni modificate e non è consentita la commercializzazione

WATTCP (2) (University of Waterlo TCP) è una libreria utilizzata da alcuni programmi per accedere alle funzionalità TCP/IP. Di conseguenza, questi programmi hanno in comune lo stesso tipo di file di configurazione, che normalmente è denominato WATTCP.CFG.

Generalmente, questi programmi incorporano completamente il codice della libreria WATTCP, pertanto, i programmi sono autonomi, ma possono usare in comune lo stesso file di configurazione.

Questo file si compone di direttive molto semplici, in cui si assegna idealmente un valore a una variabile:

variabile_di_configurazione = valore

In generale, viene definito l'indirizzo IP, il nome corrispondente e la maschera di rete (o della sottorete), come si vede nell'esempio seguente:

HOSTNAME = dos
MY_IP = 192.168.1.15
NETMASK = 255.255.255.0

Inoltre, di solito si indicano anche i serventi DNS,(3) il nome del proprio dominio e il router (gateway):

GATEWAY = 192.168.1.1
NAMESERVER = 192.168.1.1
DOMAINSLIST = brot.dg

Può essere interessante anche la definizione della dimensione massima dei pacchetti (MSS, Max segment size), se per qualche motivo il driver di pacchetto dovesse avere delle limitazioni:

MSS = 512

In breve, un esempio completo, senza l'indicazione della dimensione massima dei pacchetti:

MY_IP = 192.168.1.15
NETMASK = 255.255.255.0
GATEWAY = 192.168.1.1
NAMESERVER = 192.168.1.1
HOSTNAME = dos
DOMAINSLIST = brot.dg

Alcuni programmi potrebbero richiedere la presenza di una variabile di ambiente che permetta loro di individuare facilmente la collocazione e il nome del file di configurazione. Per esempio, se si tratta del file C:\TCPIP\WATTCP.CFG, potrebbe essere richiesto di includere nel file AUTOEXEC.BAT la riga seguente:

SET WATTCP.CFG=\TCPIP

I programmi che utilizzano questa libreria, fanno spesso riferimento a file standard dei sistemi Unix, che devono trovare nella directory corrente:

HOSTS contiene un elenco di indirizzi IP associati al nome a dominio corrispondente, equivalente al noto /etc/hosts dei sistemi Unix
PROTOCOL contiene l'elenco dei protocolli con i nomi associati, equivalente al noto /etc/protocols dei sistemi Unix
SERVICES contiene l'elenco dei servizi di rete, equivalente al noto /etc/services dei sistemi Unix.

Applicazioni standard per WATTCP

Assieme alla libreria WATTCP, si trovano i sorgenti di alcuni programmi comuni, (4) diffusi in forma binaria in un archivio compresso denominato apps.zip. La tabella seguente ne elenca alcuni:

tcpinfo
mostra le informazioni tratte dal file di configurazione wattcp.cfg, consentendone il controllo;
ping nodo
esegue una richiesta di eco ICMP verso il nodo indicato;
finger [utente@]nodo
richiede le informazioni disponibili sugli utenti del nodo indicato;
rexec nodo [utente [parola_d'ordine]] comando
esegue un comando remoto attraverso il protocollo RSH;
lpr [coda] nodo file
invia un file alla stampante remota;
lpq -Pcoda -Snodo
interroga la coda di una stampante remota;
ftp [utente@]nodo
richiede l'instaurazione di un collegamento FTP con il nodo indicato;

ABC-nslookup

ABC-nslookup (5) consente l'interrogazione di un servizio DNS. Si tratta di un programma molto semplice che utilizza la libreria WATTCP e anche la libreria ABC, ma la seconda richiede la preparazione di altri file; in particolare, per ciò che riguarda ABC-nslookup, è necessario predisporre un file contenente l'elenco dei serventi DNS a disposizione.

Il pacchetto originale del programma, corrispondente al file nslb01a.zip, include una sottodirectory che dovrebbe essere riprodotta tale e quale nella radice del disco: \ETC\. Questa directory contiene in particolare il file RESOLV.CNF, che corrisponde in pratica al file /etc/resolv.conf dei sistemi Unix. Eventualmente, se si desidera collocare questi file in una posizione diversa, basta definire la variabile di ambiente ABCETCDIR; per esempio, si può scrivere nel file AUTOEXEC.BAT:

SET ABCETCDIR=\TCPIP

In questo caso, si intende dire che i file di tale directory si trovano invece in \TCPIP\.

È la libreria ABC che richiede la presenza di alcuni fine nella directory \ETC\, pertanto è questo il motivo del nome della variabile di ambiente.

Il pacchetto si compone di due eseguibili, che cercano il file WATTCP.CFG nella directory corrente, ignorando la variabile di ambiente WATTCP.CFG:

NSLOOKUP [nodo_da_trovare [servente_dns]]
NSQUERY [-d] nodo_da_trovare [servente_dns]

I due comandi consentono di interrogare un servente DNS per risolvere un nome in numero e viceversa, oppure per avere maggiori dettagli sulle registrazioni del DNS che riguardano il nodo cercato. Se non viene indicato il servente DNS nella riga di comando, si fa riferimento a quanto indicato nella configurazione, precisamente nel file RESOLV.CNF, che a questo proposito si compila come quello dei sistemi Unix.

MiniTelnet

MiniTelnet (6) è un piccolo programma cliente per il protocollo TELNET, basato sulla libreria WATTCP. Il programma eseguibile corrispondente è MT.EXE, che si usa così:

MT nodo [-Pporta] [-Eemulazione] [-Ktastiera]

L'emulazione del terminale viene definita con l'opzione -E, secondo la tabella:

Opzione Descrizione
-EVT52
emula un terminale di tipo VT52;
-EHeath19
emula una variante del terminale VT52;
-EVT102
emula un terminale VT102;
-EVT200
emula un terminale VT200;
-EANSI
emula un terminale ANSI;

Per quanto riguarda l'emulazione della tastiera, il pacchetto di MiniTelnet include alcuni file di esempio, con estensione .KBD. Per selezionare uno di questi file, si utilizza l'opzione -K, seguita dalla radice del nome di questi file. Per esempio, per utilizzare il file VT-AT.KBD, si deve usare l'opzione -KVT-AT.

Per accedere a un sistema GNU con MiniTelnet, attraverso un vecchio elaboratore con tastiera standard, può essere conveniente l'uso della sintassi seguente:

MT nodo -EANSI -KVT-AT

In questo modo si seleziona l'emulazione ANSI e il file VT-AT.KBD per la tastiera. Tuttavia, il servente TELNET potrebbe non essere in grado di passare l'informazione sul tipo di terminale utilizzato alla shell, pertanto conviene impostare manualmente la variabile TERM una volta iniziato il collegamento:

export TERM=linux[Invio]

L'esempio riguarda il caso di un sistema GNU/Linux, dove la voce linux per identificare il tipo di terminale sembra essere la più vicina al funzionamento ottimale.

SSHDOS

SSHDOS (7) è un cliente per il protocollo SSH nelle versioni 1.*. Si tratta di un programma che usa la libreria WATTCP, pertanto non crea problemi di configurazione. Il vero problema, semmai, riguarda la versione del protocollo, dal momento che un servente che offre solo il protocollo 2, non può comunicare con SSHDOS.

SSHDOS viene distribuito in due eseguibili differenti, a seconda della disponibilità o meno di una CPU i386. In generale, funziona sempre l'eseguibile SSHDOS.EXE, anche se è molto lento:

SSHDOS [opzioni] utente nodo [comando]

In condizioni normali, non si usano le opzioni e nemmeno il comando da eseguire nell'elaboratore remoto; in questo modo viene chiesto di inserire la parola d'ordine, dopo la quale si ottiene di interagire con la shell. Eventualmente, per ottenere l'elenco delle opzioni disponibili, è sufficiente avviare l'eseguibile senza argomenti.

Se non si specificano opzioni particolari al riguardo, SSHDOS funziona emulando il comportamento di un terminale di tipo xterm; generalmente non è necessario cambiare questa impostazione con le opzioni.

Il pacchetto con cui è distribuito SSHDOS contiene anche un programma per l'uso del protocollo TELNET:

TELNET [opzioni] nodo [porta]

Dovrebbe essere disponibile anche un pacchetto separato per il protocollo SSH 2, ma potrebbe non essere completamente efficiente nella versione per CPU x86-16.

Bobcat (Lynx)

Bobcat è una raccolta di applicativi, organizzata attorno a una versione di Lynx (8) per Dos. Le licenze dei vari applicativi inseriti sono varie; tuttavia, il pacchetto più importante è proprio Lynx, che può funzionare anche da solo, per accedere ai servizi HTTP comuni.

Bobcat è ottenibile dall'indirizzo http://www.fdisk.com/doslynx/bobcat.htm. Eventualmente si può fare una ricerca con http://www.google.com/search?q=bcat-e07.exe.

Di tutti i file che compongono il pacchetto, sono sufficienti il programma LYNX.EXE e il file LYNX.CFG. Il secondo è il file di configurazione, in cui è bene definire la collocazione di alcuni file HTML (con estensione .HTM), che vengono usati quando si richiede la guida, altre informazioni e per accumulare eventualmente lo storico degli indirizzi richiesti. Inoltre, questa edizione di Lynx utilizza la libreria WATTCP, pertanto il programma si aspetta di trovare il file di configurazione WATTCP.CFG nella directory corrente.

PPRD: servente di rete per la stampa

pericolo: software non libero software non libero: licenza Artistic

PPRD (9) è una piccola raccolta di programmi per la gestione di un servente di stampa secondo lo stile del demone lpd. Nelle situazioni in cui il sistema riesce a funzionare, permette di riutilizzare un vecchio PC, anche un XT, per questo scopo. Può essere ottenuto presso Simtel.Net all'indirizzo ftp://ftp.simtel.net/pub/simtelnet/msdos/lan/pprd200.zip.

PPRD si avvale della libreria WATTCP, pertanto può condividere la configurazione con altri programmi simili. In particolare, nel file di configurazione WATTCP.CFG si deve specificare la dimensione della memoria tampone (buffer) di trasmissione e ricezione.

TXBUFSIZE=8192
RXBUFSIZE=8192

Il programma eseguibile che svolge il lavoro è PPRD.EXE, che viene avviato normalmente senza l'indicazione di alcuna opzione, purché il file WATTCP.CFG sia stato predisposto correttamente e collocato nella directory corrente:

PPRD [opzioni]

Salvo una diversa configurazione, il programma offre la stampante (o le stampanti) con un nome corrispondente a quello usato dal Dos per identificare il dispositivo: lpt1, lpt2, ...

Nell'elaboratore con un sistema GNU dal quale si vogliono inviare le stampe occorre sistemare il file /etc/printcap in modo adeguato. Quello che segue è un esempio in cui:

  1. la stampante predefinita punta direttamente alla stampante remota, il cui nome è lpt1;

  2. la stampante ps utilizza un filtro che trasforma un documento PostScript in un file adatto alla stampante remota e poi lo ridirige alla stampante predefinita;

  3. la stampante tx utilizza un filtro che trasforma un file di testo in stile Unix in un file di testo in stile Dos e poi lo ridirige alla stampante predefinita.

#
# /etc/printcap
#
lp:\
        :lp=:\
        :sd=/var/spool/lpd/lp:\
        :rm=192.168.1.15:\
        :rp=lpt1:\
        :mx#0:\
        :sf:\
        :sh:
#
ps:\
        :lp=/dev/null:\
        :sd=/var/spool/lpd/postscript:\
        :lf=/var/spool/lpd/postscript/log:\
        :if=/var/spool/lpd/postscript/input-filter:\
        :sh:\
        :sf:\
        :mx#0:
#
tx:\
        :lp=/dev/null:\
        :sd=/var/spool/lpd/text:\
        :lf=/var/spool/lpd/text/log:\
        :if=/var/spool/lpd/text/input-filter:\
        :sh:\
        :sf:\
        :mx#0:

Segue lo script usato come filtro di input per la stampa in PostScript. Lo script riceve i dati dallo standard input e attraverso Ghostscript lo trasforma in un file adatto per la stampa su una stampante a nove aghi tipo IBM-EPSON e dirige l'output verso la stampante predefinita, cioè quella remota.(10)

#!/bin/sh
/bin/grep -v '(%%' | /usr/bin/gs -q -dNOPAUSE -sPAPERSIZE=letter \
    -sDEVICE=eps9high -sOutputFile=- - | /usr/bin/lpr

Segue lo script usato come filtro di input per la stampa dei file di testo. Lo script riceve i dati dallo standard input e attraverso il programma unix2dos lo trasforma in un file di testo in cui ogni riga è terminata dalla sequenza <CR><LF> come richiesto dalle stampanti normali. L'output viene quindi diretto verso la stampante predefinita, cioè quella remota.

#!/bin/sh
/bin/cat | /usr/bin/unix2dos | /usr/bin/lpr

Se poi unix2dos non si comporta come previsto, si può realizzare un programma Perl:

#!/usr/bin/perl
##
## filtro-crlf.pl < <file-input> > <file-output>
##
$riga = "";
while ($riga = <STDIN>)
  {
    #
    # Elimina il codice di interruzione di riga finale.
    #
    chomp ($riga);
    #
    # Emette la riga con l'aggiunta di <CR> e <LF>.
    #
    print STDOUT ("$riga\r\n");
  };

Trout

Trout (11) è una versione Dos del noto Traceroute per sistemi Unix, che utilizza la libreria WATTCP; l'eseguibile che svolge il lavoro è TROUT.EXE.

Per ottenere il pacchetto, si può fare una ricerca per i file trtb01b.zip o trt-e01.exe.

Talk

Talk (12) è una versione Dos del noto programma con lo stesso nome per i sistemi Unix. Questa versione per Dos utilizza la libreria WATTCP e l'eseguibile che svolge il lavoro è TALK.EXE. Il pacchetto può essere recuperato presso l'indirizzo http://http://users.libero.it/kht/mirror/half-mirror/dos/network/tcp.ip/wattcp/talk-13.zip.

L'eseguibile TALK.EXE si comporta simultaneamente da servente e da cliente:

TALK [opzioni] [utente@nodo [terminale]]

Se non si indica l'utente e il nodo da contattare, si avvia il programma in attesa di chiamate, a cui poi viene data risposta, qualunque sia il nominativo utente che viene richiesto. Le opzioni disponibili sono poche; in particolare, -l consente di avere una registrazione della comunicazione in un file (TALK.LOG), mentre -o consente di richiedere l'uso di un protocollo più vecchio.

Durante il funzionamento, è possibile usare il tasto [F1] per ottenere una guida rapida all'uso dei comandi da tastiera; in particolare, la combinazione [Alt s], consente di cambiare la modalità visiva della comunicazione (a schermo unico o a schermo diviso).

La configurazione con il file WATTCP.CFG prevede l'aggiunta di direttive specifiche, che comunque non sono indispensabili.

DosLynx

pericolo: software non libero software didattico, non libero

DosLynx (13) è un programma di navigazione a caratteri, ma relativamente completo, da utilizzare insieme a un driver di pacchetto per il TCP/IP (non fa uso della libreria WATTCP, pertanto ha una configurazione indipendente). Può essere ottenuto presso http://www.fdisk.com/doslynx/doslynx.htm. Per quanto possibile, questo applicativo è molto accurato, per esempio permette l'uso del mouse.

L'eseguibile è precisamente DOSLYNX.EXE che si avvia senza l'indicazione di argomenti particolari; ma prima di poter essere utilizzato occorre predisporre il file DOSLYNX.CFG.

Figura u87.21. La guida interna di DosLynx.

doslynx

DosLynx permette anche l'invio di messaggi di posta elettronica, ma non la loro ricezione o lettura.

La configurazione di DosLynx avviene attraverso il file DOSLYNX.CFG, collocato nella directory corrente nel momento in cui si avvia il programma. In questo file, per prima cosa deve essere definito l'indirizzo IP e la maschera di rete (netmask).

my_ip=192.168.1.15
netmask=255.255.255.0

Quindi occorre indicare l'indirizzo del router (gateway) e del servente DNS anche se in realtà possono non esistere nella rete locale che si utilizza.

gateway=192.168.1.1
nameserver=192.168.1.1

Viene specificato quindi il dominio e il nome dell'elaboratore locale.

domainslist="brot.dg"
hostname=dos

Per il resto, questo file di configurazione viene già fornito con un esempio molto ben commentato. Vale comunque la pena di indicare:

networked=YES
mailaddr=daniele@dinkel.brot.dg
smtphost=192.168.1.1
nntphost=192.168.1.1

NCSA Telnet

NCSA Telnet (14) è una piccola raccolta di programmi da utilizzare insieme a un driver di pacchetto per il TCP/IP (si tratta di programmi autonomi dalla libreria WATTCP). Può essere ottenuta presso Simtel.Net all'indirizzo ftp://ftp.simtel.net/pub/simtelnet/msdos/ncsatlnt/.

Nelle sezioni seguenti vengono descritti solo alcuni dei programmi di questa raccolta. Prima di poterli utilizzare occorre predisporre il file CONFIG.TEL.

L'ultima versione di questa raccolta dovrebbe essere la 2.3.08 che però sembra avere qualche problema, in particolare non può essere utilizzata quando si abilita il Path MTU discovery durante la compilazione del kernel Linux. La versione 2.3.07.4 (precedente) dovrebbe essere esente da questo difetto. Inoltre, alcune versioni precedenti alla 2.3.08, compresa la 2.3.07.4, contengono più programmi di servizio accessori, come un programma per il ping e uno per il tracciamento dell'instradamento. Per trovare la versione 2.3.07.4 si può provare con: http://www.google.com/search?q=tel23074.zip.

File «CONFIG.TEL»

CONFIG.TEL è un file di testo contenente l'indicazione della configurazione del gruppetto di programmi che compongono il pacchetto Telnet NCSA. Per prima cosa deve essere definito l'indirizzo IP e la maschera di rete (netmask).

myip=192.168.1.15
netmask=255.255.255.0

Quindi occorre definire le caratteristiche del driver di pacchetto utilizzato, che a loro volta dipendono dal tipo di scheda di rete. L'esempio seguente riguarda il caso del driver di pacchetto Crynwr per la scheda NE2000 (NE2000.COM 0x7e 0x0b 0x300). Occorre fare attenzione alla voce ioaddr= che non si riferisce a un indirizzo di I/O, ma all'IRQ software del driver di pacchetto.

hardware=packet
interrupt=11
ioaddr=0x7e

Segue una serie di altre informazioni, in particolare sono interessanti le seguenti.

myname=dos.brot.dg
termtype="vt100"
keyfile=".\keymap.tel"
services=".\services.tel"
ftp=yes
ftpwrt=yes
passfile=".\password.tel"

Quindi vengono richieste le informazioni sui nodi che possono essere contattati. Vengono inizialmente indicate delle caratteristiche generali predefinite, quindi i dati particolari di nodi determinati.

name=default
# Segue una serie di caratteristiche predefinite
# ...
# Inizia la definizione dell'elaboratore «dinkel.brot.dg»
name=dinkel.brot.dg
hostip=192.168.1.1
gateway=0       # Non è un router
nameserver=1    # È un Name Server
# Inizia la definizione dell'alias «dinkel»
name=dinkel
copyfrom=dinkel.brot.dg

File «KEYFILE.TEL»

All'interno del file CONFIG.TEL, con la voce keyfile=, viene dichiarato il nome e la collocazione di un file di configurazione della tastiera. Lo scopo di questo file è definire una corrispondenza tra tasti premuti e segnali inviati. Telnet NCSA fornisce già questo file e ha il nome KEYFILE.TEL.

Per poter conoscere i codici a cui corrispondono i tasti della propria tastiera, si può utilizzare il programma SCANCHEK.EXE.

In generale, non conviene modificare il file originale, piuttosto, è meglio tentare diversi tipi di configurazione di terminale assegnando un valore opportuno alla variabile di ambiente TERM di GNU/Linux o alla voce termtype= del file CONFIG.TEL. si possono provare, in particolare, i valori vt100 e vt220.

File «PASSWORD.TEL»

Il programma TELBIN.EXE può funzionare anche come un semplice servente FTP per accessi singoli.(15)

Per questo, è necessario definire un file contenente informazioni sugli utenti e sui loro permessi di accesso. Il nome e la posizione di questo file viene definito all'interno di CONFIG.TEL, con la voce passfile= e di solito si tratta di PASSWORD.TEL.

Per crearlo o modificarlo, conviene utilizzare il programma TELPASS.EXE, per esempio nel modo seguente. Il programma stesso suggerisce le operazioni da compiere.

C:\NCSATELN> telpass password.tel[Invio]

File «SERVICES.TEL»

SERVICES.TEL è il file dei servizi di rete ed è analogo al file /etc/services (32.8.2). Viene già fornito configurato correttamente.

File «TELBIN.EXE»

TELBIN [nodo]

Il programma TELBIN.EXE è il più importante di questo gruppo, essendo quello che permette di attivare una connessione TELNET con un elaboratore GNU/Linux o un altro Unix. Se il programma non riesce a connettersi con l'elaboratore indicato come argomento, o se questo non viene indicato, si avvia come servente FTP e accetta una sola connessione alla volta.

Quando si vuole utilizzare TELBIN.EXE come servente FTP occorre predisporre il file degli utenti, che solitamente è PASSWORD.TEL.

File «FTPBIN.EXE»

FTPBIN [nodo]

FTPBIN.EXE è il secondo programma come importanza. Si tratta di un semplice cliente FTP abbastanza funzionante. I comandi che mette a disposizione sono i soliti per questo tipo di programma; per ottenere aiuto si può utilizzare il punto interrogativo (?).

File «FINGER.EXE»

FINGER [utente]@nodo

Il programma FINGER.EXE permette di ottenere informazioni sugli utenti connessi in un elaboratore determinato. Il risultato di questa interrogazione è analogo a quello del suo omonimo negli ambienti Unix.

POPMail

POPMail (16) è un ottimo programma per la gestione della posta elettronica attraverso la connessione con un servizio POP2 o POP3. Può essere ottenuto presso Simtel.Net all'indirizzo ftp://ftp.simtel.net/pub/simtelnet/msdos/pktdrvr/popml322.zip.

La configurazione viene fatta attraverso il programma stesso e non richiede la preparazione di alcun file.

Figura u87.30. La composizione di un messaggio di posta elettronica attraverso POPMail.

dospopmail-composizione

POPMail si compone di un solo eseguibile monolitico: POPMAIL.EXE. Tutte le sue funzionalità sono incorporate in questo, compresa la configurazione. Appena si avvia il programma si ottiene un'interfaccia amichevole che permette l'uso del mouse.

Menù «Setup»

La configurazione del programma si definisce attraverso le funzioni del menù {Setup}. In particolare è importante la voce {Network}, attraverso cui si accede a una maschera per la definizione degli indirizzi e dei nomi utilizzati. In questa fase, è importante stabilire il tipo di protocollo che si intende utilizzare. Questo lo si fa attraverso l'indicazione della porta di comunicazione. Quella predefinita è 109 corrispondente a POP2, altrimenti si può utilizzare la porta 110 in modo da collegarsi a un servizio POP3.

Figura u87.31. La finestra principale della configurazione di POPMail. Si può osservare che il nodo da specificare alla voce {Host Computer} è quello che fornisce il servizio SMTP, mentre subito sotto è richiesto l'indirizzo dell'elaboratore locale.

dospopmail-configurazione

Figura u87.32. Selezionando il pulsante <Advanced> dalla finestra principale di configurazione, si ottiene questa finestra di informazioni aggiuntive. La selezione del tipo di protocollo dipende dal numero di porta selezionato. In questo caso, essendo il numero 110, si utilizza il protocollo POP3.

dospopmail-conf-avanzata

Menù «Window»

Una volta definita la configurazione, si può iniziare a utilizzare il programma per ricevere e spedire posta. Esistono tre finestre: una per la composizione dei messaggi, un'altra per la loro lettura e l'ultima per le operazioni di «taglia-copia-incolla». Per passare da una finestra all'altra, occorre richiamare questo menù.

Menù «=»

Il menù dell'applicazione, quello precedente a {File}, permette di accedere a funzionalità aggiuntive e molto utili. Si può utilizzare una sessione TELNET in una finestra, si può ottenere la risoluzione di indirizzi IP e si può eseguire il ping.

Figura u87.33. Una sessione TELNET attraverso POPMail.

dospopmail-telnet

Figura u87.34. La presenza di una funzione di ping completa l'applicativo POPMail.

dospopmail-ping

PCroute

PCroute permette di trasformare un vecchio PC (i286 o inferiore) in un router IPv4. Può essere ottenuto presso Simtel.Net all'indirizzo ftp://ftp.simtel.net/pub/simtelnet/msdos/network/pcrte224.zip.

Nell'archivio che viene distribuito, è presente il sorgente e diverse versioni compilate, per l'uso delle schede di rete più comuni nel passato. Tra queste versioni già pronte ne esiste una in grado di utilizzare i driver di pacchetto descritti all'inizio di questo capitolo. Gli esempi che vengono mostrati qui si riferiscono all'utilizzo dei driver di pacchetto.

Configurazione dei driver di pacchetto

Se si decide di utilizzare la versione già compilata per i driver di pacchetto, cioè PKTPKT.EXE, è necessario prima configurare i driver di pacchetto, poi si può pensare alla configurazione di PCroute.

La versione precompilata, PKTPKT.EXE, prevede l'utilizzo di due indirizzi di interruzione (interrupt) software per comunicare con i driver di pacchetto, 6016 e 6116, dove il primo si riferisce alla prima interfaccia e l'altro alla seconda.

Supponendo di disporre di schede di rete compatibili NE2000, che utilizzino rispettivamente le risorse IRQ 10 e I/O 28016, IRQ 11 e I/O 30016, la configurazione dei driver di pacchetto dovrebbe essere la seguente:

ne2000 0x60 0x0a 0x280
ne2000 0x61 0x0b 0x300

Configurazione di PCroute

Per fare funzionare PCroute è necessario l'eseguibile PCROUTE.EXE; nel caso di utilizzo dei driver di pacchetto, si tratta di PKTPKT.EXE. Inoltre serve anche CONFIG.EXE, per generare il file di configurazione di PCroute.

Si suppone che la prima scheda sia inserita nella rete 192.168.1.0 e che abbia l'indirizzo 192.168.1.254; inoltre si suppone che la seconda sia nella rete 192.168.2.0 con l'indirizzo 192.168.2.254. Non si prevede la necessità di indicare altri instradamenti per mezzo di altri router.

C:\PCROUTE> CONFIG[Invio]

This program creates/edits the pcroute.cfg file

Inizia una configurazione interattiva, a cominciare dalle indicazioni riferite alla prima interfaccia, cioè quella collegata al driver di pacchetto attraverso l'indirizzo IRQ 6016.

Configuring an interface

Address for the interface [0.0.0.0] ? 192.168.1.254[Invio]

Subnet mask for the interface [255.255.255.0] ? 255.255.255.0[Invio]

Flag Meanings (if set)
    Bit 0 (1h)  - Don't send routing updates out this interface
    Bit 1 (2h)  - Don't listen to routing updates from this interface
    Bit 2 (4h)  - Proxy Arp for all subnets
    Bit 3 (8h)  - Turn off directed broadcasts
    Bit 4 (10h) - Turn off the issuing of ICMP redirects
    Bit 5 (20h) - Broadcast using old (0's) format

Flags (HEX) for the interface [0H] ? 0H[Invio]

Routing Metric (HEX) for the interface [1H] ? 1H[Invio]

A questo punto si passa alla configurazione della seconda interfaccia, cioè quella collegata al driver di pacchetto attraverso l'indirizzo IRQ 6116.

Configuring an interface

Address for the interface [0.0.0.0] ? 192.168.2.254[Invio]

Subnet mask for the interface [255.255.255.0] ? 255.255.255.0[Invio]

Flag Meanings (if set)
    Bit 0 (1h)  - Don't send routing updates out this interface
    Bit 1 (2h)  - Don't listen to routing updates from this interface
    Bit 2 (4h)  - Proxy Arp for all subnets
    Bit 3 (8h)  - Turn off directed broadcasts
    Bit 4 (10h) - Turn off the issuing of ICMP redirects
    Bit 5 (20h) - Broadcast using old (0's) format

Flags (HEX) for the interface [0H] ? 0H[Invio]

Routing Metric (HEX) for the interface [1H] ? 1H[Invio]

Gli instradamenti sulle reti cui sono connesse le interfacce vengono definiti in modo automatico. Si decide di non indicare altri instradamenti particolari.

If you wish to configure static routes do so here.  To stop type a '.'

  Flag Meanings (if set)
      Bit 0 (1h)  - Local route, do not propagate it
      Bit 1 (2h)  - Transient route, subject to RIP protocol

Network [0.0.0.0] ? .[Invio]

Da questo punto non si seleziona alcuna opzione particolare.

If you wish to forward bootp packets please enter the address
  of the address to forward it to.  This address can be a
  directed broadcast.  0.0.0.0  means don't forward

Address to forward bootp packets [0.0.0.0] ? 0.0.0.0[Invio]

Once PCroute boots up, it sends all log messages to a network
  host running a BSD UNIX syslogd daemon.  To disable
  logging enter 0.0.0.0

Host to send loging info to [0.0.0.0] ? 0.0.0.0[Invio]

Mask Meanings (0 = Log, 1 = Don't log)
    Bit 0 (1h)  - System
    Bit 1 (2h)  - Routing
    Bit 2 (4h)  - Monitor
    Bit 3 (8h)  - Localtalk

Logging mask for this router [0H] ? 0H[Invio]

There are 8 routing 'levels' supported
    0 - Emergency    1 - Alert    2 - Critical    3 - Error
    4 - Warning      5 - Notice   6 - info        7 - Debug
Only messages with a level less than the logging level are sent

Logging level [0H] ? 0H[Invio]

A questo punto la configurazione termina e ne viene generato il file PCROUTE.CFG.

Conclusione

PCroute, per funzionare richiede solo l'avvio dell'eseguibile (PCROUTE.EXE), che ha la necessità di trovare il file PCROUTE.CFG nella directory corrente. Dopo l'avvio, l'elaboratore risulta bloccato, essendo destinato esclusivamente alla funzione di instradamento.

La documentazione di PCroute spiega meglio come gestire le varie opzioni, che nell'esempio sono state evitate semplicemente, descrivendo anche come sfruttare la possibilità di tenere sotto controllo il funzionamento di PCroute attraverso il registro di sistema di un elaboratore come GNU/Linux.

Riferimenti


1) Crynwr packet driver collection   GNU GPL

2) WATTCP   software non libero: non è consentita la distribuzione di versioni modificate e non è consentita la commercializzazione

3) Per indicare più serventi DNS, è sufficiente usare la direttiva NAMESERVER ripetutamente.

4) WATTCP apps   software non libero: non può essere commercializzato

5) ABC-nslookup   UCB BSD

6) MiniTelnet   software libero con licenza speciale

7) SSHDOS   GNU GPL

8) Lynx   GNU GPL

9) PPRD   software non libero: licenza Artistic

10) Si suppone di usare carta a modulo continuo, pertanto viene indicato il formato lettera (11 in).

11) Trout   software gratuito senza sorgenti

12) Talk   GNU GPL

13) DosLynx   software didattico, non libero

14) NCSA Telnet   dominio pubblico

15) Non è il caso di fare affidamento su questa funzionalità di TELBIN.EXE perché non è perfettamente funzionante.

16) POPMail   software gratuito non modificabile e senza sorgenti

«a2» 2013.11.11 --- Copyright © Daniele Giacomini -- appunti2@gmail.com http://informaticalibera.net