mirror of https://github.com/tLDP/LDP
253 lines
10 KiB
XML
253 lines
10 KiB
XML
<!-- $Id$ -->
|
|
|
|
<preface id="intro">
|
|
<title>Introduction</title>
|
|
<para>
|
|
This guide is as an overview of the IP networking capabilities of linux
|
|
kernels 2.2 and 2.4. The target audience is any beginning
|
|
to advanced network administrator who wants practical examples
|
|
and explanation of rumoured features of linux.
|
|
As the Internet is lousy with documentation on the nooks and crannies of
|
|
linux networking support, I have tried
|
|
to provide links to existing documentation on IP networking with linux.
|
|
</para>
|
|
<para>
|
|
The documentation you'll find here covers kernels
|
|
2.2 and 2.4, although a good number of the examples and concepts may also
|
|
apply to older kernels. In the event that I cover a feature that is
|
|
only present or supported under a particular kernel, I'll identify which
|
|
kernel supports that feature.
|
|
</para>
|
|
<section id="intro-assumptions">
|
|
<title>Target Audience, Assumptions, and Recommendations</title>
|
|
<para>
|
|
I assume a few things about the reader. First, the reader has a basic
|
|
understanding (at least) of IP addressing and networking.
|
|
If this is not the case, or the reader has some trouble following my
|
|
networking examples, I have provided a section of
|
|
<link linkend="links-general-ip">links to IP layer tutorials and
|
|
general introductory documentation</link> in the appendix.
|
|
Second, I assume the reader is comfortable with command line tools
|
|
and the Linux, Unix, or BSD environments. Finally, I assume the
|
|
reader has working
|
|
network cards and a Linux OS. For assistance with Ethernet cards, the
|
|
there exists a good
|
|
<ulink url="http://www.tldp.org/HOWTO/Ethernet-HOWTO.html">Ethernet
|
|
HOWTO</ulink>.
|
|
</para>
|
|
<para>
|
|
The examples I give are intended as tutorial examples only. The user
|
|
should understand and accept the ramifications of using these examples
|
|
on his/her own machines. I recommend that before running any example on a
|
|
production machine, the user test in a controlled environment.
|
|
I accept no responsibility for damage, misconfiguration or
|
|
loss of any kind as a result of referring to this documentation.
|
|
Proceed with caution at your own risk.
|
|
</para>
|
|
<para>
|
|
This guide has been written primarily as a companion reference to IP
|
|
networking on Ethernets. Although I do allude to other link layer types
|
|
occasionally in this book, the focus has been IP as used in Ethernet.
|
|
Ethernet is one of the most common networking devices supported under
|
|
linux, and is practically ubiquitous.
|
|
</para>
|
|
|
|
<!--
|
|
<para>
|
|
A
|
|
<link linkend="glossary">glossary</link> accompanies this document to
|
|
explain networking and linux terms found in the text.
|
|
</para>
|
|
-->
|
|
|
|
</section>
|
|
<section id="intro-conventions">
|
|
<title>Conventions</title>
|
|
<para>
|
|
This text was written in
|
|
<ulink url="http://www.docbook.org/">DocBook</ulink> with
|
|
<ulink url="http://vim.sourceforge.net/"><command>vim</command></ulink>.
|
|
All formatting has been applied by
|
|
<ulink url="http://xmlsoft.org/XSLT/">xsltproc</ulink> based on
|
|
<ulink url="http://docbook.sourceforge.net/projects/xsl/">DocBook</ulink>
|
|
and
|
|
<ulink url="http://www.tldp.org/LDP/LDP-Author-Guide/usingldpxsl.html">LDP XSL
|
|
stylesheets</ulink>.
|
|
Typeface formatting and display
|
|
conventions are similar to most printed and electronically distributed
|
|
technical documentation. A brief summary of these conventions
|
|
follows below.
|
|
</para>
|
|
<para>
|
|
The interactive shell prompt will look like
|
|
</para>
|
|
<para>
|
|
<prompt>[root@hostname]# </prompt>
|
|
</para>
|
|
<para>
|
|
for the root user and
|
|
</para>
|
|
<para>
|
|
<prompt>[user@hostname]$ </prompt>
|
|
</para>
|
|
<para>
|
|
for non-root users, although most of
|
|
the operations we will be discussing will require root privileges.
|
|
</para>
|
|
<para>
|
|
Any commands to be entered by the user will always appear like
|
|
</para>
|
|
<para>
|
|
<userinput>{ echo "Hi, I am exiting with a non-zero exit code."; exit 1 }</userinput>
|
|
</para>
|
|
<para>
|
|
Output by any program will look something like this:
|
|
</para>
|
|
<para>
|
|
<computeroutput>Hi, I am exiting with a non-zero exit code.</computeroutput>
|
|
</para>
|
|
<para>
|
|
Where possible, an additional convention I have used is the suppression
|
|
of all hostname lookup. DNS and other naming based schemes often
|
|
confuse the novice and expert alike, particularly when the name resolver
|
|
is slow or unreachable. Since the focus of this guide is IP layer
|
|
networking, DNS names will be used only where absolutely unambiguous.
|
|
</para>
|
|
</section>
|
|
<section id="intro-bugs">
|
|
<title>Bugs and Roadmap</title>
|
|
<para>
|
|
Perhaps this should be called things that are wrong with this document,
|
|
or things which should be improved. See the
|
|
<filename>src/ROADMAP</filename> for notes on what is likely to be
|
|
forthcoming in subsequent releases.
|
|
</para>
|
|
<para>
|
|
The internal document linking, while good, but could be better.
|
|
Especially lame is the lack of an index. External links should
|
|
be used more commonly where appropriate instead of sending users
|
|
to the links page.
|
|
</para>
|
|
<para>
|
|
If you are looking for LARTC topics, you may find some LAR topics
|
|
here, but you should try the <ulink url="http://lartc.org/">LARTC
|
|
page</ulink> itself if you have questions that are more TC than LAR.
|
|
Consult <xref linkend="ax-links"/> for further references to available
|
|
documentation.
|
|
</para>
|
|
</section>
|
|
<section id="intro-note">
|
|
<title>Technical Note and Summary of Approach</title>
|
|
<para>
|
|
There are many tools available under linux which are also available under
|
|
other unix-like operating systems, but there are additional tools and
|
|
specific tools which are available only to users of linux. This guide
|
|
represents an effort to identify some of these tools. The most concrete
|
|
example of the difference between linux only tools and generally available
|
|
unix-like tools is the difference between the traditional
|
|
<command>ifconfig</command> and <command>route</command> commands,
|
|
available under most variants of unix, and the &iproute2;
|
|
command suite, written specificially for linux.
|
|
</para>
|
|
<para>
|
|
Because this guide concerns itself with the features, strengths, and
|
|
peculiarities of IP networking with linux, the &iproute2;
|
|
command suite assumes a prominent role. The &iproute2;
|
|
tools expose the strength, flexibility and potential of the linux
|
|
networking stack.
|
|
</para>
|
|
<para>
|
|
Many of the tools introduced and concepts introduced are also detailed
|
|
in other HOWTOs and guides available at
|
|
<ulink url="http://www.tldp.org/">The Linux Documentation
|
|
Project</ulink> in addition to many other places on the Internet and in
|
|
<link linkend="biblio">printed books</link>.
|
|
</para>
|
|
</section>
|
|
<section id="intro-closing">
|
|
<title>Acknowledgements and Request for Remarks</title>
|
|
<para>
|
|
As with many human endeavours, this work is made possible by the efforts
|
|
of others. For me, this effort represents
|
|
almost four years of learning and network administration. The knowledge
|
|
collected here is in large measure a repackaging of disparate
|
|
resources and my own experiences over time. Without the greater
|
|
linux community, I would not be able to provide this resource.
|
|
</para>
|
|
<para>
|
|
I would like to take this opportunity to make a plug for my employer,
|
|
<ulink url="http://www.securepipe.com/">SecurePipe, Inc.</ulink> which has
|
|
provided me stable and challenging employment for these (almost) four
|
|
years. SecurePipe is a managed security services provider specializing
|
|
in managed firewall, VPN, and IDS services to small and medium sized
|
|
companies. They offer me the opportunity to hone my networking skills
|
|
and explore areas of linux networking unknown to me. Thanks also to
|
|
SecurePipe, Inc. for hosting this cost-free on their servers.
|
|
</para>
|
|
<para>
|
|
Over the course of the project, many people have contributed suggestions,
|
|
modifications, corrections and additions. I'll acknowledge them briefly
|
|
here. For full acknowledgements, see
|
|
<filename>src/ACKNOWLEDGEMENTS</filename> in the DocBook source tree.
|
|
</para>
|
|
<anchor id="intro-acknowledgements"/>
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>
|
|
Russ Herrold, <emphasis>2002-09-22</emphasis>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Yann Hirou, <emphasis>2002-09-26</emphasis>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Julian Anastasov, <emphasis>2002-10-29</emphasis>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Bert Hubert, <emphasis>2002-11-14</emphasis>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Tony Kapela, <emphasis>2002-11-30</emphasis>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
George Georgalis, <emphasis>2003-01-11</emphasis>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Alex Russell, <emphasis>2003-02-02</emphasis>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
giovanni, <emphasis>2003-02-06</emphasis>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Gilles Douillet, <emphasis>2003-02-28</emphasis>
|
|
</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
<para>
|
|
Please feel free to point out any irregularities, factual errors,
|
|
typographical errors, or logical gaps in this
|
|
documentation. If you have rants or raves about this documentation,
|
|
please mail me directly at <email>mabrown@securepipe.com</email>.
|
|
</para>
|
|
<para>
|
|
Now, let's begin! Let me welcome you to the
|
|
pleasure and reliability of IP networking with linux.
|
|
</para>
|
|
</section>
|
|
</preface>
|