Before you can configure the networking software you must obtain all of the bits and pieces that make it up. These include the current version of the kernel code (version 1.0 or later), the correct system libraries, the tcp/ip configuration programs and files (e.g. /sbin/ifconfig, /etc/hosts etc.), and finally a set of network application programs (such as telnet, ftp, rlogin etc.).
If you obtained Linux from a distribution you may already have all that you need. Check and make sure that you do. For example, some Linux distributions come with all of the network configuration files, binaries, libraries, and kernel installed, so there's no reason to get the following files.
NOTE: they may be in directories and files different to those specified in this HOWTO document
If you DO have the network software, skip to the `Configuring the kernel' section. If you DO NOT have the network software follow the following directions.
Version 1.0 of the Linux kernel is the production version. Any of the Linux kernels after that release are enhancements or bug fixes. If you feel at all concerned about the possibility of having to patch and modify the kernel source, then you should stick to this release, as it will do most of what you want it to. In the case of the networking code though, I strongly suggest you just take a deep breath and follow the newer releases of code, as there have been many changes in the newer version kernels that affect networking. I know you hear it from everyone and everywhere, but when trying out any new version of kernel software you should always ensure that you have sufficient backups of your system just in case something goes seriously wrong while you are testing.
The current kernel version is found in:
ftp.funet.fi
/pub/OS/Linux/PEOPLE/Linus/v1.1/v1.1.52.tar.gz
This is a gzipped file, so you will need gzip to uncompress it.
To install it, try:
# cd /usr/src
# mv linux linux.old
# gzip -dc v.1.1.52.tar.gz | tar xvf -
You may also find some files called patch46.gz ...
in the same
directory. These are patch files. If you have a linux kernel that is
version 1.1.52 then what this means is that you have linux kernel version
1.1.0 with patches 1 to 52 applied, so you won't need to apply any of these.
If there are any patch files that are greater than the version of kernel you
have, you should obtain all of those above, and apply them, in sequence,
with something like the following commands:
# cd /usr/src
# gzip -dc .../patch1.gz | patch -p0
# gzip -dc .../patch2.gz | patch -p0
# gzip -dc .../patch3.gz | patch -p0
...
You'll want at least version 4.4.2 of libc, as there were problems with earlier version that affected subnet masks.
The current libraries (libc-4.6.20) can be found in:
sunsite.unc.edu
/pub/Linux/GCC/
You will need at least the following files:
You MUST read release.libc-4.6.20 before you install the libraries. Please note that to use release 4.5.26 you will also need at least GCC version 2.6.2, and Linux kernel 1.1.52 or later.
You will need the utility suite that provides tools to configure your network support.
The current NET-2 utility suite is available from:
sunacm.swan.ac.uk
/pub/misc/Linux/Networking/PROGRAMS/NetTools/net-tools-1.1.56.tar.gz
Because the kernel networking code is still changing some changes to the network tools have been necessary as new kernels are released, so you will need to choose the version that is appropiate for the kernel version you intend to use.
The filenames reflect the earliest version of kernel that the tools will work with. Please choose the filename whose version equals, or is less than the version of kernel source you intend to use.
To build and install the tools, you should try:
# cd /usr/src
# mkdir net-tools
# cd net-tools
# gzip -dc net-tools-1.1.56.tar.gz | tar xvf -
# make config
# make
If everything makes ok, then:
# make install
If you use a kernel version 1.1.26 or earlier you should look in:
sunacm.swan.ac.uk
/pub/misc/Linux/Networking/PROGRAMS/Other/net032/
In this directory you will find three versions of the network tools. The following table lists net-032 package name with the relevant kernel versions:
net-0.32d-net3.tar.gz 1.1.12+
net-0.32b.tar.gz 1.1.4+
net-0.32.old.tar.gz pre 1.1.4 kernels
These packages include the essential network configuration programs such as ifconfig, route, netstat etc. These will be discussed later.
You will want a number of network application programs. These are programs
like telnet, ftp, finger and their daemons at
least. Florian La Roche, <flla@stud.uni-sb.de>
has put together
a fairly complete distribution of network applications in both binary and
source form. The tcp/ip application binaries and some sample config files
are found in:
ftp.funet.fi
/pub/OS/Linux/PEOPLE/Linus/net-source/base/NetKit-A-0.07.bin.tar.gz
/pub/OS/Linux/PEOPLE/Linus/net-source/base/NetKit-B-0.06.bin.tar.gz
If there are newer versions then use the newer versions. Please read the
README
file first just to make sure that you have the
necessary prerequisites.
Be sure to make backups of any config files important to you. If this is a new installation you probably don't have any. You can unpack each of the packages above with the command:
# cd /
# gzip -dc filename.tar.z | tar xpvlf -
IMPORTANT NOTE: Florian has built and prepackaged these tar
files for your convenience. Florian has attempted to make them as
complete as possible and has included a distribution of the binaries
found in the net-tools-n.n.nn
releases. Unfortunately Florian
has chosen not to use the same directory structure as Alan did when he
prepared the installation script for the net-tools. This will mean that
you should be very careful when installing them. Florian will change this
later so that this difference is not a problem, but until then, I suggest
you do the following instead of the above:
- Unpack the binaries somewhere safe:
# cd /usr/src
# mkdir NetKit
# cd NetKit
# gzip -dc NetKit-A-0.07.bin.tar.gz | tar xpvlf -
# gzip -dc NetKit-B-0.06.bin.tar.gz | tar xpvlf -
- Remove Florians copies of the network tools previously described:
# rm ./bin/hostname ./sbin/route ./sbin/ifconfig ./sbin/netstat
# rm ./usr/sbin/arp ./usr/sbin/rarp ./usr/sbin/slattach
- Copy Florian's files into their new home:
# cp -vrpd . /
If you want to add some developmental, or Alpha/Beta test code, such as AX.25 support, you will need to obtain the appropriate support software for those packages. Please check the relevant sections for those packages in this document for more detail.
Next Chapter, Previous Chapter
Table of contents of this chapter, General table of contents
Top of the document, Beginning of this Chapter