Difference between revisions of "Networking using DOSBox IPX"
(Networking using DOSBox IPX - tunneling over IPX over UDP) |
|||
Line 1: | Line 1: | ||
− | 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 | + | 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 successful deployment. |
== Prerequisities == | == Prerequisities == | ||
+ | |||
+ | === Host OS === | ||
+ | |||
+ | Supposed to be *NIX-ish. Corollary that if dosbox processes are executed as non-root, then you should select an UDP port number over 1023 for tunneling IPX over UDP - in our example: 33213 | ||
=== Install software === | === Install software === | ||
Line 90: | Line 94: | ||
Wait some seconds until '''Connected''' text appears in one window. After that, you can chat between the two windows! | Wait some seconds until '''Connected''' text appears in one window. After that, you can chat between the two windows! | ||
+ | |||
+ | '''Under non-*NIX host''': please execute from different terminals/shells/windows/whatever! | ||
+ | |||
+ | === Screenshot from netcat (nc.exe) server === | ||
+ | |||
+ | [[File:Dosbox_ipxtunnel_tcp_server.gif|DOSBox ipxtunnel tcp server]] | ||
+ | |||
+ | === Screenshot from netcat (nc.exe) client === | ||
+ | |||
+ | [[File:Dosbox_ipxtunnel_tcp_client.gif|DOSBox ipxtunnel tcp client]] | ||
== External links == | == External links == |
Latest revision as of 23:54, 27 June 2016
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 successful deployment.
Prerequisities
Host OS
Supposed to be *NIX-ish. Corollary that if dosbox processes are executed as non-root, then you should select an UDP port number over 1023 for tunneling IPX over UDP - in our example: 33213
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!
Under non-*NIX host: please execute from different terminals/shells/windows/whatever!