Networking using DOSBox IPX

From DOSBoxWiki
Revision as of 06:05, 27 June 2016 by Naszvadi (talk | contribs) (Networking using DOSBox IPX - tunneling over IPX over UDP)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigationJump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

DOSBox has builtin support for IPX networking. This howto contains tricks about using IPX networks as TCP/IP tunnels between two or more DOSBox processes. Current document contains an example configuration with two DOSBox VMs - you can chat between them after a succesful deployment.

Prerequisities

Install software

Install dosbox, if it is not installed yet.

Creating working directories

mkdir -p ~/ipxtunnel/server
mkdir -p ~/ipxtunnel/client

Creating server.cnf

In folder server, create server.conf with content:

#!/bin/sh
[gus]
ultradir=C:\  cd "$(dirname "$0")"; dosbox -conf "$(basename "$0")" ; exit $? ; : <<rem
gus=false
[ipx]
ipx=true
[autoexec]
mount c .
c:
ipxnet startserver 33213
set mtcpcfg=c:\mtcp.cfg
echo packetint 0x60>c:\mtcp.cfg
echo hostname cli2>>c:\mtcp.cfg
echo IPADDR 192.168.8.2>>c:\mtcp.cfg
echo NETMASK 255.255.255.0>>c:\mtcp.cfg
ipxnet connect 127.0.0.1 33213
ipxnet status
ipxnet ping
ipxpkt 0x60
nc -echo -listen 22222
ipxpkt -u
ipxnet disconnect
ipxnet stopserver
exit
rem

Set executable rights on it:

chmod +x server.cnf

Creating client.cnf

In folder client, create client.conf with content:

#!/bin/sh
[gus]
ultradir=C:\  cd "$(dirname "$0")"; sleep 5; dosbox -conf "$(basename "$0")" ; exit $? ; : <<rem
gus=false
[ipx]
ipx=true
[autoexec]
mount c .
c:
set mtcpcfg=c:\mtcp.cfg
echo packetint 0x60>c:\mtcp.cfg
echo hostname cli1>>c:\mtcp.cfg
echo IPADDR 192.168.8.1>>c:\mtcp.cfg
echo NETMASK 255.255.255.0>>c:\mtcp.cfg
ipxnet connect 127.0.0.1 33213
ipxnet status
ipxnet ping
ipxpkt 0x60
nc -echo -target 192.168.8.2 22222
ipxpkt -u
ipxnet disconnect
exit
rem

Set executable rights on it:

chmod +x client.cnf

Getting files

  • From crynwr's pktd11.zip, get IPXPKT.COM and copy it to both server/ and client/ folders
  • From mTCP's mTCP_2013-05-23.zip, get NC.EXE and copy it to both server/ and client/ folders

Launching server and client

Change to the common parent folder of server/ and client/ directory. This is ~/ipxtunnel/ in our example. Then run both client and server simultaneously from the same terminal:

server/server.cnf & client/client.cnf &

Wait some seconds until Connected text appears in one window. After that, you can chat between the two windows!

External links