[Docker] 도커의 네트워크 네임스페이스 공부/OTHERS

Date 2021. 5. 26. 21:25

1. 도커의 네트워크 디바이스

도커의 네트워크는 기본적으로 docker0라는 가상 Bridge를 중심으로 구성된다.
이외에도 호스트 네트워크를 사용하는 host, 그리고 null 즉 네트워크 없이 구성할 수도 있다.

 

2. 컨테이너 생성 시 네트워크

먼저 생성된 컨테이너는 veth 쌍을 할당받는다. 하나는 eth0 (컨테이너용), 또하나는 vethXXX로 이름이 붙여지고 docker0 브릿지에 붙는 peer이다.

이렇게 구성함으로써 컨테이너(eth0) - 호스트(vethXXX) - 브릿지(docker0) 형태로 구성되어 패킷이 오갈 수 있는 통로를 만들어준다.

컨테이너 두개를 생성하여 veth pair가 두개 생성되어 호스트에 붙은 상태다.

 


보다시피 master가 docker0으로 되어있다.

또한 여기서 컨테이너 내부에서는 route 경로로 172.0.0.1(docker0) 가 설정된 것을 볼 수 있는데 이는 컨테이너에서 나가는 패킷들은 모두 docker0으로 향하게 한다.

마지막으로 호스트에서는, docker0 브릿지로 FORWARD 되는 패킷들을 모두 ACCEPT 하여 컨테이너와 외부 간 통신이 가능하게 해준다.

 

이를 통해 컨테이너간, 또 컨테이너와 외부 간 네트워크 통신을 가능하게 해준다.

'공부 > OTHERS' 카테고리의 다른 글

[Container] Container와 VM  (0) 2021.05.27
[Linux] 네트워크 네임스페이스, veth  (0) 2021.05.25

Recent Posts

Popular posts

Recent Comments

Tag List

컨테이너 DNS GCP ORM 운영체제 인증 테라폼 네트워크 API 인가 k8s 도커 알고리즘 DB IAC 백준 AWS TypeScript 파이썬 클라우드 JWT 네임스페이스 JavaScript 리눅스
Total : Today : Yesterday :
Blog powered by Tistory, Designed by hanarotg