내게 네트워크로 연결된 컴퓨터A, 컴퓨터B가 있다고 하자.

 

각각 컴퓨터에선 서버가 돌아가고 Docker가 설치되어 있으며, Docker swarm 세팅이 이미 다 되어있다.

 

이 환경에서 나는 아래 명령어로 subnet이 20.10.0.0/16인 overlay network 를 만들었다(subnet이 뭔지, overlay 가 뭔지는 여기 적지 않음)

 

 

sudo docker network create -d=overlay --subnet 20.10.0.0/16 --attachable cwl-net

 

 

이 상태에서 똑같은 subnet 을 갖는 다른 이름의 네트워크를 만들면 어떻게 될까?

 

 

sudo docker network create -d=overlay --subnet 20.10.0.0/16 --attachable cwl-net2

 

 

첫번째 만든 my-net 은 overlay network 로 잘 만들어졌지만,

 

두번째 만든 my-net 은 overlay network 가 아니라 그냥 일반 network로 만들어졌다.

 

 

그럼 subnet mask 를 늘리거나 줄인다면?

 

그리고 ip 범위를 겹치지만 다르게 준다면?

//subnet mask 를 늘려서 가용ip 범위를 줄여봄
sudo docker network create -d=overlay --subnet 20.10.0.0/24 --attachable cwl-net3

 

//subnet mask를 줄여서 가용 ip 범위를 늘려봄
sudo docker network create -d=overlay --subnet 20.10.0.0/8 --attachable cwl-net4

 

//subnet mask는 똑같지만 ip 범위를 다르게 줘 봄

sudo docker network create -d=overlay --subnet 20.10.10.10/16 --attachable cwl-net5

 

//다른 ip 범위에서 subnet mask를 늘려서 가용 ip 범위를 줄여봄

sudo docker network create -d=overlay --subnet 20.10.10.10/24 --attachable cwl-net6

 

//다른 ip 범위에서 subnet mask를 줄여서 가용 ip 범위를 늘려봄

sudo docker network create -d=overlay --subnet 20.10.10.10/8 --attachable cwl-net7

 

이미 overlay 가 된 네트워크의 ip subnet 과 겹치는 다른 모든 네트워크들은 overlay가 되지 않았다.

 

swarm 위에 특정 ip로 subnet이 overlay network로 할당되면(위의 경우 cwl-net)

 

그 subnet을 포함하는 다른 overlay network는 만들 수 없는 것 같다.

 

즉, swarm 위에서 overlay ip 주소는 한정되어있기 때문에, 설령 네트워크의 이름이 다르다고 해도 겹치는 ip 를 만들 순 없다.

 

위에 경우처럼 억지로 만들려고 하면 swarm 위에 overlay가 아닌 일반 network 가 만들어진다.

 

 

 

+ Recent posts