본문 바로가기
DevOps/Docker

[Docker] : docker network 구조

by 오주현 2022. 2. 17.
반응형

ifconfig

컨테이너 내부에서 명령어를 입력하면 컨테이너 네트워크 인터페이스에 eth0과 lo 네트워크 인터페이스가 있는 것을 확인할 수 있다.

 

도커는 컨테이너 내부 IP를 순차적으로 할당하고 이 IP는 컨테이너를 재시작할 때마다 변경될 수 있다. 그리고 이 내부 IP는 도커가 설치된 호스트 즉, 내부 망에서만 사용이 가능한 IP이다. 때문에 외부와 연결될 필요가 있다.

 

veth 인터페이스는 사용자가 직접 생성할 필요가 없고 컨테이너가 생성될 때 도커 엔진이 자동으로 생성하게 된다.

 

도커가 설치된 호스트에서 ifconfig나 ip addr과 같은 명령어로 네트워크 인터페이스를 확인하면 실행 중인 컨테이너 수 만큼 veth로 시작하는 인터페이스가 생성된 것을 확인할 수 있다.

 

명령어의 출력 결과 중 eth0은 공인 IP 또는 내부 IP가 할당되어 실제로 외부와 통신할 수 있는 호스트의 네트워크 인터페이스이다.

 

veth 인터페이스 말고도 docker0이라는 브리지도 존재하는데 각 veth 인터페이스와 바인딩되어 호스트의 eth0 인터페이스와 이어주는 역할을 하게 된다.

 

brctl show docekr0

명령어로 docker0 브리지에 veth가 실제로 바인딩 되어 있는지 확인할 수 있다.

 


📖 ← [ 시작하세요! 도커/쿠버네티스 ] 책을 참고하여 공부하였습니다.

반응형

댓글