Installation and Release Notes for NET-2

			Version: 0.99.9 NET-2 Rev.D

		    Fri, 28 May 17:00:00 1993 METDST


			    Fred N. van Kempen,

			


PREFACE
This document describes what yet has to be done in NET-2, how to install
it, and more of that stuff.


NEWS
New items in the Rev.C and Rev.D releases of NET-2:

- Many small improvements in the protocol modules.  ICMP still has some
  problems, though.

- The ARP problems have been fixed.  This means, that ARP no longer listens
  to all incoming ARP packets, but only to those requesting one of our own
  addresses.  This saves on memory, which some of us don't have much of.

  Also, ARP no longer tries to request an address 'for ever', which caused
  quite some broadcast storms on real networks.  ARP now maintains a count
  of how many times it tried to get an address for a packet.  If 3 tries
  occurred with no reply, ARP simply discards the packet.

  The ARP dumping code has been changed to watch the 4Kbyte limit of the
  PROCfs buffers.  This caused machines to crash on large ARP tables.

- many, many small fixes like those in the Makefiles.  You all know what
  I am talking about here.

- The D-Link Pocket Ethernet Adaptor driver has been added to the stan-
  dard distribution, and the DP8390 driver kit has been updated.  All
  problems related to the drivers should be fixed now.

- The old "WE" driver for the WD8013 has been removed.  We no longer
  use it, sooo...

- Again, new driver patches from Donald Becker are patched in.

- UDP now handles broadcasts correctly.

- Kernel stalls and TCP freezes should be fixed now.  Thanks to Corey
  Minyard.

- Some fixes have been applied to the UNIX domain code.

- New code from Fred Baumgarten and Gerald Heim has been added, for the
  new-style netstat(8) package.

- The SLIP driver has been fixed, and works fine now.

- Much changes in the interface to the IP routing table, to be more
  compatible with BSD UNIX.  We can now run BSD routed(8).

- The NET base utils (release 0.09) is needed for this version of the
  NET-2 kernel layer.

BUGS

Several known bugs remain:

- no IP fragmentation yet.  We need 'mbuf's for that, on which work is
  already being done.  Will be after Linux 1.0, alas.

- for the same reason: DDI is not finished yet.

- No IP Option Processing yet.  Partly because I don't yet feel like
  it...

INSTALLATION

	1.  Create a source directory called /usr/src/linux, and unpack
	    the standard kernel source there.

	2.  Remove the old NET code with the commands:

		# rm -rf /usr/src/linux/net

	3.  Remove two old include files:

		# rm -f /usr/src/linux/include/linux/socket.h
		# rm -f /usr/src/linux/include/linux/sock_ioctl.h

	4.  Unpack the "net-kernel.tgz" file:

		# cd /usr/src/linux
		# tar xfvz /tmp/net-kernel.tgz

	    This contains the new NET code plus patches to the rest of
	    the kernel.  Also note, that this archive overwrites any
	    current "Makefile", "config.in" or "Configure" files in the
	    top-level directory.

	5.  Make config && depend:

		# cd /usr/src/linux
		# make config
		# make depend

	    Choose the "TCP/IP Networking software version 2" in the
	    configuration section.

	6.  Make the kernel.

NETWORK PROGRAMS

NET-2 has changed a lot, so a new set of "base utilities" comes with
it.  These programs allow you to set up and maintain your network.
To compile and install:

	1.  Create the directory:

		# mkdir /usr/src/commands/usr.net/net

	2.  Unpack the distribution:

		# cd /usr/src/commands/usr.net/net
		# tar xfvz /tmp/net-base.tgz

	3.  Make the stuff.

		# make

Here is how I have things set up here:

/bin:
-r-xr-xr-x   1 bin      bin          3736 Apr 23 19:39 hostname

/etc:
-rw-r--r--   1 bin      bin             8 Apr 30 20:47 HOSTNAME
-rw-------   1 bin      bin             4 Feb 23 20:20 NETWORKING
-r-xr-xr-x   1 bin      bin          5028 Apr 23 19:44 arp
lrwxrwxrwx   1 root     staff          18 Mar 31 12:47 bootptab -> /conf/net/bootptab
lrwxrwxrwx   1 root     staff          18 Mar 31 12:47 diphosts -> /conf/net/diphosts
lrwxrwxrwx   1 root     staff          17 Mar 31 12:47 exports -> /conf/net/exports
lrwxrwxrwx   1 root     staff          18 Mar 31 12:47 ftpusers -> /conf/net/ftpusers
lrwxrwxrwx   1 root     staff          19 Mar 31 12:47 host.conf -> /conf/net/host.conf
lrwxrwxrwx   1 root     staff          15 Mar 31 12:47 hosts -> /conf/net/hosts
lrwxrwxrwx   1 root     staff          21 Mar 31 12:47 hosts.equiv -> /conf/net/hosts.equiv
lrwxrwxrwx   1 root     staff          11 Mar 31 12:47 hosts.lpd -> hosts.equiv
-r-x------   1 bin      bin          6272 Apr 23 19:44 ifconfig
-r-x------   1 bin      bin          2692 Apr 23 19:44 iflink
-r-x------   1 bin      bin          3480 Apr 23 19:44 ifsetup
lrwxrwxrwx   1 root     staff          19 Mar 31 12:47 inetd.conf -> /usr/etc/inetd.conf
lrwxrwxrwx   1 root     staff          28 Mar 31 12:47 named.boot -> /conf/net/named.d/named.boot
-rw-r--r--   1 root     root            3 May  8 09:06 named.pid
lrwxrwxrwx   1 root     staff          21 Mar 31 12:47 named.reload -> /usr/etc/named.reload
lrwxrwxrwx   1 root     staff          22 Mar 31 12:47 named.restart -> /usr/etc/named.restart
lrwxrwxrwx   1 root     staff          18 Mar 31 12:47 networks -> /conf/net/networks
lrwxrwxrwx   1 root     staff          26 Mar 31 12:47 nntpserver -> /conf/news/nntp/nntpserver
lrwxrwxrwx   1 root     staff          18 Mar 31 12:47 printcap -> /conf/net/printcap
lrwxrwxrwx   1 root     staff          18 Mar 31 12:47 protocols -> /usr/etc/protocols
lrwxrwxrwx   1 root     staff          21 Mar 31 12:47 resolv.conf -> /conf/net/resolv.conf
-r-x------   1 bin      bin          4492 Apr 23 19:44 route
lrwxrwxrwx   1 root     staff          12 Mar 31 12:47 rpc -> /usr/etc/rpc
lrwxrwxrwx   1 root     staff          17 Mar 31 12:47 services -> /usr/etc/services
lrwxrwxrwx   1 root     staff          21 Mar 31 12:47 syslog.conf -> /conf/net/syslog.conf
-rw-------   1 root     root            3 May  8 09:06 syslog.pid
-r-x------   1 bin      bin         27202 May  7 20:06 wdsetup

Note, that in LINUX/Pro, all system config files are kept in /conf, and
all non-needed binaries (like the TCP/IP and RPC servers) are in /usr/etc.

Have a look at the sample config files in the net-base distribution, and
pay close attention to the "rc.inet[12]" files, which set up your network.

SLIP

For SLIP users: yes, SLIP works.  Have a look at the new "dip" program
and its config file.  Dip is not perfect yet, but I am sure the guys
at Demon.Co.Uk will change this.  Right, guys? :-)