Book Reviews



By James Pyles

Practical Packet Analysis: Using Wireshark to Solve Real-World Network Problems

You have downloaded and installed Wireshark (formally Ethereal), and you have figured out how to start capturing packets, but now what are you supposed to do with the packets? Chris Sanders, a network admin who manages more than 1800 workstations, 20 servers, and an end-user base of 5000, has poured his experience into a scant 192 pages to help you tackle the problem of packet analysis.

Chapters 1 through 3 offer Networking 101, in which Sanders presents the basics of the seven-layer OSI Model; definitions of packet analysis and packet sniffers, the Wireshark sniffer in particular; and everything else you probably already know if you are a network admin. Of course, if you are new to network administration, a bit of a refresher course wouldn't hurt,

If you already manage a network but have only a passing familiarity with Wireshark, Chapters 5 and 6 - "Advanced Wireshark Features" and "Common Protocols" - will appeal to you. Once the foundation is firmly established, Chapter 7 launches into practical packet analysis scenarios that you are likely to run into on the job.

In the following chapters, Sanders covers the different types of situations and headaches you are bound to manage in day-to-day network administration, focusing on how to use Wireshark in monitoring and diagnosing of such issues. Chapter 10, "Sniffing into Thin Air," covers various wireless scenarios.

I was pleased throughout the book to see both Windows and Linux examples presented.

All of the capture files cited in this book are available from either http://www.nostarch.com/packet.htm or http://www.chrissanders.org/PPA.

Practical Packet Analysis is an essential book if you are responsible for network administration on any level. Sanders provides something for both the student and the guru alike. The book covers both Linux and Windows and recognizes the heterogeneous nature of networking. Chris Sanders deserves kudos for writing a book that is both a textbook and a reference for network managers.

Chris Sanders

192 pages

No Starch Press, 2007

ISBN-13: 978-159327-149-7

£ 20.16, US$ 39.95, EUR 29.68

Ubuntu for Non-Geeks, 2nd Edition

To refresh my memory, I reread my review of the first edition of Ubuntu for Non-Geeks before looking at this new edition (http://www.linux-magazine.com/issue/72/Book_Reviews.pdf). Quite a lot of buzz lately in the Linux community stems from Dell offering Ubuntu pre-loaded on selected desktop and laptop computers, so the time is especially right for this second edition, which is updated for Ubuntu 7.04, "Feisty Fawn."

The book's subtitle, "A Pain-Free, Project-Based, Get-Things-Done Guidebook," describes the focus. The Table of Contents is the same as the last edition, although I did notice a significant change in Chapter 9, "More Ways to Install Programs." In the first edition, Grant started by teaching the reader about tarballs and how to compile from source, and I recall thinking this was a rather ambitious project for a "non-geek." With the second edition, Grant introduces Automatix and Alien first and teaches the reader to use Automatix to install Skype. The chapter still shows how to install Xmahjongg and the Java Runtime Environment, but this simple rearrangement of information makes the material more accessible.

The new edition is missing the appendix on "Checking the Integrity of Downloaded ISOs," but because the installation CD accompanies the book, the reader won't need this information. The "Resources" appendix is the same information as in the first edition, but it is presented in a slightly different format.

The second edition of Ubuntu for Non-Geeks is the same book as the first edition except that it is updated for Feisty Fawn. New Ubuntu users who never read the first edition will especially benefit from this book. Now that Ubuntu 7.04 computers are available for purchase, Grant's book can serve as the "missing" owner's manual for new Ubuntu computers.

Rickford Grant Paperback

345 pages

No Starch Press, 2007

ISBN-13: 978-159327-152-7

£ 17.56, US$ 34.95, EUR 26.03

Professional Linux Programming

The back cover of Professional Linux Programming states, "This book is for professional programmers who want to understand the internals of a typical Linux system. It is also for those who want to solve a particular problem while creating or modifying applications using Linux."

Chapter 1 is a compressed history lesson and directory of where to find Linux. This chapter covers what many other Linux books do and even quotes from Torvalds' 1991 Usenet announcement of the initial release of the Linux kernel.

Chapter 2 launches into material that will actually be interesting to programmers, and particularly to programmers who don't typically develop on or for the Linux platform. The authors progress from the general to the specific. That approach makes sense if you want to get experienced programmers to think in "Linux-ese" and then follow up with specific Linux programming skill sets.

Professional Linux Programming doesn't offer a code sample until Chapter 3. Because the book moves from the general to the specific, the conceptual groundwork must be laid before building anything on it. Programmers with a background in C will have a leg up, but coders with histories in other languages (and specifically those who develop on Windows platforms) will need to ramp up a bit.

Chapter 5 launches into "Network Programming," but the real meat comes in Chapter 7, when "Kernel Development" is introduced. Chapter 7 is only the beginning of kernel programming, and this text spends a significant portion of its resources delving into the topic.

The last few chapters of the book are a bit disappointing. Desktop development is presented in Chapters 11 and 12, with KDE apparently missing in action. "Graphics and Audio" and "LAMP" are discussed at the end of the book, but I really thought these topics should have been treated more thoroughly. Additional pages of "post-kernel" programming would have offered a more well-rounded book.

Overall, I thought Professional Linux Programming did a good job of introducing the experienced programmer/Linux neophyte to the intricacies of Linux programming, and it paid specific attention to kernel development. Kudos to Masters and Blum on a fine first edition, but for the second edition, I'd like to see the later chapters fleshed out a little better.

Jon Masters and Richard Blum

465 pages

Wrox, 2007

ISBN-13: 978-0471776130

£ 20.06, US$ 39.99, EUR 29.57