FreeDOS Networking
Introduzione
Installare DOS per rispolverare vecchi videogame è un'operazione abbastanza semplice, riuscire a configurare una scheda di rete per poterlo collegare ad Internet non è altrettanto immediato.
Nella seguente guida si farà riferimento a FreeDOS, un sistema operativo opensource 100% compatibile con MS-DOS. Ogni programma in grado di girare su MS-DOS potrà essere eseguito anche da FreeDOS (incluso Windows 3.x!). Per quanto riguarda l'hardware è stata utilizzata la macchina virtuale VirtualBox.
Networking
Esistono almeno 3 modi per collegare un sistema DOS ad Intenet:
- Applicazioni TCP/IP: basate sui Packet driver, permettono di configurare servizi come ftp, http, telnet, ssh o NFS in stile "UNIX-like".
- Microsoft / SMB workgroup: utilizza driver NDIS, permette di integrare un PC DOS ad una rete di macchine Windows (SAMBA).
- Novell NetWare: utilizza driver ODI ed il protocollo TCP-IP, sviluppato per collegare fra loro macchine DOS e NetWare.
UNIX-like
Di default VirtualBox è configurata per utilizzare la scheda di rete AMD PCnet Fast III (Am79C973), il suo Packet Driver (PD) è reperibile a questo indirizzo: PCnetFast. Una lista completa di packet driver è reperibile a questo indirizzo.
Scaricate il driver, scompattatelo ed eseguitelo. Affinché sia caricato in automatico ad ogni riavvio del PC è possibile aggiungere la seguente riga all'AUTOEXEC.BAT
LH PCNTPK INT=0x60
Configurazione
Scaricate e scompattate mTCP
mTCP utilizza un file di configurazione per assegnare un IP alla macchina, tale file andrà poi esportato come variabile.
set MTCPCFG=C:\MTCP\ETH.CFG
Nel mio caso il file era eth.cfg e si trovava nella directory c:\mtcp\.
Anche questo comando può essere aggiunto all'AUTOEXEC.BAT
Un esempio di file di configurazione:
--- ETH.CFG --- PACKETINT 0x60 IPADDR 192.168.1.50 NETMASK 255.255.255.0 GATEWAY 192.168.1.1 NAMESERVER 192.168.1.1 MTU 1500
Se avete un server DHCP sulla vostra rete e non volete usare un IP statico è possibile usare una configurazione di questo tipo:
--- ETH.CFG --- PACKETINT 0x60 HOSTNAME lucados
dopodiché eseguire C:\MTCP\DHCP.EXE
mTCP fornisce anche le seguenti applicazioni:
- dhcp.exe -- DHCP client
- dnstest.exe -- DNS resolver
- ftp.exe -- FTP client
- ftpsrv.exe -- FTP server
- htget -- program for downloading files/content from web (HTTP) servers
- httpserv -- HTTP server supporting HTTP 0.9, 1.0, 1.1
- ircjr.exe -- IRC client and
- nc.exe -- Netcat utility
- ping.exe -- Ping utility
- pkttool -- packet sniffer and diagnostic tool for packet drivers
- telnet.exe -- Telnet client
- sntp.exe -- NTP (Network Time Protocol) client
Microsoft SMB
Nonostante la cosa più semplice per condividere file tra DOS e Windows sia utilizzare ftp (magari con l'mTCP), in rete si trovano numerose guide che trattano la condivisione attraverso i tool ufficiali di Microsoft.
NB: il TCP/IP del Network Client 3.0 richiede 230 KByte dei famosi 640K di memoria convenzionale DOS, attivandolo è molto probabile veder crashare il proprio sistema nel giro di poche decine di minuti. SMB (a differenza del TCP/IP) è un protocollo che negli anni ha subito aggiornamenti e modifiche, in pratica esistono molti "dialetti" di che non è detto siano sempre completamente intellegibili.
Prerequisiti
- MS Client 3.0 (1995) (3 file autoestraenti DSK3-1.EXE, DSK3-2.EXE, WG1049.EXE)
- AMD NDIS2 NIC driver PCnetFAST
- Opzionalmente: i seguenti aggiornamenti NETSHAR.EXE,
Installazione
Create una directory per eseguirvi i file DSK3-1.EXE e DSK3-2.EXE, una volta scompattati lanciate il setup.exe. Copiate in una directory temporanea anche il file WG1049.EXE, eseguitelo e spostatene il contenuto in C:\NET (precedentemente creata dal setup.exe del DSK3), si tratta di un aggiornamento. Spostate in C:\NET anche il file NETSHAR.EXE in C:\NET.
Configurazione
https://www.virtualbox.org/wiki/Sharing_files_with_DOS
FreeDOS utilizza il file configurazione FDCONFIG.SYS invece del CONFIG.SYS dell'MS DOS, per cui dovremo inserirci manualmente la seguente riga
DEVICEHIGH=C:\NET\IFSHLP.SYS
Novell "NetWare DOS Client" and "TCP/IP Client"
http://freedos.sourceforge.net/wiki/index.php/Networking_FreeDOS_complete#ODI_drivers
Bibliografia
http://freedos.sourceforge.net/wiki/index.php/Networking_FreeDOS_complete
http://wiki.freedos.org/wiki/index.php/VirtualBox_-_Chapter_6
http://www.georgpotthast.de/sioux/packet.htm
https://www.virtualbox.org/wiki/Sharing_files_with_DOS
http://freedos.sourceforge.net/wiki/index.php/Networking_FreeDOS_-_mTCP