This chapter discusses various important aspects of networking-related kernel configurations on which we will rely heavily as we advance throughout this book. Some of these features need to be enabled at kernel compile time, some utilize loadable kernel modules, and others require user-space configuration tools and utilities such as the firewall or virtual local-area network (VLAN) configuration tasks. In the context of kernel parameters, the sysctl utility is introduced and thoroughly discussed.
This chapter does not cover physical interfaces; Chapter 5, "Ethernet and VLANs," covers them in detail. Essentially, all topics covered here are discussed in greater detail in later chapters. They are presented in this chapter in abbreviated form because you will require this information to prepare your kernel for the labs to come.
The kernel configurations discussed in this chapter represent only some network-relevant parameters and settings. Full configurations for OpenBSD, FreeBSD, NetBSD, and Linux are provided in Appendix A, "UNIX Kernel Configuration Files." I strongly recommend reading this current chapter in parallel with Appendix A.