Linux, Unix, /etc

Danger Will Robinson! You are now entering a condescending Unix user zone!
Sponsored links (requires javascript):

A Reading List for the Linux Newbie

3. Getting Connected

I've thought it worth while to provide a seperate section on networking, because that is by far the most complex and demanding aspect of your box, as well as for many poeple the most important — whats a computer without Internet access these days? There are two books that stand out from the crowd.

3.1. TCP/IP Network Administration

This is the one I cut my teeth on. Back in 1994, talking about Linux in a Unix book was unheard of, so you can imagine the fun I had trying to apply advice aimed at BSD and Solaris users to my first humble system based on the 0.99pl14 kernel!
What This Book Means To Me
An easy way to tell how often as book has really been read is to glance at the page side of the closed volume: dirty sides == often read (or a reader who doesn't wash often enough — hmmm...). My old copy of TCP/IP Network Administration has an imprint of dust, grime and coffee stains all down this side, testimony to how often it has been consulted since I bought it back in 1994. In that first edition, the system-specific stuff spanned Solaris, BSD and SysV: narry a mention of then-humble Linux. The second edition uses Linux, Solaris and BSD, roughly in that order of importance. How times change!
Outline of the Book
The book is very concise throughout, and repays careful reading. Much of the content has not aged at all; but some has, quite severely. Thankfully, O'Reilly brought out a second edition a few years ago, and this is still pretty up-to-date. Not only is it brought up to date, but also revised, with several chapters getting a major change in focus, especially 3 & 9; app. A is new, as is D. There is an increase in size: the book is physically bigger (the new O'Reilly format), and has more pages. Except where indicated, I'm talking about this second edition.

The best thing I can do here is simply take you through the chapters. See for yourself how much he covers, and how well. The book falls naturally into three parts, although it isn't so divided in the ToC. I've taken the liberty of splitting it up accordingly here. To avoid repetition, where I don't say anything about a chapter, you can take it as read that I mean: "Good stuff. All essential info. is here, concisely presented".

About TCP/IP
The first chunk of the book, three chapters long, introduces us to how a TCP/IP network actually works.
1 Overview of TCP/IP
A decent, concise introduction to TCP & IP, giving a little history of the protocol, explaining the OSI Reference Model, then looking at the implementation of these ideas in TCP/IP.
2 Delivering the Data
IP Addresses, Subnetting, Routing, all the usual suspects.
3 Network Services
Replacing the 1st ed.'s Name Service Concepts with a more general introduction which includes DNS. A definite improvement.
Building the Network
Next, we start getting our network up and running, from scratch.
4 Getting Started
5 Basic Configuration
6 Configuring the Interface
Here Hunt considers both PPP and SLIP. But why bother with SLIP at all nowadays? The space would better have been given over to more details about PPP. Not that the existing treatment isn't adequate; but some more advice about tuning would have been nice, for example.
7 Configuring Routing
8 Configuring DNS Name Service
Still the old BIND, alas! But a useful tutorial nonetheless.
9 Network Applications
This chapters covers NFS, lpd, NIS, BOOTP, DHCP, POP: short and sweet sections on each. Also, the first of the dreading screenprints rears its ugly head (see below). One point that occurs to me is that the only mention of the service switch file occurs in the NIS section. This is out of date now, for Linux at least — /etc/nsswitch.conf is an important file, controlling the implementation of certain system services such as host and user name lookup.
10 sendmail
The 1st edition chapter, after a brief introduction and a look at aliases, dropped one straight into the gristly details of /etc/sendmail.cf. I had many a happy hour struggling with this — I don't think! The 2nd ed. covers the m4 macro alternative, which anyone with any sense will be using. For me, this is *the* classic Hunt chapter. A nice blend of old and new — m4 makes things easier, but its good to know what it is doing — and essential if you have custom requirements.
Running the Network
Now that the network is up, we need to know how to look after it. Two chapters, and a chunk of appendices, tell us what we need to know.
11 Troubleshooting TCP/IP
An excellent introduction to what does after all constitute the bulk of work on your average network — fixing it when it goes wrong! What tools to use, and how to use them.
12 Network Security
Perhaps the best chapter in the book. Hunt really fits a lot of essential information into a small compass, without it seeming crammed or skimpy. On the other hand, he knows when to stop, refusing to cover firewalls on the grounds that an adequate treatment is beyond the scope of the book. He goes on to say, "Unless you have skilled Unix systems administrators with adequate time, a do-it-yourself firewall installation is a mistake ... If your information is valuable enough to protect with a firewall, it must be valuable enough to protect with a professionally installed firewall". This overstates the case, I think. Firewalls are now a must for any machine connected to the Net. Various "script kiddie" DoS attacks can be prevented by packet filtering, for instance, and the rules to do this are well-known (or at least, available if you go look).
13 Internet Information Resources
Why this isn't an appendix, I don't know. There is a useful guide to setting up an ftp server in here, for some reason. But, oh, dear: there are screen-prints all over the place, 7 in all, each one taking up most of the page. I do hope O'Reilly are succumbing to the lure of padding — I can see no other purpose to this stuff. But then, I have a bee in my bonnet about screen-prints... er, I'll get me coat... The Appendices have seen quite a few changes. The first two, "A Network Contacts" and "B Forms", have gone entirely, replaced by "A PPP Tools", a welcome change. B A gated Reference A dhcpd Reference D named Reference E A sendmail Reference This used to be a sample sendmail.cf, and of limited use, frankly (if you can actually read that stuff, you need to get out more). The new version is much, much better. Most if not all of the reference material you are likely to need for sendmail is contained in these few pages. It really is "a sendmail reference", covering compilation from source, command line options, a comprehensive list of m4 macro definitions, and a listing of the /etc/sendmail.cf options that can be set with the m4 macros. This is really first-rate. This part alone justifies an upgrade from v1.3. F Selected TCP/IP Headers A reference for those headers referred to in the troubleshooting chapter. The first edition continued with Appendix G, a reference for passwd+, a dropin replacement for the traditional Unix password suite. With shadow passwords now in near-universal use, this has passed its sell-by date, and has been pruned.
Why This Book Is Important
The book is a guide to TCP/IP Networking under Unix: the specific Unices considered are Linux, Solaris, BSD. There are advantages and disadvantages to such a "generic Unix" approach. Hunt's book is better in the higher-level chapters, (and also in the lowest-level chapter) because of this. In areas where OS-specific information is required, he does less well. Also, it is a little *too* concise sometimes. This is not a beginners' book.

In summary, TCP/IP Network Administration is a must-have. Unlike many books, the revised 2nd edition contains so many changes and so much new matter, that it's really a new book. If you're trying to work from the 1st edition, upgrading to the 2nd would be advisable.

How To Get The Book
Title: TCP/IP Network Administration
Author: Craig Hunt
Publisher: O'Reilly
ISBN: 093717582X (1st ed.); 1565923227 (2nd ed.)
Price: £22.00; $37.95
Pages: 472; 612
Date: August 1992; January 1998.

3.2 Linux Network Administrator's Guide

One of the first productions of the Linux Dcoumentation Product was the first verision of this book. That's now out of print, and can't be recommended. The sencond version, also published by O'Reilly, is much better, though I would find the Hunt book easier if coming fresh to TCP/IP et al. Pick one; get both if you can afford it .
What This Book Means To Me
The Linux Network Administrator's Guide (hereinafter known as "NAG") was the first Linux book I bought. Up until them, I'd avoided buying any book that was Linux-specific — not that in that year of 1995 there was much to choose from. First off, I used Linux because it's Unix, and free Unix. That's free as in beer, by the way: I didn't work out the Free Software thing until I was well into using Linux. Because I was focused on Unix, I tended to rely on classic Unix books rather than Linux-specific texts: notably, The Unix Programming Environment (this, as you're all now doubtless sick of hearing, was "The Book That Made Me Want To Use Unix" (TM)). And then, a *book* seemed somehow not to fit in with the whole "hack it youself" Linux mentality; I enjoyed that hacking, all that grepping around in the HOWTOs, all that swearing and pounding the keyboard... well, I suppose I *must* have enjoyed it, or I wouldn't have done it... This is probably a less personal review than some others in this series, in the sense that I never found NAG that useful; by the time the more promising 2nd edition came out at last, in June of this year, I already knew this stuff, mostly learned the hard way. However, unless stated explicitly otherwise, I am of course speaking of this second edition in what follows.
Outline of the Book
The book is 24 chapters straight-through; but it seems to me that, like Gaul, the whole thing falls into three parts. In the first, the basics of TCP/IP networking are dealt with, taking us from an introduction to the protocols through to configuring networking hardware and getting the network acutally up and running. In the second, we turn to basic low-level features of our working network. In the third, we consider network services, what the network actually exists to do from day to day. I like this structure, though I suppose it's an obvious one. We follow a path from a newbie install through to a working network providing services. Because of the length of the book, I haven't done a blow-by-blow account of each chapter. Instead, here's the TOC, split up as I think it should be, and with remarks on points that particularly held my notice.
Part I
I won't cover the chapters in this first part in any detail. They form an adequete, detailed introduction to the subject.
1 Introduction to Networking
2 Issues of TCP/IP networking
3 Configuring the Networking Hardware
4 Configuring the Serial Hardware
5 Configuring TCP/IP Networking
6 Name Service and Resolver Configuration
Covers the new config file format introduced with BIND 8.
7 Serial Line IP
8 The Point-to-Point Protocol
I got an ISDN line a few years ago, so speaking for myself would at that time have appreciated some coverage of ipppd here. Using ISDN under Linux is a somewhat neglected area so far as documentation goes, and this book is unfortunately no exception: the index doesn't even mention the topic. Running Linux has a good section, and it's a shame not to see NAG building on that.
Part II
Now that we can ping other machines locally or across the Net, our job is far from over.
9 TCP/IP Firewall
One of the more irritating aspects of Linux development in recent years has been the changes to the packet-filtering in the kernel. First we had ipfwadm, then ipchains, and then, just when we were getting used to that, it was announced that 2.4 would have yet a third packet-filtering interface, called netfilter. The last, defintive version? God only knows. Let's hope so. Whatever about that, NAG does a good job of covering all three. A good introduction to firewalls, too, though of course it can't hope to cover all or even most of what you need to know if you're in the business of building firewalls. But it will get you up and running with the Linux tools you'll need for such building.
10 IP Accounting
11 IP Masquerade and Network Address Translation
12 Important Network Features
Runs briefly through inetd, tcpd, /etc/services, /etc/rpc, the r commands, and the configuration of ssh (client & server). tcpd, otherwise known as TCP Wrappers, deserves fuller coverage, and should have got a chapter to itself: it is certainly of less specialist interest than "IPX and the NCP Filesystem", which does.
Part III
With a secured networked in place, the time has come, if we are providing anything more than straight-through access to the Net, to offer our users some local services.
13 The Network Information System
14 The Network File System
15 IPX and the NCP Filesystem
16 Managing Taylor UUCP
17 Electronic Mail
This is a good introduction to the subject, but the section on configuring elm is superfluous; short though it is, it's a waste of space in a book that needs every inch.
18 Sendmail
This is good. Personally I prefer the treatement in TCP/IP Network Administration, but doubtless either will do.
19 Getting Exim Up and Running
If I'd had the time, I would have installed Exim from scratch , and see just how much this chapter helped me — but I hadn't, so I didn't. Oh well.
20 Netnews
Well, I'll admit I'm prejudiced, but to me five chapters totalling 58 pages is too much to devote to Usenet. The service just isn't that important today. If I may repeat myself, it would have been to turn over at least some of this space to covering TCP Wrappers in fuller detail.
21 C News
22 NNTP and the NNTPD Daemon
23 Internet News
24 Newsreader Configuration
Appendices
A Example Network, B Useful Cable Configurations, C Copyright Information, and D SAGE.
Why This Book Is Important
The 1st edition of this book was somewhat of a disappointment. It did cover some areas well, but left out a lot, for example, no sendmail; and, for the size of the book, far too much about Usenet, a relatively unimportant topic for most Linux users. The 2nd edition shows just how much a book can be improved by being *published* rather than written and released on the web. O'Reilly clearly have a lot to do with making the 2nd edition so much better than the first. This is not to gainsay Terry Dawson's contribution. That name will be well-known to any readers of Linux HOWTOs, and I think he's done a great job in expanding and improving on the original.

So how does this compare with the book before it in this list, TCP/IP Network Administration by Craig Hunt? Hunt assumes a lot; NAG goes through everything step by step. NAG is great on actually getting TCP/IP up and running on your machine — perhaps this is overkill when today's distributions do so much for you, but it is nice to have nevertheless. The first eight chapters of NAG, pp.1-124, are all about this. Hunt, on the other hand, has a tendency to say, or rather imply, RTFM! Hunt is easier to read straight through; NAG is more a work of reference. When something goes wrong, read the appropriate section, but I'd defy anyone to read it from cover to cover. This is a fault, but not a big one. NAG is very up-to-date: BIND 8, nsswitch.conf, all three varieties of Linux firewall admin., for example. Hunt, dating from 1996 for the second edition, is already sadly out-of-date in these areas. Think of this book as all the various HOWTOs concerned with Network consolidated, enhanced, and printed. That's a big bundle.

In conclusion, the 2nd edition of Linux Network Administrator's Guide is indeed so much improved on the first edition that it now makes a well-nigh indispensable companion to Hunt. In fact, the relationship is now reversed; if there is *one* must-get book, it's now NAG rather than Hunt. But I still recommend both.

How To Get This Book
Title: Linux Network Administrators Guide
Author: Olaf Kirch (1st ed.); Terry Dawson (2nd ed.)
Publisher: O'Reilly
ISBN: 1565924002
Price: $34.95
Pages: 474
Date: January 1995 (1st ed.); June 2000 (2nd ed.)
Buy this book from Amazon or Fatbrain

O'Reilly tell us that "The online version of this book, which at time of printing contains exactly the same text as the O'Reilly printed version, is available under the GNU FDL... The book is available online at http://www.linuxdoc.org/LDP/nag/nag.html.


[back to Linux, Unix, /etc]



Copyright © 1995-2007 Paul Dunne,

Sponsored links (requires javascript):