IPX Routing
Linux als IPX-Router zu verwenden, ist leider nicht ganz so einfach, wie dies bei TCP der Fall ist. Zuerst muß man sich das Paket ipx.tar.bz2 besorgen.
tar xfj ipx.tar.bz2
cd ipx-1.0
make
make install
Danach legen wir die Datei /etc/rc.d/init.d/ipx an. Dort werden die Daten wie Frametyp, Schnittstelle und Netzadresse festgelegt.
#!/bin/sh
#
# ipx Bring up/down IPX networking
#
IPX_AUTO_PRIMARY=on
IPX_AUTO_INTERFACE=on
IPX_CONFIGURED=yes
IPX_DEVICE0=eth0
IPX_DEVICE1=eth1
IPX_FRAME0=802.3
IPX_FRAME1=802.3
IPX_NETNUM0=0x10000000
IPX_NETNUM1=0x20000000
case "$1" in
start)
ipx_interface add -p ${IPX_DEVICE0} ${IPX_FRAME0} ${IPX_NETNUM0}
ipx_interface add ${IPX_DEVICE1} ${IPX_FRAME1} ${IPX_NETNUM1}
ipx_configure --auto_primary=${IPX_AUTO_PRIMARY} --auto_interface=${IPX_AUTO_INTERFACE}
ipxd
;;
stop)
ipx_configure --auto_primary=off --auto_interface=off
ipx_interface delall
Pid=`ps aux|grep ipxd | head -n 1 | awk '{print $2}'`
kill $Pid
;;
*)
echo "Usage: network {start|stop}"
exit 1
esac
exit 0
Mit dem Befehl ifconfig kann überprüfen werden, ob das IPX-Protokoll ordentlich den Netzwerkschnittstellen zugewiesen wurde.
krypton:~ >ifconfig
eth0 Link encap:Ethernet HWaddr 00:00:CB:58:03:D8
inet addr:192.168.0.1 Bcast:192.168.0.255 Mask:255.255.255.0
IPX/Ethernet 802.3 addr:10000000:0000CB5803D8
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:277 errors:0 dropped:0 overruns:0 frame:0
TX packets:507 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
Interrupt:5
eth1 Link encap:Ethernet HWaddr 00:00:CB:58:03:D3
inet addr:192.168.1.1 Bcast:192.168.1.255 Mask:255.255.255.0
IPX/Ethernet 802.3 addr:20000000:0000CB5803D3
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:242 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
Interrupt:10
ippp0 Link encap:Point-to-Point Protocol
inet addr:192.168.0.1 P-t-P:192.168.0.99 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:30
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:3924 Metric:1
RX packets:308 errors:0 dropped:0 overruns:0 frame:0
TX packets:308 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
Das Programm ipxd, welches im Skript benutzt wird, stellt automatisch fest, welche Routen gesetzt werden müssen. Zwei bis drei Sekunden nach dem Programmstart kann man nachschauen, ob das funktioniert hat.
krypton:~ >cat /proc/net/ipx_route
Network Router_Net Router_Node
20000000 Directly Connected
10000000 Directly Connected