タイトル: IPX/SPX
SEOタイトル: IPX/SPX プロトコル完全ガイド (歴史的)
| この記事の要点 |
|
IPX/SPX とは
IPX/SPX は、Novell 社が 1980 年代初頭に開発した独自プロトコルスイートです。Xerox PARC の Xerox Network Systems (XNS) を起源としつつ、PC LAN 向けに最適化されました。当時主流の Novell NetWare OS の標準プロトコルとして、世界中の企業 LAN を支配していました。
| プロトコル | OSI 層 | 役割 | TCP/IP での対応 |
|---|---|---|---|
| IPX | L3 (ネットワーク層) | パケットルーティング・アドレッシング | IP |
| SPX | L4 (トランスポート層) | コネクション指向・順序保証 | TCP |
| NCP | L5-7 | NetWare Core Protocol。ファイル・印刷サービス | SMB / NFS 相当 |
| SAP | L7 | Service Advertising Protocol。サービス広告 | DNS-SD 相当 |
| RIP (IPX) | L3 | ルーティング情報交換 | RIP (TCP/IP) と別物 |
IPX アドレスの構造
IPX は「IP の前身」とも言える設計で、80 ビットのアドレス空間を持っていました。
IPX アドレス: 80 bit = 10 bytes
[ネットワーク番号 4B] . [ノード番号 6B]
| |
| └─ MAC アドレスと同じ 6B (自動取得)
└─ 管理者が割当 (or 0=ローカル)
例: 0000A1B2:00-04-AC-12-34-56
特徴:
- ノード番号は MAC アドレスを流用 → ★ 設定不要 (自動)
- ネットワーク番号は NetWare サーバが配布
- DHCP のような仕組み不要、つなぐだけで通信可能 (Plug & Play)
この「設定不要」こそ TCP/IP より優位とされた最大の理由です。1990 年代当時、TCP/IP は手動で IP / サブネット / DNS / ゲートウェイを設定する必要がありました (DHCP が普及していなかった)。
SPX の特徴
- TCP と同様のコネクション指向 (相手と確立してから通信)
- シーケンス番号・確認応答による順序保証と信頼性
- SPXII (改良版) ではウィンドウサイズ拡張・パケットサイズ拡大
- NetWare のファイル共有 (NCP) の下層として使用
当時の利点と限界
| 利点 | 限界 |
|---|---|
| 設定不要 (Plug & Play) | WAN・Internet で使えない (独自プロトコル) |
| LAN 内で高速 | ルーティング情報が SAP で大量に流れ帯域圧迫 |
| NetWare のファイル共有が高性能 | 独自・閉鎖的で OS ロックイン |
| セキュリティ機能あり | 標準化されていない (RFC でない) |
歴史的タイムライン
| 年 | 出来事 |
|---|---|
| 1983 | Novell NetWare 86 リリース。IPX/SPX が登場 |
| 1989 | NetWare 3.x で企業 LAN の事実上標準に |
| 1993 | NetWare 4.x (NDS)。世界の LAN 市場シェア 60% 超 |
| 1994 | Microsoft Windows NT が SMB / TCP/IP を強化、競争激化 |
| 1998 | NetWare 5 リリース。標準プロトコルが TCP/IP に変更 |
| 2000 | Windows 2000 が NWLink (IPX/SPX 互換) を提供 |
| 2006 | NetWare 6.5 が最終 NetWare 系。Linux ベース OES に移行 |
| 2007 | Windows Vista で NWLink ドライバ削除 |
| 2011 | Novell 自体が Attachmate / Micro Focus に買収 |
| 現在 | 事実上絶滅。レガシー業務システムにのみ残存 |
DOS 時代の LAN ゲームと IPX
1990 年代の PC ゲームは、TCP/IP よりIPX/SPX で LAN 対戦を実装するのが主流でした。理由は (1) Plug & Play で設定不要、(2) 当時の PC は TCP/IP スタックを後から入れる必要があった、(3) ゲーム側の実装が簡単だったから。
- DOOM (1993) — IPX で 4 人 LAN 対戦
- Warcraft / StarCraft (Blizzard 初期)
- Diablo / Diablo II — LAN モードで IPX
- Quake シリーズ — IPX と TCP/IP 両対応
- Command & Conquer
Windows での IPX 設定 (歴史記録)
Windows 95 / 98 / NT / 2000 / XP では NWLink を有効化
コントロールパネル
→ ネットワーク
→ プロトコルの追加
→ Microsoft
→ NWLink IPX/SPX/NetBIOS 互換トランスポート
WAN を超えた通信は不可。LAN 内のみ。
Windows Vista (2007) で NWLink 削除。
それ以降、IPX で通信したいなら DOSBox + ipxnet 等を使う
現代での復活: DOSBox の IPX over UDP
DOS 時代のゲームを今プレイする際、DOSBox はIPX over UDP のトンネリングをサポートしています:
# DOSBox 設定 (dosbox.conf)
[ipx]
ipx=true
# サーバ (ホスト) 側
Z:\> ipxnet startserver 213
IPX Tunneling Server started on port 213
# クライアント側
Z:\> ipxnet connect server.example.com 213
Connected to IPX Server at server.example.com
# あとは Diablo, DOOM 等を起動して LAN モード選択
残存環境の TCP/IP 移行
未だ IPX/SPX が動いているのは、主に以下のケース:
- 古いPOS レジスタや工場の制御 PC (Windows NT/2000 のまま稼働)
- NetWare 5/6 の業務システム
- 古い CAD ワークステーション (LAN ライセンスサーバが IPX)
移行手段:
- NetWare ファイルサーバ → SMB ファイルサーバ (Samba / Windows Server)
- NDS → Active Directory / LDAP
- IPX 依存業務アプリ → リライト or Wine/エミュレータで仮想化
SAP (Service Advertising Protocol) の課題
IPX 時代の SAP は、ネットワーク上のすべてのサービス (ファイルサーバ / 印刷 / ライセンス) が60 秒ごとにブロードキャストする設計でした。LAN が大規模化するにつれ SAP 嵐と呼ばれる帯域圧迫が問題化し、TCP/IP の DNS-SD / SLP / DHCP に比べてスケーラビリティが劣ることが TCP/IP 移行の決定打になりました。
FAQ
Q: 今でも IPX/SPX を学ぶ価値はある?
A: 実務で必要な機会はほぼゼロ。ただし「TCP/IP は唯一の選択肢ではなかった」という歴史的教訓は意義があり、ネットワーク設計の判断材料として知っておくと良い。
Q: Linux で IPX を扱えるか?
A: 古い Linux カーネルには IPX サポート (CONFIG_IPX) があったが、Linux 5.15 で削除。事実上、現代の OS では扱えない。
Q: AppleTalk と何が違う?
A: AppleTalk も同じく独自プロトコルだったが、Mac 専用。IPX は Windows / DOS / Unix 等マルチ OS 対応で広く普及した。両者とも TCP/IP に取って代わられた歴史を持つ。