VLAN 및 트렁크 트러블슈팅
인터페이스가 정상적으로 설정되어 있는데도 통신이 안 되는 경우, 문제는 VLAN이나 트렁크와 관련될 수 있습니다. 이 강의에서는 일반적인 VLAN 및 트렁크 문제와 해결 방법을 살펴봅니다.
핵심 요약
- VLAN 할당 확인: 통신하려는 인터페이스가 같은 VLAN에 있는지 확인
- 스위치포트 모드 확인: 호스트가 연결된 포트가 액세스 모드인지, 트렁크 모드로 잘못 설정되지 않았는지 확인
- VACL 확인: VLAN 액세스 리스트가 트래픽을 차단하고 있지 않은지 확인
- 트렁크 캡슐화 일치: 양쪽 스위치에서 같은 캡슐화 프로토콜(802.1Q 또는 ISL)을 사용하는지 확인
- 트렁크 허용 VLAN 확인: 필요한 VLAN이 트렁크에서 허용되어 있는지 확인
1. VLAN 할당 문제
H1(192.168.1.1)과 H2(192.168.1.2)가 같은 스위치에 연결되어 있지만 핑이 실패합니다.
확인 절차
인터페이스 상태 확인:
SW1#show ip int brief
Interface IP-Address OK? Method Status Protocol
FastEthernet0/1 unassigned YES unset up up
FastEthernet0/3 unassigned YES unset up upVLAN 할당 확인:
SW1#show vlan
VLAN Name Status Ports
---- -------------------------------- --------- ----------------------------
1 default active Fa0/1, Fa0/2, Fa0/4, Fa0/5...
2 VLAN0002 active Fa0/3Fa0/1은 VLAN 1, Fa0/3은 VLAN 2에 있어 서로 다른 VLAN입니다.
해결
SW1(config)#interface fa0/3
SW1(config-if)#switchport access vlan 1교훈: 인터페이스가 올바른 VLAN에 할당되어 있는지 반드시 확인하세요.
2. 스위치포트 모드 문제
같은 토폴로지에서 show vlan 명령으로 확인하면 Fa0/3이 VLAN 목록에 나타나지 않습니다:
SW1#show vlan
10 VLAN0010 active Fa0/1Fa0/1은 VLAN 10에 있지만 Fa0/3은 어디에도 보이지 않습니다. 원인을 확인합니다:
SW1#show interfaces fa0/3 switchport
Name: Fa0/3
Switchport: Enabled
Administrative Mode: trunk
Operational Mode: trunk
Access Mode VLAN: 10 (VLAN0010)
Trunking Native Mode VLAN: 1 (default)Fa0/3이 트렁크 모드로 설정되어 있습니다. 호스트가 보내는 태깅되지 않은 트래픽은 **네이티브 VLAN(1)**에 도착하여 VLAN 10의 H1과 통신할 수 없습니다.
해결
SW1(config)#interface fa0/3
SW1(config-if)#switchport mode access
SW1(config-if)#switchport access vlan 10교훈: 인터페이스가 올바른 스위치포트 모드(access 또는 trunk)로 설정되어 있는지 확인하세요.
show vlan에 인터페이스가 보이지 않으면 트렁크 모드일 수 있습니다.
3. VACL(VLAN Access-List) 문제
인터페이스는 up/up, 같은 VLAN, 포트 보안도 없는데 통신이 안 되는 경우:
SW1#show vlan filter
VLAN Map BLOCKSTUFF is filtering VLANs:
10VACL이 VLAN 10에 적용되어 있습니다:
SW1#show vlan access-map
Vlan access-map "BLOCKSTUFF" 10
Match clauses:
ip address: 1
Action:
drop
Vlan access-map "BLOCKSTUFF" 20
Match clauses:
Action:
forwardSW1#show access-lists
Standard IP access list 1
10 permit 192.168.1.0, wildcard bits 0.0.0.255ACL의 permit은 “매칭”을 의미하며, VLAN access-map의 drop 액션에 의해 해당 트래픽이 차단됩니다.
해결
SW1(config)#vlan access-map BLOCKSTUFF 10
SW1(config-access-map)#action forward교훈: 다른 모든 것이 정상인데 통신이 안 되면, VACL(VLAN Access-List)이 트래픽을 차단하고 있지 않은지
show vlan filter로 확인하세요.
4. 트렁크 캡슐화 불일치 문제
두 스위치 간 트렁크가 설정되어 있지만, 양쪽의 캡슐화 프로토콜이 다릅니다:
SW1#show interfaces fa0/15 switchport
Administrative Trunking Encapsulation: isl
Operational Trunking Encapsulation: isl
SW2#show interfaces fa0/15 switchport
Administrative Trunking Encapsulation: dot1q
Operational Trunking Encapsulation: dot1qSW1은 ISL, SW2는 802.1Q를 사용하고 있습니다.
해결
SW1(config)#interface fa0/15
SW1(config-if)#switchport trunk encapsulation dot1q교훈: 트렁크 양쪽에서 같은 캡슐화 프로토콜을 사용하는지 확인하세요. 또한 기본 모드가
dynamic auto인 경우 양쪽 모두 auto이면 액세스 포트가 되므로, 명시적으로switchport mode trunk를 설정하는 것이 좋습니다.
5. 트렁크 허용 VLAN 문제
트렁크가 정상적으로 동작하고 캡슐화도 일치하지만, 특정 VLAN의 트래픽이 전달되지 않는 경우:
SW1#show interfaces fa0/15 trunk
Port Vlans allowed on trunk
Fa0/15 20
SW2#show interfaces fa0/15 trunk
Port Vlans allowed on trunk
Fa0/15 20트렁크에서 VLAN 20만 허용되어 있고, 호스트가 속한 VLAN 10은 차단되어 있습니다.
해결
SW1(config)#interface fa0/15
SW1(config-if)#switchport trunk allowed vlan all
SW2(config)#interface fa0/15
SW2(config-if)#switchport trunk allowed vlan all교훈: 트렁크가 모든 VLAN을 허용하는지, 아니면 특정 VLAN만 허용하도록 제한되어 있는지 항상 확인하세요. 양쪽 모두 같은 설정을 적용하는 것이 좋습니다.
트러블슈팅 체크리스트
| 순서 | 확인 항목 | 관련 명령 |
|---|---|---|
| 1 | 인터페이스 상태 (up/up) | show ip interface brief |
| 2 | VLAN 할당 | show vlan |
| 3 | 스위치포트 모드 (access/trunk) | show interfaces switchport |
| 4 | 포트 보안 | show port-security |
| 5 | VACL | show vlan filter, show vlan access-map |
| 6 | 트렁크 캡슐화 일치 | show interfaces trunk |
| 7 | 트렁크 허용 VLAN | show interfaces trunk |