In this topic, we are going to look at the native networking stack that comes with Docker Engine. There is a wealth of knowledge that you can achieve by reading on this subject. I strongly suggest that you do, as there is a lot you can do with Docker networking. If you have not used it before, I would suggest that you start reading the guide at https://docs.docker.com/engine/userguide/networking/dockernetworks/. From here, you can read about the different types of drivers, how to use VXLAN to separate your networks, and the best practices when designing your Docker network. We are going to cover the basics now and the more advanced features in later chapters.
Before we can even start to code for our network, there are a few things we need. First, we need a key/value store. Docker will use this to map all the containers, IP addresses, and vxlans that are created. Seeing as there usually would be more than one host attached to a network, the key/value store...