brian@THUMPER.CC.WAYNE.EDU (Brian_Holmes) (01/11/90)
I just set up an IBM AT to act as a router using KA9Q. This works much better then the IBM routing software for PC's. KA9Q allows me to set a default route, while IBM program had to have every host in a table. I noticed the NOS version of KA9Q has a 'rip' command. Do anyone have any docs explaining this? I grabbed USERMAN.DOC from flash.bellcore.com, but this didn't have any reference to this command.
karn@ka9q.bellcore.com (Phil Karn) (01/16/90)
In article <88@thumper.cc.wayne.edu> bholmes@cms.cc.wayne.edu writes: >I just set up an IBM AT to act as a router using KA9Q. >This works much better then the IBM routing software >for PC's. You just made my day. :-) >I noticed the NOS version of KA9Q has a 'rip' command. >Do anyone have any docs explaining this? As is usual, the documentation lags the software by quite a bit. (Why document something when you're just going to change the code anyway, rendering the documentation obsolete? :-)) Passive RIP is quite easy to use; just say "start rip" and routing entries will start to appear in your table. To use active RIP (i.e., where you want to broadcast entries as well as receive them) takes a little more work. First you have to "hardwire" some routing and ARP entries to get the rip broadcasts out to the wire. Say arp add 44.255.255.255 ethernet ff:ff:ff:ff:ff:ff where you replace "44.255.255.255" with your local net's IP broadcast address. You should have one of these for each broadcast interface on your system. Then make sure the IP broadcast address(es) are routed to the appropriate interfaces: route addprivate 44.255.255.255 ethernet0 Normally, this latter step won't be necessary since you probably already have routing entries that would ensure this. Now you can start up rip broadcasting with rip add 44.255.255.255 30 1 where 44.255.255.255 is the IP broadcast address to use, 30 is the number of seconds between updates (this is the standard for Ethernet) and 1 is a flag that specifies split horizon/poisoned reverse is to be used (this is highly recommended). Use one "rip add" command per interface. I'm working on an "ifconfig" command with a BSD-like user interface that will create these routing and arp entries automatically when the subnet mask and broadcast addresses are set. There is also a semi-experimental "rip merge" flag. If you set it "on", the routing code will automatically eliminate redundant entries. These are defined as more specific entries that duplicate the effect of less specific entries. E.g, if the table contains 44.1.2.3 32 ethernet0 44.0.0.0 8 ethernet0 the first entry is redundant. Without it, any packets sent to 44.1.2.3 would still go to the same interface (ethernet0). The rip merge feature will delete such entries after each rip update is received. I find this command useful for filtering out lots of "chaff" in tree networks with multiple levels of subnets, which are very common in amateur radio TCP/IP. --Phil