	To install 'rarpc' you need to place it into a directory where
the system can find it.  I recommend /sbin or /usr/sbin.  This will allow 
you to only have access to it if you are root.  Since it is writing to and
reading from sockets, and it reads from the network interface, it needs to 
be run as root.  I do not recommend setting the suid bit in the permissions
of the file.  It is really intended to be run during boot up and hence, will
run as root.

	Once you install the binary, you need to edit your boot-up scriptfiles.
To do this, go into your /etc/ directory.  Now depending on what type of
file system you have you will either have have to edit the rc.d/rc.inet1 file 
(Slackware) or the sysconfig/network-scripts/ifcfg-eth0 (depends on what 
device you are using) and sysconfig/network-scripts/ifup-eth files (Redhat).

	Please note that although this  can be used on a laptop with PCMCIA
ethernet card(s), it is rather tricky.  There are simple ways to make this
work with PCMCIA cards, but I am not going to get into them at this time.
Feel free to Email me with any questions.


This is an example of the first version.

[Slackware]

************************(Original)*********************************

# Edit for your setup.
IPADDR="136.33.220.2"  		# REPLACE with YOUR IP address!
NETMASK="255.255.255.0"       	# REPLACE with YOUR netmask!
NETWORK="136.33.220.0" 		# REPLACE with YOUR network address!
BROADCAST="136.33.220.255"      # REPLACE with YOUR broadcast address, if you
                        	# have one. If not, leave blank and edit below.
GATEWAY="136.33.220.1"       	# REPLACE with YOUR gateway address!

# Uncomment ONLY ONE of the three lines below. If one doesn't work, try again.
# /sbin/ifconfig eth0 ${IPADDR} netmask ${NETMASK} broadcast ${BROADCAST}
/sbin/ifconfig eth0 ${IPADDR} broadcast ${BROADCAST} netmask ${NETMASK}
# /sbin/ifconfig  eth0 ${IPADDR} netmask ${NETMASK} 

# Uncomment these to set up your IP routing table.
/sbin/route add -net ${NETWORK} netmask ${NETMASK}
/sbin/route add default gw ${GATEWAY} metric 1

# End of rc.inet1

*************************(Updated)**********************************


# Edit for your setup.
IPADDR="0.0.0.0" 	 	# REPLACE with YOUR IP address!
NETMASK="255.255.255.0"       	# REPLACE with YOUR netmask!
NETWORK="136.33.220.0" 		# REPLACE with YOUR network address!
BROADCAST="136.33.220.255"     	# REPLACE with YOUR broadcast address, if you
                        	# have one. If not, leave blank and edit below.
GATEWAY=""		       	# REPLACE with YOUR gateway address!

# These next lines allows you to rarp
/sbin/ifconfig eth0 up -arp
eval `/sbin/rarpc`
# Uncomment ONLY ONE of the three lines below. If one doesn't work, try again.
# /sbin/ifconfig eth0 ${IPADDR} netmask ${NETMASK} broadcast ${BROADCAST} 

/sbin/ifconfig eth0 ${IPADDR} broadcast ${BROADCAST} netmask ${NETMASK} +arp

# /sbin/ifconfig  eth0 ${IPADDR} netmask ${NETMASK} 

# Uncomment these to set up your IP routing table.
/sbin/route add -net ${NETWORK} netmask ${NETMASK}
/sbin/route add default gw ${GATEWAY} metric 1

# End of rc.inet1


[RedHat}


***********************(Original)*************************************
[ ifcfg-eth0 ] 

DEVICE=eth0
IPADDR=111.222.233.41
NETMASK=255.255.255.0
NETWORK=111.222.233.0
BROADCAST=111.222.233.255
GATEWAY=111.222.233.1
ONBOOT=yes

[ ifup-eth ]


#!/bin/sh
PATH=/sbin:/usr/sbin:/bin:/usr/bin

. $1

if [ "foo$2" = "fooboot" -a ${ONBOOT} = "no" ]
then
	exit
fi

ifconfig ${DEVICE} ${IPADDR} netmask ${NETMASK} broadcast ${BROADCAST}
#route add ${IPADDR}
route add -net ${NETWORK} netmask ${NETMASK} ${DEVICE}
if [ "${GATEWAY}" != "" -a "${GATEWAY}" != "none" ]
then
	route add default gw ${GATEWAY} metric 1 ${DEVICE}
fi


***********************(Updated)*************************************

[ ifcfg-eth0 ] 

DEVICE=eth0
IPADDR=0.0.0.0
NETMASK=255.255.255.0
NETWORK=111.222.233.0
BROADCAST=111.222.233.255
GATEWAY=111.222.233.1
ONBOOT=yes

[ ifup-eth ]


#!/bin/sh
PATH=/sbin:/usr/sbin:/bin:/usr/bin

. $1

if [ "foo$2" = "fooboot" -a ${ONBOOT} = "no" ]
then
	exit
fi

# Added for RARP use
ifconfig $(DEVICE) up -arp  # turns on device for writing but no arp
eval `/sbin/rarpc`
ifconfig ${DEVICE} ${IPADDR} netmask ${NETMASK} broadcast ${BROADCAST} arp
#route add ${IPADDR}
route add -net ${NETWORK} netmask ${NETMASK} ${DEVICE}
if [ "${GATEWAY}" != "" -a "${GATEWAY}" != "none" ]
then
	route add default gw ${GATEWAY} metric 1 ${DEVICE}
fi


*********************(END CONFIG)************************


I hope this helps you get your Linux box up and RARPing.



Shawn C. Jury
jurys@hq.22sigbde.army.mil
