본 장은 라우터 및 스위치를 이용해서 “기업의 가치를 보호하고 증진시킬 수 있는 서비스”를 제공하기 위한 방법을 설명하고 있다. 하나의 ISR 장비에 라우팅 기능 설정과 더불어 보안(방화벽, VPN), 음성(VoIP), 무선(WLAN), 애플리케이션 서비스 등의 다양한 모듈형 기능을 탑재한 라우터의 통합 서비스, 그리고 관리형 스위치에서 제공하는 VLAN 서비스에 대해서 알아본다.
4.4.1 VLAN(Virtual LAN) 서비스
(1) 개요
하나의 스위치 네트워크 내에서 브로드캐스트 도메인으로 분리하고, 장치들을 논리적 그룹으로 묶어 보안과 성능을 개선하는 서비스다. VLAN으로 나뉜 그룹 간(Inter VLAN) 통신은 라우터 또는 L3 스위치가 담당한다.
- 핵심 역할:
- 보안강화: 트래픽을 분리하여 특정 LAN의 문제가 다른 LAN 에 영향을 주는 것을 방지한다.
- 성능 향상: 불필요한 브로드캐스트 트래픽의 범위를 제한하여 네트워크 성능을 최적화한다.
- 관리 용이성: 사용자 이동 및 추가 시 물리적 배선 변경 없이 소프트웨어적으로 네트워크 구성을 변경할 수 있다.
(2) 네이티브 VLAN
스위치의 기본 역할
스위치의 역할은 각 호스트에게 공통 버스를 제공하는 역할이 기본이다. 그래서 3장에서 구성한 네트워크에 여러 호스트가 구성원으로 참여하게 되면, 매니지드 스위치를 하나 구입해서 아래와 같이 연결해주면 각 호스트들이 공통버스를 이용할 수 있다. 단, 여기서 스위치는 “2950-24”를 가져왔다.

위와 같이 바로 연결이 가능한 이유는, 각 포트가 액세스 포트로 설정되어 있었기 때문이다. 일반 스위치는 모든 포트가 액세스 포트인 것처럼 동작시키는 VLAN 기술인 VLAN 태그가 없는 프레임을 처리하는 기술이 적용되었기 때문이다.
스위치의 VLAN으로의 기본 역할 – 네이티브 VLAN
매니지드 스위치는 VLAN 태그를 가지는 프레임을 처리할 수 있고 그래서 동일 그룹 번호를 가진 호스트를 다른 그룹 번호를 가진 호스트로 구성된 네트워크 망과 분리할 수 있다. 또한 매니지드 스위치는 VLAN 태그 없는 프레임도 처리할 수 있도록 설정되어 있다. 이러한 설정하의 VLAN을 네이티브 VLAN이라고 보면 된다.
아래는 네이티브 VLAN(Native VLAN)의 공장 출하시 설정값들이다.
- 스위치(switch)에 마우스를 올리면 아래처럼 나타난다. 초기값으로 Vlan1이라는 가상의 포트(인터페이스)가 만들어져 있다.
- Link가 UP은 활성 상태임을 나타내며, Down은 비연결 상태를 나타낸다.
- MAC Address는 현재 접속한 MAC 주소가 아닌 CTP가 미리 지정해 놓은 주소이다.
- IP 주소는 물리적으로 연결된 호스트의 IP 주소를 학습한 후 나타난다. 프레임 교환이 일어나면, IP Address 및 MAC Address에 학습값이 채워진다.

그리고, 스위치에 연결된 랩톱에서 아래 명령어를 실행해보자.
<* CODE NAME: VLAN BRIEF *>
Switch#sh vlan brief
VLAN Name Status Ports
---- -------------------------------- --------- -------------------------------
1 default active Fa0/4, Fa0/5, Fa0/6, Fa0/7
Fa0/8, Fa0/9, Fa0/13, Fa0/14
Fa0/15, Fa0/16, Fa0/17, Fa0/18
Fa0/19, Fa0/20, Fa0/21, Fa0/22
Fa0/23
1002 fddi-default active
1003 token-ring-default active
1004 fddinet-default active
1005 trnet-default active
- VLAN: VLAN 그룹을 말한다.
- Name: VLAN 그룹명을 말한다.
- Status: 현재 VLAN 그룹이 활성화 상태인지 정지 상태(Suspended Status)인지를 보여준다. 활성상태면 우측의 각 포트가 해당 VLAN 그룹에 액세스 포트로 참여하고 있음을 나타낸다.
- Ports: 해당 VLAN에 참여하고 있는 각 액세스 포트를 말한다.
“코드스니펫: VLAN BRIEF”를 보면 원래 1번 VLAN 그룹의 액세스 포트에 참여하고 있던 Fa0/1 – Fa0/3, 그리고 Fa0/10-Fa0/13 포트가 VLAN 액세스 그룹에서 빠져 나갔음을 확인할 수 있다.
<* CODE NAME: VLAN BRIEF *>
switch#sh int truk
Port Mode Encapsulation Status Native vlan
Fa0/1 desirable n-802.1q trunking 1
Fa0/2 desirable n-802.1q trunking 1
Fa0/3 desirable n-802.1q trunking 1
Fa0/10 desirable n-802.1q trunking 1
Fa0/11 desirable n-802.1q trunking 1
Fa0/12 desirable n-802.1q trunking 1
Fa0/24 desirable n-802.1q trunking 1
Port Vlans allowed on trunk
Fa0/1 1-1005
Fa0/2 1-1005
Fa0/3 1-1005
Fa0/10 1-1005
Fa0/11 1-1005
Fa0/12 1-1005
Fa0/24 1-1005
Port Vlans allowed and active in management domain
Fa0/1 1
Fa0/2 1
Fa0/3 1
Fa0/10 1
Fa0/11 1
Fa0/12 1
Fa0/24 1
Port Vlans in spanning tree forwarding state and not pruned
Fa0/1 1
Fa0/2 1
Fa0/3 1
Fa0/10 1
Fa0/11 1
Fa0/12 1
Fa0/24 1
위와 같이 동작하는 이유는, 매니지드 스위치는 각 포트에 연결된 상대방 호스트를 감시하고 있다가 상대방 호스트가 다른 스위치 및 라우터가 아니라면 매니지드 스위치는 해당 포트를 액세스 포트로 설정 전환한다. 또한, 만일 특정 포트에 다른 스위치 포트 또는 라우터가 연결된다면, 매니지드 스위치는 이 포트를 트렁크로 설정시킨다.
기업 요청 사항
- 시니어가 작업하는 컴퓨터인 coffeecrawler와 roastcrawler를 다른 junior 그룹(junior1 부터 junior4까지)으로 분리하시오.
- 시니어 및 주니어 그룹 내부에서는 데이타 공유의 필요성이 높으나 그룹 간에는 공유보다는 보안성이 더 필요하다.
- 시니어 그룹이 공유하는 네트워크 자원(예: 프린터, IP 카메라 등등)을 주니어 그룹과 분리하고 싶다.
해결 방안
방안 1: 망을 물리적으로 분할한다. 장비를 추가로 설치하면 된다.
- 라우터에 이더넷 인터페이스를 하나 더 추가 장착한 후 스위치도 하나 구입한 후, 새로운 이더넷 인터페이스에 스위치를 연결한다.
- 시니어 그룹은 기존의 스위치에 연결하고, 주니어 그룹은 새 스위치에 연결한다.
- 각 네트워크를 ‘/24’ 서브넷 마스킹을 ‘/25’로 변경해서 2 개의 그룹으로 나눈다.
- 해당 네트워크를 라우터의 라우팅 테이블에 등록한다.
방안 2: 망을 논리적으로 분할한다. VLAN 설정을 마치면 된다.
- 각 네트워크를 CIDR=24에서 CIDR=’25’로 변경, 2 개의 그룹으로 나눈다.
- IP 주소 대역, 서브넷 및 라우터 번호를 지정해준다.
- 2 개의 네트워크 그룹으로 나누면 아래와 같다.
- 해당 네트워크를 라우터의 라우팅 테이블에 등록한다. 단, 가상의 서브인터페이스 2 개를 생성한다. 즉, 하나의 이더넷 인터페이스를 2 개로 가상화한다.
- 스위치에서 VLAN 그룹을 2 개 만들고 액세스(Access) 포트를 설정한다.
- 액세스 포트라 함은 호스트와 직접 연결되는 포트이다.
- 참고로 ISP의 수많은 라우터도 사용자측과 직접 연결되는 라우터는 액세스 라우터(집합 라우터, 엣지 라우터)라고 한다. 반대로 백본에 연결되는 라우터는 코어 라우터라고 한다.
- 라우터와 통로를 제공하기 위한 트렁크(수직 기둥, 의역은 통로)포트를 지정한다. (만일 다른 스위치와 연결할 필요가 있으면 스위치끼리도 트렁크(통로)를 만들어준다.)
- 보통 이러한 트렁크는 스위치의 업링크 포트를 이용한다. 이것은 물리적으로 떨어져있을 수도, 또는 특정 포트(마지막 포트 또는 마자막 2개의 포트)를 공유하기도 한다.
4.4.2 ARP(Address Resolution Protocol)
(1) 개요
IP 주소를 데이터 링크 계층 주소인 MAC 주소로 변환하는 데 사용되는 프로토콜로써 LAN 상의 호스트(라우터 포함)에서 연동된다. 동일 세그먼트 내에서의 통신은 MAC 주소 기반으로 동작하므로 MAC 주소와 IP 주소에 대한 1:1 연결 테이블을 작성한다.
- 핵심 역할:
- IP 주소 -> MAC 주소: LAN에서 상대방의 IP 주소를 알고 있을 때, 그에 대응하는 MAC 주소를 알아낸다.
- ARP 캐시 관리: 한 번 확인한 IP-MAC 주소 쌍을 ARP 캐시 테이블에 저장하여 불필요한 ARP 요청을 줄이고 통신 효율성을 높인다.
(2) arp 실습
ping을 이용해서 목적지 주소에 응답을 요청하면, arp는 새로운 MAC 주소를 ARP 캐시 테이블에 저장한다.
<<< 호스트 coffeecrawler > CLI >>>
C:\>arp -a[ENTER]
No ARP Entries Found
C:\>[ENTER]
C:\>ping 203.239.153.3[ENTER]
Pinging 203.239.153.3 with 32 bytes of data:
Reply from 203.239.153.3: bytes=32 time<1ms TTL=128
Reply from 203.239.153.3: bytes=32 time<1ms TTL=128
Reply from 203.239.153.3: bytes=32 time<1ms TTL=128
Reply from 203.239.153.3: bytes=32 time<1ms TTL=128
Ping statistics for 203.239.153.3:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 0ms, Average = 0ms
C:\>arp -a[ENTER]
Internet Address Physical Address Type
203.239.153.3 0001.c7c4.8315 dynamic
C:\>[ENTER]
C:\>ping 203.239.125.2[ENTER]//원격지의 IP 주소를 테스트한다.
Pinging 203.239.125.2 with 32 bytes of data:
Reply from 203.239.125.2: bytes=32 time=28ms TTL=126
Reply from 203.239.125.2: bytes=32 time=23ms TTL=126
Reply from 203.239.125.2: bytes=32 time=23ms TTL=126
Reply from 203.239.125.2: bytes=32 time=23ms TTL=126
Ping statistics for 203.239.125.2:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 23ms, Maximum = 28ms, Average = 24ms
C:\>arp -a[ENTER]
Internet Address Physical Address Type
203.239.153.3 0001.c7c4.8315 dynamic
203.239.153.254 000b.be01.6031 dynamic
C:\>
위에서 원격지의 IP 주소를 테스트할 때, 라우터는 그 IP 주소를 라우팅 테이블에서 찾아서 패킷을 전송한다. 이 때 라우터의 IP 주소는 호스트 coffeecrawler의 ARP 캐시 테이블에 등록된다. 또한, 이와 동시에 라우터의 ARP 캐시 테이블에도 자동으로 등록됨을 아래의 코드표에서 확인할 수 있다. 즉, 누군가가 내 IP 주소에 접근했다면 이 ARP 캐시 테이블에 자동으로 등록됨을 확인할 수 있다.
<<< 라우터 cafe_router > CLI >>>
cafe_router#show ip arp[ENTER]
Protocol Address Age (min) Hardware Addr Type Interface
Internet 203.239.153.254 - 000B.BE01.6031 ARPA FastEthernet0/0
<<< coffeecrawler에서 원격지로 ping 테스트를 수행 함>
cafe_router#show ip arp[ENTER]
Protocol Address Age (min) Hardware Addr Type Interface
Internet 203.239.153.2 0 0090.2B6E.8316 ARPA FastEthernet0/0
Internet 203.239.153.254 - 000B.BE01.6031 ARPA FastEthernet0/0
cafe_router#
4.4.3 VPN(Virtual Private Network)
(1) 개요
인터넷과 같은 공용 네트워크(Public Network)를 이용하여 사설 네트워크(Private Network)와 같은 효과를 내는 기술이다. 물리적으로 전용선(Leased Line)을 구축하는 비용을 절감하면서도, 터널링(Tunneling) 기법과 암호화(Encryption) 기술을 통해 데이터의 기밀성을 보장한다. 라우터는 패킷을 캡슐화하고 암호화하여 터널을 통과시키는 VPN 게이트웨이 역할을 수행한다.
(2) 핵심 역할
- 비용 절감: 고가의 전용회선 대신 저렴한 인터넷 회선을 사용하여 본사와 지사 간 네트워크를 연결한다.
- 보안성(Security): IPsec(IP Security) 또는 SSL/TLS 프로토콜을 사용하여 데이터를 암호화함으로써, 도청이나 변조(Sniffing/Spoofing)를 방지한다.
- 확장성: 물리적인 케이블 설치 없이 소프트웨어 설정만으로 재택 근무자나 이동 근무자(Remote Access)를 내부 네트워크에 접속시킬 수 있다.
(3) 주요 구현 방식
- Site-to-Site VPN: 본사와 지사의 라우터 간에 항상 연결된 터널을 생성하여, 내부 사용자들은 별도의 로그인 없이 마치 같은 LAN에 있는 것처럼 통신한다.
- Remote Access VPN: 이동 근무자가 PC의 VPN 클라이언트 소프트웨어를 통해 본사 라우터에 접속하는 방식이다.
4.4.4 DHCP(Dynamic Host Configuration Protocol)
- DHCP 서버가 클라이언트의 요청을 받아 사용할 사설 IP 주소, 서브넷 마스크, 게이트웨이 주소, DNS 서버 주소 등의 네트워크 설정 정보를 할당해주는 서비스다.
- NAT와 DHCP의 차이점은, NAT는 패킷이 라우터를 통과할 때 IP를 변환해주는 서비스고, DHCP는 클라이언트가 부팅 후, 네트워크 설정 단계에서 DHCP 서버로 부터 네트워크 설정 내용을 할당 받는 서비스다.
4.4.5 NAT(Network Address Translation) 서비스
(1) 개요
IP 패킷이 라우터를 통과(인바운드/아웃바운드)할 때, 패킷 헤더에 있는 IP 주소 및 포트 번호를 다른 주소와 포트 번호로 변환하는 서비스이다. 주로, 사설 IP를 사용하는 사설 네트워크와 공인 IP를 사용하는 공용 네트워크간의 통신망을 구성해준다.
- 핵심역할:
- IPv4 주소 부족 문제 대응: 제한된 공인 IP 주소를 내부 네트워크에 직접 부여하지 않고 사설 IP로 내부 네트워크를 구성하게 하여 IPv4 주소 고갈 문제를 해결하는데 큰 도움이 되었다.
- 네트워크 보안 강화: 내부 IP 주소를 외부에 노출시키지 않고 라우터의 공인 IP로 변환하여 통신한다. 외부에서는 내부망의 구조를 알 수 없으므로, 내부 호스트에 대한 무단 접근을 여렵게 해 보안성을 높였다.
NAT 실습
cafe_router(config)#int f0/0
cafe_router(config-if)#ip nat inside
cafe_router(config-if)#exit
cafe_router(config)#int se0/0
cafe_router(config-if)#ip nat outside
cafe_router(config-if)#end
cafe_router#
%SYS-5-CONFIG_I: Configured from console by console
cafe_router#wr
Building configuration...
[OK]
cafe_router#
4.4.6 SNMP(Simple Network Management Protocol)
(1) 개요
네트워크 장비(라우터, 스위치, 서버 등)의 상태를 실시간으로 모니터링하고 설정 정보를 관리하기 위한 표준 프로토콜이다. 네트워크 관리자는 SNMP를 통해 원격지의 장비 부하, 인터페이스 상태(Up/Down), 트래픽 사용량 등을 중앙에서 파악할 수 있다.
(2) 구성 요소
- Manager (NMS – Network Management System): 관리자가 사용하는 중앙 서버 또는 소프트웨어로, 에이전트에게 정보를 요청(Get)하거나 설정을 변경(Set)한다.
- Agent (에이전트): 관리 대상 장비(라우터, 스위치)에서 실행되는 데몬 프로세스로, 장비의 정보를 수집하여 MIB 형태로 저장하고 있다가 매니저의 요청에 응답한다.
- MIB (Management Information Base): 관리 대상 장비의 정보가 저장된 데이터베이스 구조이다. 각 정보는 OID(Object ID)라는 고유한 식별자로 구분된다.
(3) 동작 방식 및 보안
- Trap: 장비에 장애가 발생하거나 특정 임계치를 초과했을 때, 에이전트가 매니저에게 즉시 알림을 보낸다.
- 버전별 특징:
- v1, v2c: ‘Community String'(일종의 비밀번호)만을 사용하여 인증하므로 보안에 취약하다. 평문 전송된다.
- v3: 데이터 암호화(Encryption)와 사용자 인증(Authentication) 기능을 제공하여 보안성이 대폭 강화되었다.
4.4.7 VoIP(Voice over Internet Protocol)
(1) 개요
기존의 서킷 교환 방식(PSTN)이 아닌, IP 네트워크를 통해 음성 데이터를 패킷(Packet) 형태로 변환하여 전송하는 기술이다. ISR(통합 서비스 라우터)은 아날로그 음성 신호를 디지털로 변환하고 압축하는 DSP(Digital Signal Processor) 모듈을 탑재하거나, IP 전화기(IP Phone)의 트래픽을 중계하는 역할을 한다.
(2) 핵심 프로토콜
- SIP (Session Initiation Protocol): 통화 연결, 종료, 착신 전환 등 호(Call)의 제어와 신호 처리를 담당하는 프로토콜이다. (TCP/UDP 5060 포트 사용)
- RTP (Real-time Transport Protocol): 실제 음성 및 영상 데이터를 실시간으로 전송하는 프로토콜이다. 순서 보장 및 지터(Jitter) 보정을 위한 정보를 포함한다.
(3) 핵심 역할 및 고려사항
QoS (Quality of Service): 음성은 지연(Latency)에 매우 민감하므로, 라우터 및 스위치 설정 시 음성 트래픽을 최우선으로 처리하도록 QoS 설정이 필수적이다. 보통 Voice VLAN을 데이터 VLAN과 분리하여 구성한다.
통합 망 구축: 데이터 네트워크와 음성 네트워크를 하나로 통합하여 유지보수 비용을 절감한다.
4.4.8 진단 및 관리 도구
| 명령어 | 주요 기능 (Focus) | 자세한 설명 | 실무 사용 예시 |
| ping | 네트워크 연결 상태 확인 | ICMP 프로토콜을 사용하여 특정 IP 주소와 통신이 가능한지 확인하고, 응답 시간(RTT)과 패킷 손실률을 측정한다. | 특정 IP 주소를 ping과 같이 입력, 특정 IP 주소에 연결된 호스트와 연결이 가능한지 확인한다. ping 192.168.0.1 |
| ipconfig (Windows) ifconfig} (Linux/macOS) | 로컬 네트워크 설정 확인 | 현재 사용 중인 호스트의 IP 주소, 서브넷 마스크, 기본 게이트웨이, MAC 주소 등 자신의 네트워크 인터페이스 설정 정보를 확인한다. | 로컬 장치에 할당된 IP 주소(192.168.x.x)나 DHCP 정보 갱신을 확인. (/all, /release, /renew 옵션 사용) |
| nslookup | DNS 쿼리 및 이름 확인 | 도메인 이름(Host name)에 대응하는 IP 주소(또는 그 반대)를 DNS 서버에 질의하여 확인한다. DNS 설정 및 이름 확인 문제를 진단하는 데 사용된다. | 특정 웹사이트 주소[www.google.com](https://www.google.com)의 현재 IP 주소를 찾거나, 사용 중인 DNS 서버가 정상 작동하는지 확인. |
| tracert (Windows) traceroute (Linux/macOS) | 네트워크 경로 추적 | 출발지부터 목적지까지 패킷이 거치는 경로 상의 모든 라우터(홉)를 추적하고, 각 홉까지의 지연 시간(Latency)을 측정한다. 패킷이 특정 라우터에서 지연되거나 손실되는 지점을 파악하는 데 유용하다. | 외부 서버(Web Server)까지의 통신 경로 중 어디에서 병목 현상(Bottleneck)이나 단절(Failure)이 발생하는지 진단. |
| netstat | 네트워크 연결 상태 확인 | 현재 호스트에서 활성화된 네트워크 연결(Connections), 라우팅 테이블(Routing Table), 프로토콜 통계(Protocol Statistics) 등을 표시한다. 특히 호스트가 어떤 포트를 열고 듣고 있는지(Listening Port) 확인하는 데 중요하다. | 특정 서비스(예: Web Server)가 Port 80에서 잘 실행되고 있는지(LISTENING 상태인지)나, 활성 TCP 연결 목록 확인. |
| net | Windows 네트워크 관리 | Windows 환경에서 네트워크 리소스, 사용자, 서비스, 세션 등을 관리하는 데 사용되는 다목적 명령어군(Command\ Set). | 사용자 계정 추가/삭제(net user), 네트워크 공유 드라이브 연결(net use), 네트워크 서비스 시작/중지(net start), 도메인/워크그룹 정보 확인(net view) 등. |
| nbtstat | NetBIOS 이름 확인 통계 | Windows 시스템에서 TCP/IP를 통한 NetBIOS 프로토콜 관련 통계 및 이름 캐시 정보를 표시한다. 이는 주로 구형 Windows 파일 공유 환경(SMB)이나 NetBIOS 이름 충돌을 진단하는 데 사용된다. | NetBIOS 이름 캐시 목록 확인(-c), 원격 컴퓨터의 NetBIOS 이름 테이블 확인(-a), NetBIOS 이름 등록 및 해결 문제 진단. |