If you attended a LAN party in the mid-1990s, you didn’t spend your time configuring subnet masks, gateways, or DNS servers. You loaded a packet driver, bound the IPX protocol, and immediately started fragging your friends in DOOM.
Developed by Novell for NetWare, IPX/SPX was the undisputed king of local area network (LAN) gaming before TCP/IP took over. Today, getting vintage hardware and modern emulators (like DOSBox) to speak IPX over modern TCP/IP networks requires tunneling. This guide covers how the IPX protocol works, how to configure it natively on vintage OSs, and how to use IPXBox to bridge the gap.
1. Understanding the IPX/SPX Protocol
IPX (Internetwork Packet Exchange) and SPX (Sequenced Packet Exchange) were designed for speed, simplicity, and zero-configuration local routing.
How It Works
- Connectionless & Broadcast-Heavy: IPX is a connectionless protocol (similar to UDP). It relies heavily on LAN broadcasts to announce services and find other nodes.
- Zero Configuration (MAC-based Addressing): Unlike TCP/IP, where you must manually assign IP addresses or run a DHCP server, an IPX network address is automatically derived from the network adapter’s physical MAC address combined with a 32-bit network number. When you plug in an IPX machine, it instantly knows its own address.
- Frame Types: The biggest headache in IPX networking is the Ethernet frame type. IPX can be encapsulated in four different ways on Ethernet:
802.3 (Raw), 802.2, Ethernet II, and SNAP. For two machines to communicate, they must be using the same frame type. (The 90s gaming standard was usually 802.3).
2. What is IPXBox?
IPXBox is a standalone, lightweight server daemon that implements the DOSBox IPX-over-UDP tunneling protocol.
Normally, if you want two DOSBox clients to play an IPX game over the internet, one player types ipxnet startserver and the other types ipxnet connect <ip>. However, if the host quits the game, the server dies. IPXBox runs as a dedicated, persistent server on a Linux host (like your homelab server), allowing DOSBox clients, modern IPX wrappers, and bridged vintage hardware to connect to a central 24/7 hub.
3. Setting Up and Securing IPXBox
Installation
You can compile IPXBox from source on any standard Linux distribution:
# Install build dependencies
sudo apt update
sudo apt install build-essential git
# Clone the IPXBox repository
git clone https://github.com/fragglet/ipxbox.git
cd ipxbox
# Compile
make
# Run the server on the default DOSBox UDP port (213)
./ipxbox -p 213
Security and Hardening Tips
IPX relies on trusting every packet it receives. It has zero built-in security, authentication, or encryption.
- Never Expose Port 213 to the Public Internet: Do not port-forward UDP 213 on your router. A malicious actor can flood the server or easily spoof packets.
- Use a VPN for Remote Friends: If you want to play with friends across the internet, run a VPN like WireGuard, ZeroTier, or Tailscale on your server. Bind IPXBox only to the VPN’s internal interface.
- Firewall the Daemon: Use
ufw or iptables to strictly limit which local subnets can reach the IPXBox server.
# Example: Allow only local LAN and WireGuard VPN traffic to hit IPXBox
sudo ufw allow from 192.168.1.0/24 to any port 213 proto udp
sudo ufw allow from 10.0.0.0/24 to any port 213 proto udp
4. Bridging Real Vintage Hardware to IPXBox
IPXBox speaks “IPX-over-UDP”, which DOSBox understands natively. But a physical retro PC running MS-DOS or Windows 98 outputs raw Ethernet IPX frames out of its physical NIC.
To get physical hardware to talk to IPXBox, you need a software bridge on your modern network (often a Raspberry Pi or Linux VM on the same physical switch as the retro PCs). You can use tools like kali (Kali/Kahn) or the Linux kernel’s native ipx module alongside a tunneling daemon like ipxtun to capture raw IPX frames from the switch and encapsulate them into UDP packets pointing at your IPXBox server.
(Alternatively, for Windows 9x/XP machines, you can install modern software wrappers like IPXWrapper, which intercepts IPX calls at the Windows socket level and wraps them in UDP, skipping the need for a physical network bridge entirely).
5. Configuring IPX on Vintage Operating Systems
If you are using real vintage hardware on a physical LAN, here is how to load the protocol stack.
MS-DOS / Windows for Workgroups 3.11
In DOS, IPX requires Novell’s ODI (Open Data-Link Interface) drivers or a packet driver wrapper.
- Load the Link Support Layer:
LSL.COM
- Load your network card’s specific ODI driver (e.g.,
NE2000.COM or 3C509.COM).
- Load the IPX protocol stack:
IPXODI.COM
Note: Make sure your NET.CFG file specifies Frame Ethernet_802.3 to ensure game compatibility.
Windows 95 and Windows 98
Windows 9x includes native IPX support out of the box, making it beautifully simple.
- Go to Start > Settings > Control Panel > Network.
- Click Add…, select Protocol, then Microsoft, and choose IPX/SPX-compatible Protocol.
- Select the newly added protocol in the list and click Properties.
- Go to the Advanced tab. Under “Frame Type,” change it from Auto to Ethernet 802.3 (Auto-detection in Win9x is notorious for failing and causing missing lobbies).
- Reboot the computer.
Windows XP
Microsoft deprecated IPX, but kept it available in XP for legacy enterprise migrations.
- Go to Control Panel > Network Connections.
- Right-click your Local Area Connection and select Properties.
- Click Install… > Protocol > Add…
- Select NWLink IPX/SPX/NetBIOS Compatible Transport Protocol.
- In its properties, set the Internal Network Number to
00000000 and manually set the Frame Type to 802.3.
6. Legendary Games that Require IPX
Why go through all this trouble? Because some of the greatest multiplayer games of the 90s didn’t speak TCP/IP-or their TCP/IP implementations were incredibly unstable compared to their native IPX code.
- DOOM & DOOM II (1993/1994): The kings of the LAN party. Setup requires running
IPXSETUP.EXE to broadcast for other players. Without IPX, classic DOS Doom multiplayer does not exist.
- Command & Conquer / Red Alert (1995/1996): The original DOS and Windows 95 releases relied entirely on IPX for network play. You’ll know it’s working when you see the other player’s name populate in the network lobby.
- Warcraft: Orcs & Humans & Warcraft II (1994/1995): Long before Battle.net existed, Orcs and Humans settled their differences over raw 802.3 IPX frames.
- Duke Nukem 3D / Blood / Shadow Warrior (Build Engine): The classic 3D Realms titles utilized
COMMIT.EXE to launch network games over IPX.
- Descent (1995): Famous for inducing motion sickness and incredible 6-player LAN anarchy, Descent’s incredibly tight and responsive multiplayer requires a solid IPX foundation.
By combining original hardware, Windows 9x configurations, and modern tools like IPXBox, you can keep the golden age of 90s LAN gaming alive indefinitely.