This book is an essential addition to your library if you want to understand IPv6 networking beyond just the surface. Initially the book will serve as a detailed introduction to IPv6, but the biggest value is later when it serves as a trusted reference book in your networking library. As the authors intended, it will serve as an implementation reference for IPv6 like how the Stevens' book on TCP/IP from the nineties served as the bible for TCP/IP (and IPv4) implementations. I still go back to that book when I want to understand some aspects of the BSD TCP/IP stack (which is the ancestor to many contemporary TCP/IP stacks.) I expect to use this book as a reference in the same way for many years as we start migrating to IPv6.
Who better to write an implementation-oriented book on IPv6 than the developers involved in the KAME project and the lead architect on the IPv6 stack of VxWorks? The KAME developers wrote their code in close sync with the evolution of IPv6 in the IETF and were privy to not just the authoring of IPv6 RFCs but the hundreds of invaluable side discussions that typically happen at the IETF conferences and mailing lists. When reading the book you can make this out easily from the interesting insights the authors provide on various aspects of the IPv6 protocols design as well as reasons for some implementation choices versus others. I also like the several places in the book where the IPv6 design is compared and contrasted with similar aspects of IPv4. This is very useful since most of us that buy this book have been working for a while with IPv4 and understand its design.
The book assumes that the reader is reasonably familiar with TCP/IP IPv4 and BSD Sockets programming. If you're already familiar with IPv6 then you can jump straight into almost any place in the book. If you are new to IPv6 and want to use this book initially as an introduction I suggest that you read the book in two passes. In the first pass you should read all the chapters, stopping in each chapter before the "Code Introduction" subsection. This first pass will give you an introduction to the IPv6 protocol, IPv6 addressing, ICMPv6, Neighbor Discovery (ND), Autoconfiguration and the Sockets API for IPv6 - these constitute the core of what you need to know about IPv6. You could stop with this pass and then use the rest of the book as a reference. Or you could keep going and do a second pass of all chapters and go through the code sections. This second pass will now be much easier since you now have a good overall grasp of IPv6.
When it comes to the code walk-throughs and explanation of data structures I found that the authors have done a very meticulous job. Every interesting line of code is explained in detail and as I mentioned before there are many useful insights into "why's of the code" rather than dry comments on what it does. The book also comes with 2 CDROMs which contain all the referenced KAME source code and the FreeBSD 4.8 release. However, if you're like me and want only the latest/greatest release, I suggest going to the latest release of your choice of a BSD-based OS and browsing those source files instead. As a Mac guy I went with the latest kernel sources for Mac OS X 10.4. The Mac OS X Darwin kernel (a.k.a. XNU, not to be confused with Xinu OS from Comers' TCP/IP books) is a derivative of BSD built on top of a MACH microkernel. The IPv6 stack in Darwin/XNU is a port from KAME. I found it relative easy to follow the code explanations in the book with the XNU version of the IPv6 code. As you would expect, the line numbers from the book don't match the XNU line numbers, but the filenames are identical and it is relatively easy to find the corresponding code snippets referenced in the book. There were definitely some differences between the two code trees, but I did not run into anything that was substantially different in the sections I read.
All in all this book is a great addition to my networking library and I am looking forward to the second book from the authors that plans to cover the ancillary protocols to IPv6 such as IPv6 routing, multicasting, DNS, etc.