IPX
Unlike IP addressing router command, which assigns an IP address to a router Interface - the IPX command assigns an IPX network to the interface. The command to assign an IPX address to an IPX network is as follows:
IP command: IP address
IPX command: IPX network
The IPX address is 80 bits (10 bytes). The first 32 bits is the Network number (assigned by the network administrator), and the last 48 bits is the node number, which usually is the Media Access Control (MAC) address for one of the system's network interface cards (NICs).

for example, the IPX address: 0000.7C80.0000.8609.33E9
the 10 bytes (4 + 6) are: 00/00/7C/80/00/00/86/09/33/E9
address commonly shown as: 7c80.8609.33e9
(leading 0’s dropped)
*** for the Node number (MAC address), the first 3 bytes are vendor numbers (also called the OUI – Organizationally Unique Identifier), and the last 3 are NIC serial numbers, or station address. Sometime the MAC addresses are given as the last 3 bytes (station address) and it is called a UAA (Universally Administered Address). Some low-level protocols can add an overlay to those 3 bytes and then they are called an LAA (Locally Administered Address). The MAC address is burned into the ROM of the NIC, but IPX addresses are stored in the routing tables (RAM).
NOTE1: when you configure the Interfaces for IP you assign an IP address. When you configure the Interfaces (ports) for IPX, you assign an IPX “network”. The show prot command will list the address, but will omit any leading zeros for both the network and node address. For example:
sh prot
The router displays the following on the screen:
Global Values:
Internet Protocol Routing is enabled
IPX routing is enabled
Ethernet Protocol is up, line protocol is up
Internet address is 172.16.11.1 /24
IPX address is 11.0c8d.5c9d (actual addr is 0000.0011.0000. 0c8d.5c9d)
but with IPX it is common practice to drop
leading zeros for both the IPX network addr
and the node (MAC) addr
NOTE2: to see the IPX addresses, do a “show IPX route” and you will just see the Network numbers for the “C” devices (directly connected, which is the local interfaces). For the remote routers “R” you will see just the network number, but you will see “via” the entire IPX address for the local Interface. For example, if the local router is using its own serial 0 interface which is assigned the IPX network number 20 - to connect to it’s neighbor router’s interface assigned the IPX network number 40:
sh IPX route
C 20 HDLC, Ser0 (direct connected local interface serial 0, Net Addr 20)
R 40 [07/01] via 20.0000.0c8d.5c9d, Se0 (remote router Net addr 40 connected via local interface with Net Addr 20 and node addr 0000.0c8d.5c9d, the interface is Serial 0
What’s inside the brackets – the first number is always 7 in the Sybex labs but is not explained for IPX (it is the “administrative distance” for the results of a “sh ip route” command). The second number is the cost of the route (the metric) for both sh ip route and sh ipx route commands.
The link will have it’s own IPX network number, which will be defined as the same network number assigned to both router interfaces. For example, if router A and router B are connected by a serial link, then their two serial addresses need to be assigned the same network number – and this network number defines the IPX network number of the link. However, their MAC address portion of their IPX address will be unique.
The router interfaces can be assigned multiple network numbers. Two can be assigned as primary (the default, so no need to add the word “primary” in the command) and secondary (add the word secondary at the end of the IP network command). Then you can add a third, fourth, etc. network numbers to subinterfaces of the interface.
Since client addressing is automatic (simply takes the MAC address of the NIC), there is no need for DHCP. In addition, the hardware address (Data Link layer) is part of the software address (Network layer), so there is no need for ARP’s (where the IP address is resolved with the MAC address).
Network Number - the 8-digit (4 bytes, 32 bits) Network number is written as a hexadecimal number and the leading zeros are usually dropped but not always. A few examples: 1, 43, ED, 7C80, 00007C80, FD5B23EE, etc. For simplicity, the network numbers are usually chosen as small numbers. For example, a network with 30 IPX servers and 20 LAN segments could use Network numbers of 1 through 50 (each server has an internal network number).
Node Number - the 12-digit (6 bytes, 48 bits) numbers are represented by dotted 4-digit hexadecimal (xxxx.xxxx.xxxx etc). Each digit is a hex representation of a binary “nibble” (four bits). Two Hexadecimal digits represents one byte (2 nibbles). For example, FF = 11111111 Therefore, each four digits, separated by dots, represents two bytes.
sh prot - both the IPX Network number and the MAC address leading zero’s are not shown with the sh protocol command.
sh IPX interface e0, s0, etc or sh ipx route - for these commands, the IPX Network number leading zeros are not shown, but the MAC address leading zero’s are shown
Novell Netware Servers – the “Internal Network Number”
Unlike IP file servers, which have a NIC with an MAC address - Novell Netware Servers have an “internal network number” which they advertise with RIP. The IPX internal network number is a hexadecimal number, one to eight digits (1 to FFFFFFFE), and is assigned to the server during installation. This number is stored in routing tables by routers on the network. For example, the following network has 5 IPX networks. The two servers have internal network numbers 2000 and 1000. The external network addresses are formed by the Ethernet LAN segements and are 200, 100, and AAAA.
Therefore, an example IPX addresse (80 bits: 32 bits network number and 48 bits node number) of a station on network 200 would be 200.0c5c.6d45.23e1 - note that the leading zeros are dropped. The actual full address would be 000000200.0c5c.6d45.23e1 Typically, the notation of the network number does not use the decimals in between every 4 digits the way the node address does. Another example of an IPX address: 078543c4f.445d.f43b.3842

Enable IPX routing (use config mode): config t
ipx routing
to check which protocols are running and see the IPX addresses of the connected interfaces: CTRL-Z
sh protocol (will show what is running - both IP and IPX)
Assign IPX network numbers to the interfaces with default encapsulation (we will use the same number as the Sybex trainer IP network number for easy identification):
config t
ipx routing
int e0
ipx network 11a
int s0
ipx network 20
Assign IPX network number with a specific encapsulation. The privious commands did not specify, so the IOS assumed the default encapsulation protocol, Novell_Ether (Cisco’s term, it is called Ethernet_802.3 by Novell). To dictate what encapsulation will be used :
ipx network # encapsulation type [secondary]
You can use the “sec” option on the regular ipx network command, or you can create subinterface. For example, adding onto the commands from above:
Secondary IPX Network:
int e0
ipx network 11b encapsulation SNAP secondary
(we use the word “secondary” since e0 already has been configured for Novell_Ether frames. Now it is configured for both Novell_Ether and SNAP)
Secondary IPX Network using a subinterface:
int e0.2
ipx network 11b encap sap
- now the router is configured for Novell_Ether, SNAP, and sap
to see all IPX connected router configurations: sh ipx route
to view one Interface (E0 for example): sh ipx interface e0
Example output of sh protocol :
<snip>
Ethernet 0 is up, line protocol is up
Internet address is 172.16.11.1 /24
IPX address is 11.0c8d.5c9d
<snip>
Ethernet 0 is up, line protocol is up
Cisco routers do not directly route IPX - instead, they encapsulate it in IP headers, route it, and then strip off the headers, leaving the original IPX packets. There are four primary Ethernet encapsulation header types . :

Instead of going to the config extended interface mode by typing e0, you add a subinterface number to it by using the command: int e0.subinterface. For example, “int e0.1500” will take you to a prompt that indicates it is sub-interface 1500. Our examples above have the router e0 interface having two Network numbers assigned (11a and 11b), allowing two of the four Ethernet frame types – we will add a third using Network number 11c, but will add it to a subinterface, and will assign it the protocol “SAP” :
2501A#config t
2501A(config)# int e0.1500
2501A(config-subif)# ipx network 11c encapsulation sap
NOTE: above we created IPX network 11a on the primary interface int e0, and 11b on e0 but used a secondary interface. Now we have created another secondary network address, but this time used a sub-interface. Do not use the “IPX network networknumber secondary” command for sub-interfaces.
3. ping ipx ipxaddress
allows “Round-Robin Load Balancing”
By default, IPX assumes there is only one path to each destination. This command tells the IOS that multiple paths to the same destination (parallel paths)may exist :
ipx maximum-paths #
IPX Final Example – Configure an ethernet interface with three network numbers and three protocols. NOTE: if you try to do this on the serial interface you will get errors :
config t
ipx routing
int e0
ipx network 11a
ipx network 11b encapsulation arpa
int e0.1500
ipx network 11c encapsulation sap
check it out:
sh ipx route
<snip>
C 11a (NOVELL_ETHER), Et0
C 11b (ARPA), Et0
C 11c (SAP), Et0.1500
R etc.
<snip>