From: terry@cs.weber.edu (A Wizard of Earth C)
Subject: Re: 386BSD Routing?
Keywords: routing, 386bsd
Organization: Weber State University  (Ogden, UT)
Date: Wed, 16 Sep 92 04:28:34 GMT

In article <6104@pdxgate.UUCP> brians@rigel.cs.pdx.edu (Brian Smith) writes:
>I have 386bsd running just wonderfully except for one simple problem:
>routing isn't happening.  I have a Western Digital ethernet card and a
>SLIP connection working just fine.  The problem is that packets aren't
>being routed between the two interfaces.  I didn't set the NOROUTING
>option in the kernel build, so I am at a loss.  Is the functionality
>expected to work?  I really do believe that I have the routing tables
>primed correctly.  RIP should take care of the rest.  Routed is started
>with the -g option, so that routing is propagated via the RIP protocol.
>
>	ifconfig we0 192.203.133.4
>	ifconfig sl0 192.203.133.3 137.39.73.3
>	route add default 137.39.73.3
>
>The problem is that 192.203.133.2 can't ping 192.203.133.3, nor can
>it ping 137.39.73.3.
>
>This is fairly critical, so if anyone can help me with this, I'd *REALLY*
>appreciate it.

Your default route should be your wire, unless the rest of the world is on
the other side of your slip link.  There should be a route to your slip
host as well, and your "192.203.133.3" should be the designated route to
"137.39.73.3" on the main gateway host on the "192.203.133" net.


			,---.			      ,--------.
			||  |			      |,------.|
			||  |			      ||B     ||
			||  | ,--------.	      ||      ||
			|   | |,------.|	      |`------'|
			|   | || A    ||	      `--------'
    ,-----------.	|   | ||      ||	,------------------.
    | Router    |	|   | |`------'|	|            ----- |
    |    Z      |	|   | `--------'	`------------------'
    `-----------'	`---'    -----------		-------------

---- IP 1 --->  <---------- IP 2 ---->	<--- SLIP --->


B:
	ifconfig sl0 inet B_address A_address <broadcast> <netmask>
	route add default A_address

A:
	ifconfig sl0 inet A_address B_address <broadcast> <netmask>
	route add <SLIP wire name> A_address #optional: all SLIP subnet off A
	route add default Z_address

Z:
	route add <SLIP wire name/SLIP host number> A_address
	route add default <upper level router>


Basically, the ability of an host on net "IP 1" to route to hosts on the
SLIP net is a function of their routing packets to host A, which is the
designated "keeper of the SLIP net".

The ability of any host on net "IP 2" to route to hosts on the SLIP net
is a function of:
	1)	A routing record on the host trying to get to the SLIP
		host designating A as the gateway to the SLIP net.

	or

	2)	A default route record designating the router Z as the
		default route for packets not on the local net and a
		routing record on the router designating A as the gateway
		to the SLIP net.

If A is to function as a gateway to multiple SLIP hosts, either an individual
routing record needs to be established designating A as the gateway for each
host, or a unique subnet number must be assigned for the SLIP net, and A will
get ALL packets to hosts on the SLIP net.  This may require rebuilding the
kernel on A with "option GATEWAY".  Run "config", then do a "make depend",
then do a "make".

Generally, if "A" has a routing record to "B", and some upper level router
can designate "A" as the gateway to "B", then rebuilding the kernel is not
necessary.  Your mileage may vary.

See also:	"man route", "man ifconfig", "man slip", and consider getting
		"gated" from gatekeeper.dec.com or some other archive.


					Terry Lambert
					terry_lambert@gateway.novell.com
					terry@icarus.weber.edu
---
Any opinions in this posting are my own and not those of my present
or previous employers.
-- 
-------------------------------------------------------------------------------
                                        "I have an 8 user poetic license" - me
 Get the 386bsd FAQ from agate.berkeley.edu:/pub/386BSD/386bsd-0.1/unofficial
-------------------------------------------------------------------------------