
This document provides a TL;DR version of https://github.com/moby/moby/blob/v1.6.0/docs/sources/articles/networking.md.
If more interested in detailed operational design, please refer to this link.

## Docker Networking design as of Docker v1.6

Prior to libnetwork, Docker Networking was handled in both Docker Engine and libcontainer.
Docker Engine makes use of the Bridge Driver to provide single-host networking solution with the help of linux bridge and IPTables.
Docker Engine provides simple configurations such as `--link`, `--expose`,... to enable container connectivity within the same host by abstracting away networking configuration completely from the Containers.
For external connectivity, it relied upon NAT & Port-mapping 

Docker Engine was responsible for providing the configuration for the container's networking stack.

Libcontainer would then use this information to create the necessary networking devices and move them in to a network namespace.
This namespace would then be used when the container is started.
