Creopard header LogoNEU: Diese Website funktioniert auch noch im Internet Explorer 5!

IPX-Netzwerk unter MS-DOS für Multiplayer-Spiele aufsetzen

Update: 26.03.2026 | Erstellt: 01.03.2023 von creopard

Unterstüzen Sie dieses Projekt mit Ihrer Spende

Hurra,
Ihr Werbeblocker funktioniert!

Wenn Sie unsere Inhalte nützlich finden, würden wir uns über eine kleine Unterstützung freuen. Sie können auch gerne Ihren Werbeblocker für diese Seite deaktivieren, um kostenlose Dienste weiterhin zu ermöglichen.

Viele Spiele setzen unter MS-DOS ein funktionierendes IPX-Netzwerk voraus, wenn man im Multiplayermodus spielen will, z.B. Doom, Duke Nukem 3D, Quake, Command & Conquer, Warcraft II, uvm.

Früher hat mich das Thema nie interessiert, da man sich entweder mit einem Nullmodemkabel oder direkt mit einer Modemverbindung über die Telefonleitung beholfen hat.

IPX steht für "Internetwork Packet Exchange" und ist ein Netzwerkprotokoll, das hauptsächlich in NetWare-Netzwerken von Novell verwendet wurde. Es wurde entwickelt, um Daten zwischen Computern in einem Netzwerk auszutauschen. Mit der zunehmenden Verbreitung von TCP/IP als Standardprotokoll in Netzwerken hat IPX an Bedeutung verloren und wird heute nur noch selten verwendet.


Erstaunlicherweise gibt es wenig Anleitungen, wie man heutzutage ein IPX-Netzwerk unter purem DOS aufsetzen kann. Viele Anleitungen beschränken sich auf DOSBox, wo das vergleichsweise einfach zu sein scheint. Hierzu auch ein kleiner Exkurs zu Netzwerken in der DOSBox.

Genereller gibt es für ein IPX-Netzwerk unter DOS zwei Möglichkeiten. Die Nutzung eines ODI-Treibers oder eines Packet-Treibers.

(Packet-Treiber sind generische Treiber, die vor allem für TCP/IP-Protokolle entwickelt wurden. Sie bieten eine einfache Schnittstelle für IP-basierte Anwendungen und werden direkt über einen Software-Interrupt angesprochen. ODI-Treiber (Open Datalink Interface) sind ein modulares System von Novell, bestehend aus MLID (Multiple Link Interface Driver), LSL (Link Support Layer) und Protokollstacks. ODI erlaubt eine flexible Konfiguration über NET.CFG. Packet-Treiber sind simpler, eignen sich aber nur, wenn kein ODI verfügbar ist.)

Generell wird für IPX eine NE2000 (kompatible) Netzwerkkarte empfohlen!

Anders als TCP/IP ist IPX ein verbindungsloses Protokoll mit minimaler Fehlerkorrektur auf Netzwerkebene. Das einfachere, direktere Design einer NE2000 16-Bit ISA-Netzwerkkarte bedeutet auch weniger Fehlerquellen in Sachen Speicher und Pufferung auf (kein DMA-Support, größerer Onboard-RAM als z.B. die verwendete 3C503).

1. IPX-Netzwerk unter DOS über einen ODI-Treiber (klassischer Ansatz)

Die notwendigen Dateien (mit Netzwerkkartentreiber für IPX, TCP/IP und Tools) können hier heruntergeladen werden: https://gitlab.com/creopard/dos_net_ne2000_3com 

Im folgenden Beispiel werden die Dateien in C:\net entpackt:

dos-net-dir
Bild: DOS-Prompt Verzeichnis von C:\net

1.1 Konfigurationsdateien anpassen (Beispiel für eine "NE2000" Netzwerkkarte)

Die Datei NET.CFG wird von LSL.COM für die Initialisierung benötigt und kann dabei so aussehen (die Datei NET.CFG muss entsprechend angepasst werden):

Link Driver NE2000
;    INT 3                         ; interrupt is autodetermined
;    PORT 300                      ; I/O adress is autodetermined
    FRAME Ethernet_802.2          ; priority 1: standard for NetWare 3.12+
;    FRAME Ethernet_802.3          ; (optional) priority 2: old NetWare 3.11 / 2.x ("raw")
;    FRAME Ethernet_II             ; (optional) priority 3: for TCP/IP

Der FRAME Eintrag könnte auch weggelassen werden, da 802.2 ohnehin der Standardeintrag ist.

Wichtig ist hier, dass sich alle IPX-Netzwerkteilnehmer auf einen Standard einigen. Also entweder Ethernet_802.2 oder Ethernet_802.3. Beides zu mischen, wird nicht funktionieren!

1.2 Genereller Ablauf unter MS-DOS, um ein IPX-Netzwerk zu starten

Hat man alle Dateien zusammen, kann man das IPX-Netzwerk auf jedem PC wie folgt einrichten bzw. starten (am Beispiel einer NE2000 kompatiblen Netzwerkkarte).
Bei anderen Netzwerkkarten (z.B. 3Com) gibt es dementsprechend eigene ODI-Treiber, wie etwa 3C5X9.COM oder 3C90X.COM.

Hinweis: Ein ODI-Treiber wird für IPX-Netzwerke benötigt und ist nicht zu verwechseln mit einem Packet-Treiber, der für TCP/IP-Netzwerke benötigt wird.

  1. Laden der Datei LSL.COM (wird mit der dazugehörigen Datei NET.CFG im gleichen Verzeichnis konfiguriert)
  2. Laden des netzwerkkarteneigenen ODI-Treibers, z.B. NE2000.COM
  3. Laden der Datei IPXODI.COM


Dabei ist die korrekte Reihenfolge wichtig, in der die Dateien gestartet werden müssen (hier mit LH um die Treiber in den hohen Speicherbereich von DOS zu laden):

LH LSL.COM
LH NE2000.COM
LH IPXODI.COM

Für den ersten Test die Treiber am besten einzeln von Hand nacheinander starten und schauen, ob irgendwelche Fehlermeldungen erscheinen. Wenn alles geklappt hat wird man nach dem Aufruf von "STARTIPX" je nach Netzwerkkarte folgende Statusmeldungen auf dem Bildschirm sehen.

Hier das Beispiel für den DOS-Prompt, bei einer "[ISA16] NE2000 compatible" Netzwerkkarte mit IPX;

dos-startipx-ne2000-802
Bild: DOS-Prompt nach STARTIPX mit erfolgreicher Konfiguration der NE2000 Netzwerkkarte und IPX

Die letzte Zeile "Bound to logical board 1" bedeutet, dass die Konfiguration funktioniert hat und die Karte nun IPX "spricht".

Hier noch ein Beispiel für den DOS-Prompt, wenn man eine RTL8019AS PnP (ISA) Netzwerkkarte für IPX erfolgreich konfiguriert hat:

dos-startipx-rtl8019as-802
Bild: DOS-Prompt für eine RTL8019AS PnP (ISA) und ODI-Treiber

Ein weiteres Beispiel für den DOS-Prompt, wenn man eine  3C503 EtherLink II (ISA) Netzwerkkarte für IPX erfolgreich konfiguriert hat:

Die 3C503 eignet sich nicht sonderlich gut für IPX-Netzwerke (siehe Einleitung).

dos-startipx-3c503-802
Bild: DOS-Prompt für eine 3C503 EtherLink II (ISA) und ODI-Treiber

Anschließend kann man noch mit dem Programm IPXCHK16.EXE die Verbindung prüfen. Dazu muss das Programm auf beiden Rechnern mit jeweils unterschiedlichen Namen als Parameter gestartet werden. Dann sieht man, ob sich die beiden Rechner finden.

Hinweis: Zwischen den zu vernetzenden Rechnern darf kein Router (WLAN/LAN) stehen, da diese nur TCP/IP, aber kein IPX-Protokoll routen können - Switches sind kein Problem.

 

2. IPX-Netzwerk unter DOS über einen Packet-Treiber (alternativer Ansatz)

Für das Spiel DOOM (1993) soll es laut DOOM Network Troubleshooting Guide angeblich nicht notwendig sein, dass LSL.COM geladen wird. Aber ohne LSL.COM kann der ODI-Treiber die Netzwerkkarte nicht initialisieren, also wie kommt diese Aussage zustande?

Antwort: Eine fast in Vergessenheit geratene Technik erlaubt es, ein IPX-Netzwerk auch über einen Packet Driver aufzusetzen. Dazu hat Intel 1992 ein Programm namens PDIPX.COM veröffentlicht, was dazu dient den IPX-Netzwerkverkehr über eine Packet-Driver Schnittstelle abzubilden. Es ermöglicht die Ausführung von IPX auf Netzwerkkarten, auf denen nur Packet-Treiber zur Verfügung stehen. Damit kann also auch das umständlichere Setup mit LSL.COM, der NET.CFG, einem ODI-Treiber und IPXODI.COM elegant umgangen werden.

Die Schritte für ein Setup mit IPX + Packet-Treiber sind denkbar einfach:
  1. Laden des jeweiligen Packet-Treibers der Netzwerkkarte, z.B. NE2000.COM, RTL8019.COM oder 3C5X9PD.COM
  2. Laden von PDIPX.COM


Die Datei PDIPX.COM  ist ebenfalls im Downloadpaket unter https://gitlab.com/creopard/dos_net_ne2000_3com enthalten.

Wenn alles geklappt hat wird man nach dem Aufruf von "STARTNET" gefolgt von "PDIPX" folgende Netzwerk-Statusmeldungen auf dem Bildschirm sehen:

dos-startnet
Bild: DOS-Prompt nach STARTNET und PDIPX mit erfolgreicher Konfiguration des Netzwerkkarten Packet-Treibers und IPX

Die letzte Zeile zeigt auch hier wieder, dass die Konfiguration funktioniert hat.

Und noch ein Beispiel für den DOS-Prompt, wenn man eine RTL8019AS PnP (ISA) Netzwerkkarte erfolgreich mit PDIPX konfiguriert hat:

dos-startnet-rtl8019as-isa
Bild: DOS-Prompt für eine RTL8019AS PnP (ISA) mit Packet-Treiber und IPX

Ein weiteres Beispiel für den DOS-Prompt, wenn man eine 3C503 EtherLink II (ISA) Netzwerkkarte erfolgreich mit PDIPX konfiguriert hat:

dos-startnet-3c503
Bild: DOS-Prompt für eine 3C503 EtherLink II (ISA) mit Packet-Treiber und IPX

Ein schönes Schaubild aus dem DOOM Network Troubleshooting Guide für diesen Ansatz:

              +---------------+                       +---------------+
              | DOOM -nodes 2 |                       | DOOM -nodes 2 |
              +---------------+                       +---------------+
              | DOOM launcher |                       | DOOM launcher |
   SOFTWARE   | ([IPX]SETUP)  |                       | ([IPX]SETUP)  |
              +---------------+                       +---------------+
              |  PDIPX driver |                       |  PDIPX driver |
              +---------------+                       +---------------+
              | Packet driver |                       | Packet driver |
<-------------+---------------+-----------------------+---------------+------->
              | Network Card  |                       | Network Card  |
   HARDWARE   +---------------+-----------------------+---------------+
              |         C O N N E C T O R S   &   C A B L E S         |
              +-------------------------------------------------------+

 

3. Weitere Informationen zu Packet-Treibern, ODI-Treibern und IPX

Weitere ODI- und Packet-Treiber sind z.B. hier verfügbar:

Weitere Informationen:


⬅️ Vorheriger BeitragNächster Beitrag ➡️



Ähnliche Blogartikel mit folgenden Schlagwörtern anzeigen:





Unterstützen Sie uns:

Wenn Ihnen unsere Projekte gefallen, dann freuen wir uns über Ihre Unterstützung!
Unterstüzen Sie dieses Projekt mit Ihrer Spende

Unterstüzen Sie dieses Projekt mit Ihrer Spende

Hurra,
Ihr Werbeblocker funktioniert!

Wenn Sie unsere Inhalte nützlich finden, würden wir uns über eine kleine Unterstützung freuen. Sie können auch gerne Ihren Werbeblocker für diese Seite deaktivieren, um kostenlose Dienste weiterhin zu ermöglichen.