Appendix A. Advanced Networking in Linux
In Chapter 3, we discussed some basic Linux networking concepts. In this appendix, we’ll use the building blocks from Chapter 3 as a basis for discussing a few advanced Linux networking concepts and configurations.
The topics we’ll cover in this appendix include:
Using macvlan interfaces
Networking virtual machines (VMs)
Working with network namespaces
Networking Linux containers
Using Open vSwitch (OVS)
Many of these topics could be books on their own! Thus, our focus in discussing these topics won’t be to provide comprehensive, in-depth coverage; instead, we’ll focus on providing enough information for you to understand where these topics fit into the overall networking picture as well as the basics of how to install, configure, or manage these networking configurations.
We’ll start with using macvlan interfaces.
Using macvlan Interfaces
The macvlan interface is sort of like the reverse of a VLAN interface, which we discussed in Chapter 3. VLAN interfaces allow a single physical interface to communicate in multiple VLANs (broadcast domains) simultaneously; you can think of this as a “many (networks) to one (physical interface)” arrangement. Contrast that to macvlan interfaces, which allow you to create multiple logical interfaces on a single broadcast domain—a “one (network) to many (logical interfaces)” arrangement. Each macvlan logical interface will have its own Media Access Control (MAC) address, and will only be able ...