문의 하신 vLAN의 논리도식을 보면 다음과 같습니다.
이와 같이 서로 다른 vLAN 끼리는 논리적으로 분리된 영역입니다.
vLAN20에 PC1을 연결할 경우 vLAN10에 속한 PC2로 가려면 스위치에 vLAN10과 vLAN20사이를 오고 갈 수 있는 패킷경로나 흐름을 따로 만들어 주지 않는 이상 불가능합니다. 즉 기본적인 vLAN만 가지고 할 수는 없습니다. (사실 L3 Switch쯤 되면 그런 뒷구멍 만들 수단은 많이 있습니다)
마찬가지로 vLAN끼리 트렁킹 한 포트라 할 지라도 논리적으로는 다른 포트로 여깁니다.
즉 vLAN10의 A1, B1은 vLAN20의 A1', B1'과 다른 녀석입니다.
Switch A, Switch B, Switch C 이렇게 세개가 있고 순서대로 트렁킹 된 포트로 연결되어 있다고 합시다.
A-B-C 이렇게요.
A에는 {2,5,10, 20} 네개의 vLAN이 설정되어 있고
B에는 {3,5,6} 이렇게, C에는 {2, 3, 5, 10} 이렇게 되어있습니다.
그러면 A 에서 C까지 연결되는 vLAN은 5 하나뿐입니다.
기본적으로 VLAN 스펙은 설정되지 않은 vLAN을 무시해버립니다. 즉 B에서 vLAN2, vLAN10을 전달 안합니다.
전달 하게 하려면 사용하지 않더라도 VLAN정보를 A, B, C가 서로 공유해야 하는데 이를 자동으로 서로 동기화 하는 기능이 있는 경우도 있고, 없는 경우도 있습니다. 서로 자동으로 동기화를 할 수 없는 상황이라면 수동으로 동일하게 Trunk된 포트로 지나갈 VLAN 정보를 잡아주어야 합니다.
즉 vLAN2, vLAN10을 Switch B에 연결된 클라이언트들이 소속되어있지 않더라도, Switch B는 A와 C의 vLAN2, vLAN10을 연결하기 위해 vLAN2, vLAN10의 정보를 가지고 있어야(vLAN설정이 되어야) 합니다.
마지막 문항에 대해 답변 드리자면 트렁킹 되었던 안되었던 논리적으로 망이 연결되어 있으면 연결됩니다.
그러니깐 두 스위치간 vLAN10으로 지정된 포트가 서로 연결되어있다면 PC1과 PC2는 통신이 가능합니다.
당장 맨 위의 도식에서 트렁킹을 풀고 A1과 B1을 vLAN10으로 지정하면 PC1과 PC2는 통신이 가능하게 할 수 있습니다.
{대신 다른 통로를 만들어 주지 않는 이상 Switch1과 Switch2의 vLAN20, vLAN30은 단절되겠지요}
Trunking없이, vLAN Access포트 외의 별도의 세팅없이 위 논리망을 구성하려면 물리적으로는 이렇게 가능하겠지요.
정리하자면 vLAN은 망 분리가 되었던 무엇이 되었던 분리 운영되어야 하는 망들이 있는데
망마다 NIC 넣어주고, Hub Switch 넣어주고, 선 깔고 하기 돈 많이 들고 귀찮으니, 물리적으로 여유있는 장비들이나 회선을 논리적으로 나눈거라고 보면 되겠습니다.
쉽게 쉽게 생각하시면 각 vLAN마다 구성요소들이 별도로 있다고 여기시면 됩니다.
trunking 된 선은 trunking 된 라인 따라 오고가는 vLAN만큼 소속된 랜선들이 있다고 여기시면 되고..., trunking된 포트는 각 vLAN별로 독립적인 포트가 있다고 여기시면 되고..
두번째 있는 논리적 망 도식도처럼 vLAN끼리 분리된 망 형태를 떠오르시면 vLAN이 설정된 망의 작동구조를 이해하기 쉽습니다.