Default Networks
- Docker ๋ฅผ ์ค์นํ๋ฉด ์๋์ผ๋ก 3๊ฐ์ Network ๋ฅผ ์์ฑํจ
- Container ๋ฅผ ๋ค๋ฅธ Network ์ ์ฐ๊ฒฐํ๋ ค๋ฉด ์๋์ ๊ฐ์ด Network ๋ฅผ ์ง์ ํด์ผํจ
docker run Ubuntu --network=none
docker run Ubuntu --network=host
Bridge Network
- Container ์์ ์ฌ์ฉํ๋ Default Network ๋ก Docker ๊ฐ Host ์ ์์ฑํ Private Internal Network
- ๋ชจ๋ Container ๋ ๊ธฐ๋ณธ์ ์ผ๋ก ์ด Network ์ ์ฐ๊ฒฐ๋๋ฉฐ ๋ณดํต 172.17 ๋ก ์์ํ๋ ๋ด๋ถ IP ๊ฐ ํ ๋น๋จ
- ์ด ๋ด๋ถ IP ๋ฅผ ์ฌ์ฉํด Container ๋ผ๋ฆฌ ์์ธ์คํ ์ ์์
none Network
- Container ๊ฐ ์๋ฌด๋ฐ Network ์๋ ์ํ์ง ์์
- ์ฆ, ์ธ๋ถ Network ๋ ๋ค๋ฅธ Container ์ ์์ธ์คํ ์ ์์
host Network
- Container ๋ฅผ Host Network ์ ์ฐ๊ฒฐํ๋ ๋ฐฉ์
- ํฌํธ ๋งคํ ์์ด Host ์ ํฌํธ๋ก ์ธ๋ถ ์ ์์ด ๊ฐ๋ฅํจ
User-Defined Networks
- Docker ๋ ๊ธฐ๋ณธ์ ์ผ๋ก ํ๋์ ๋ด๋ถ Bridge Network ๋ง ์์ฑ
docker network create --driver bridge --subnet 182.18.0.0/16 custom-isolated-network
- ์ ๋ช
๋ น์ด๋ก User-Defined Network ์์ฑ ๊ฐ๋ฅ
docker network ls
๋ช
๋ น์ด๋ก ๋ชจ๋ Network ๋ชฉ๋ก์ ํ์ ๊ฐ๋ฅ
Inspect Network

docker inspect {CONTAINER ID}
๋ช
๋ น์ด๋ฅผ ํตํด Network ์ค์ ๊ณผ IP ์ฃผ์ ํ์ธ ๊ฐ๋ฅ
Embedded DNS

- Docker Host ์ ์๋ ๋ชจ๋ Container ๋ ์ด๋ฆ์ผ๋ก ์๋ก ์์ธ์คํ ์ ์์
- Docker ์๋ Container ๋ค์ด ์ด๋ฆ์ผ๋ก ์๋ก ์์ธ์คํ ์ ์๊ฒ ๋์์ฃผ๋ DNS ์๋ฒ๊ฐ ๋ด์ฅ๋์ด ์์
- ๋ด์ฅ DNS ์๋ฒ๋ ํญ์ 127.0.0.11 ์ฃผ์๋ก ์๋ํจ
- Docker ๋ Network Namespace ๋ฅผ ์ฌ์ฉํด ๊ฐ Container ์ ๋ณ๊ฐ์ Namespace ๋ฅผ ์์ฑํจ
- ๊ทธ๋ฆฌ๊ณ Virtual Ethernet Pair ์ ์ฌ์ฉํด Container ๋ฅผ ์ฐ๊ฒฐ
References