Installing network drivers and Kali on MS-DOS
Network drivers
Unsurprisingly, Kali needs to be able to talk to the network adapter in DOS. This is done by using appropriate network drivers for your hardware. The example configurations included on the Kali Kit CD will work with a Novell NE1000 network adapter, but there are drivers included for many, many others (both ISA and PCI). See An introduction to MS-DOS network drivers if you’re not familiar with how network drivers work in DOS.
Do you have a Novell NE1000 network adapter? Congratulations, you
don’t need to do any configuration! Run INSTALL.BAT
from
the root directory of the CD, and everything should work out of the box.
All you need to do is set the IP network you want to use in Kali’s
WATTCP.CFG
file (and optionally mTCP if you want to use the
TCP/IP tools there). You can then add NETSTART.BAT
to your
AUTOEXEC.BAT
.
Not using a Novell NE1000? Don’t worry, you can still use
INSTALL.BAT
! Just follow the instructions below to use the
appropriate driver for your hardware. You can then configure
WATTCP.CFG
and add NETSTART.BAT
to your
AUTOEXEC.BAT
.
Packet driver or ODI?
Both PD and ODI drivers are included on the Kali Kit CD. If you’re not sure which you want, I would recommend going with PD, as the memory footprint is smaller and they can be loaded high.
PD and the older version of the IPX shim (PDIPX.COM
)
don’t work well with old games or SPX. Use the newer version
(IPXPD.COM
) and everything should work. If you have issues
with PD, try ODI instead.
Both PD and ODI can use Ethernet II (EtherType in header) or the less
common 802.3 (length in header) frames. By default, the
NETSTART.BAT
script for PD and NET.CFG
for ODI
use Ethernet II, but if you want to talk to devices that speak 802.3,
this can be changed. Examples are provided in these files to change
this. For more info on the history of different Ethernet frame types,
see this
excellent article about them.
Packet driver
Packets drivers can be found in the DRIVERS\PKTDRVRS
directory. If you want to use packet driver based network drivers:
- Copy the
DRIVERS\PKTDRVRS
directory andDRIVERS\NETSTART.BAT
file to your hard drive. - Locate the appropriate packet driver for your network adapteri in
PKTDRVRS
. - Replace the line that runs
NE1000.COM
inNETSTART.BAT
with the packet driver for your network adapter. Remember to set the hardware IRQ and base memory address to those used by your adapter. - Add
NETSTART.BAT
to yourAUTOEXEC.BAT
file.
Kali will autodetect the software IRQ that the packet driver is listening at.
If you want to use mTCP’s TCP/IP tools, you will need to set the
packet driver’s software interrupt in the MTCP.CFG
file.
ODI
A few common ODI data-link drivers are included on the Kali Kit CD. If you can’t find a driver for a network adapter you want to use here, many more are available on the Novell Netware 4.11 Operating System CD.
If you want to use ODI based network drivers:
- Copy the
DRIVERS\ODI
directory andDRIVERS\NETSTART.BAT
file to your hard drive. - Locate the appropriate ODI MLID for your network adapter in
ODI\NOVELL
, or copy one from the NetWare CD. - Comment out the packet driver section in
NETSTART.BAT
and uncomment the ODI section. - Replace the line that runs
NOVELL\NE1000.COM
inNETSTART.BAT
with the MLID for your network adapter. - Add
NETSTART.BAT
to yourAUTOEXEC.BAT
file.
Kali will autodetect the software IRQ that ODIPKT is listening at.
If you want to use mTCP’s TCP/IP tools, you will need to set ODIPKT’s
software interrupt (0x69) in the MTCP.CFG
file.
NET.CFG configuration
NET.CFG configures how ODI is run, including protocols used, hardware parameters, etc. The supplied NET.CFG should work with most network adapters, but if you want to modify this see the documentation on the Novell Netware 4.11 Online Documentation CD.
Kali
Finally, we’re here! There are two versions of Kali for DOS available on the Kali Kit CD:
- v1.4a – this was the final version of Kali released for DOS. Use this if you have a valid Kali for DOS license key.
- v1.2 – this is a slightly older version that has a license crack by DiNK! applied. Use this version if you don’t have a valid license key for Kali for DOS.
Kali v1.2 has a few bugs that were fixed in v1.4a. These are generally minor, and in my testing I never encountered any issues. You can use v1.4a without a license key, but your session will be limited to 20 minutes.
Kali II license keys are available for free on Kali.net, but they will not work on Kali for DOS.
License keys for Kali for DOS do exist online, but Kali detects if a license key is being used by more than one user connected to a server, and will not connect if this is so.
The INSTALL.BAT
script will ask you which version of
Kali you want to install, and will copy it to C:\KALI
.
Kali configuration
The final step is configuring Kali. There are two files you need to
modify: KALI.CFG
and WATTCP.CFG
. See comments
in these files for more info.
Kali does not include a DHCP client. IP setup must be done statically
in WATTCP.CFG
.
Make sure ppp = 1
is not set in
WATTCP.CFG
. Kali will not try to use network drivers at all
if it is!
You should now be all done! Start or connect to a Kali server and play!
Installing Kali II on Windows
Kali II will only work on Windows 95 or above. It does not support Windows 3.1.
Installing Kali II in Windows is simple. For Windows 95, first make
sure that the TCP/IP protocol is installed in Control Panel
-> Network
. If not, add it. Then run the
kali2613.exe
installer program, which can be found in
KALI\Windows
on the Kali
Kit CD.
Additional Tools
mTCP
mTCP is not required to run Kali! It’s only included for connectivity testing and debugging.
mTCP’s TCP/IP configuration is completely separate from Kali’s. You can even run it on a different IP or subnet if you want!
The TOOLS\MTCP
directory contains a collection of tools
that use the mTCP TCP/IP
library. Among these are implementations of common network tools such as
ping
, nc
, and telnet
. There’s
also a tool (PKTTOOL.EXE
) that will display info about any
packet drivers present in memory, as well as their packet
statistics.
To install mTCP tools:
- Copy the
TOOLS\MTCP
directory to your hard drive. - Edit the
MTCP.CFG
file with your IP network and packet driver IRQ settings. - Add the line
SET MTCPCFG=C:\MTCP\MTCP.CFG
to yourAUTOEXEC.BAT
. If necessary, modify the mTCP directory to where you installed it.
If you’re using ODI, you will need to use the ODIPKT shim to expose a
packet driver interface. This shim listens at software interrupt 0x69,
which can’t be changed. Modify MTCP.CFG
to use this
interrupt to use mTCP with ODI. An example is given in
MTCP_ODI.CFG
.
If you’re using an emulator, and the host machine uses a WiFi adapter to connect to the internet, you will not be able to use your network’s DHCP server. This is because WiFi commonly uses 3-address mode, which can’t be bridged to a regular ethernet interface. If your WiFI adapter and your base station are set up to use 4-address mode, bridging will work – otherwise your best option is to either use a static IP configuration for mTCP, or set up a DHCP on the host machine for a separate subnet that uses NAT for DOS guests. More information can be found in Networking using 86Box and VDE in Linux.