Next
Previous
Contents
If you have a number of IPX segments that you wish to internetwork you
need the services of a router. In the Novell environment there are two
pieces of information which are necessary to be propagated around the network.
They are the network routing information propagated using Novell RIP, and
the service advertisement information propagated using Novell SAP. Any
router must support both of these protocols to be useful in most situations.
Linux has support for both of these protocols and can be fairly easily
made to function as a fully Novell compliant router.
The Linux kernel IPX support actually manages the IPX packet forwarding
across interfaces, but it does this according to the rules coded into the
IPX routing table. Linux needs a program to implement the Novell RIP and SAP
to ensure that the IPX routing table is built correctly and updated periodically
to reflect changes in the network status.
Volker Lendecke <lendecke@namu01.gwdg.de> has developed a routing
daemon ipxripd that will do this for you. The mars_nwe package
mentioned later includes an alternative routing daemon.
You can find ipxripd at:
sunsite.unc.edu or at Volkers home site at:
ftp.gwdg.de Configuring your Linux machine to act as a router is very straightforward.
The steps you must take are:
- Build your kernel with IPX, Ethernet and
/proc support.
- Obtain, compile and install the ipxd daemon program.
- Boot the new kernel and ensure that each of the Ethernet cards has
been properly detected and there are no hardware conflicts.
- Enable the IPX protocol on each of the interfaces using the
ipx_interface command described above.
- Start the ipxd daemon program.
Consider the following simple network:
IPX Addr: 0x01000000 802.2
|--------------------------|
|
\_________________________
\ Linux Router
IPX Addr: 0x02000000 802.2 \
|--------------------------| \ eth0/-----------\
| \--====| |
\_________________________ | IPX route |
\ eth1| Table |
IPX Addr: 0x03000000 etherII \----====| ^ |
|--------------------------| | | |
| eth2| IPXd |
\______________________________/====| |
| SAPd |
IPX Addr: 0x04000000 etherII eth3| |
|--------------------------| /====| |
| | \___________/
\______________________________/
The configuration for the above network would look like:
# ipx_interface add eth0 802.2 0x0100000000
# ipx_interface add eth1 802.2 0x0200000000
# ipx_interface add eth2 etherii 0x0300000000
# ipx_interface add eth3 etherii 0x0400000000
# ipxd
You should then wait a moment or two and check your
/proc/net/ipx_route file and you should see it populated with
the IPX routes relevant to your configuration and any learned from any other
routers in the network.
Novell has a feature called an internal network, which it uses to simplify
routing in situations where a host has more than one network device connected.
This is useful in the case of a fileserver connected to multiple networks
as it means that only one route needs to be advertised to reach the server
regardless of which network you are attempting from.
In the case of a configuration where you are not running a fileserver and
your machine acting only as an IPX router the question is not as simple to
answer. It has been reported that configuring for IPX/PPP works `better' if
you also configure an internal network.
In any case it is easy to do, but may require a rebuild of your kernel.
When you are working through the kernel make config you must answer
y when asked Full internal IPX network as illustrated:
...
...
Full internal IPX network (CONFIG_IPX_INTERN) [N/y/?] y
...
...
To configure the internal network interface, use the ipx_internal_net
command described earlier in the IPX tools section. The main precaution to
take is to ensure that they IPX network address you assign is unique on your
network and that no other machine or network is using it.
Next
Previous
Contents
|