Journey to Security/네트워크

[Cisco Packet Tracer] 정적 라우팅(Static Routing) & 디폴트 라우트(Default Route)

보눔비스타 2026. 3. 15. 16:25

시스코 패킷 트레이서(Cisco Packet Tracer)를 이용해 라우터와 L3 스위치에 정적 라우팅(Static Routing)을 설정해보자.

 

1. 정적 라우팅(Static Routing)이란?

정적 라우팅은 라우터가 목적지 네트워크로 가는 길을 모를 때 관리자가 직접 경로를 입력해 주는 방식이다.

 

정적 라우팅 설정 명령어 (Cisco IOS)

Router(config)# ip route [목적지_네트워크_ID] [서브넷_마스크] [Next-Hop_IP_또는_출구_인터페이스]

 

  • 목적지 네트워크 ID: 통신하고자 하는 상대 네트워크 주소.
  • 서브넷 마스크: 해당 네트워크의 크기.
  • Next-Hop IP: 목적지로 가기 위해 거쳐야 할 '다음 라우터'의 입구 IP 주소.

정적 라우팅의 장단점은 다음과 같다.

 

  • 장점: 라우터의 CPU 부하가 적고, 대역폭 낭비가 없으며 관리자가 경로를 완벽하게 제어할 수 있다.
  • 단점: 네트워크 규모가 커지면 설정할 게 너무 많아지고, 경로에 장애가 발생해도 자동으로 우회하지 못한다.

2. 시스코 패킷 트레이서 실습

🔵 토폴로지 구성

아래와 같이 정적 라우팅 실습을 위해 총 4개의 네트워크를 구성한다.

🔵 서브넷 나누고 각 단말과 장비에 IP주소 설정하기

  • 192.168.100.0/24 를 4개의 서브넷으로 나누어, 첫 번째 네트워크를 Network#1에, 세 번재 네트워크를 Network#2에 각각 할당한다.
  • 1.1.1.0/24를 64개의 서브넷으로 나누어, 첫 번째 네트워크를 Network#3에, 두 번째 네트워크를 Network#4에 각각 할당한다.

◾Network#1 : 192.168.100.0/26

  • 게이트웨이 설정: 네트워크1의 나가는 관문인 라우터1의 FastEthernet 0/0 인터페이스에 gateway ip 주소를 설정한다. (192.168.100.1)
  • Switch1: SVI - 192.168.100.2
  • PC1: 192.168.100.3
  • PC2: 192.168.100.4
  • Server1: 192.168.100.5

Network#2 : 192.168.100.128/26

  • 게이트웨이 설정: 네트워크2의 나가는 관문인 라우터3의 FastEthernet 0/1 인터페이스에 gateway ip 주소를 설정한다. (192.168.100.129)
  • Switch2: SVI - 192.168.100.130
  • PC4: 192.168.100.131
  • Laptop1: 192.168.100.132
  • Server2: 192.168.100.133

Network#3 : 1.1.1.0/30

  • Router1 fa0/1 : 1.1.1.1
  • Router2 fa0/0 : 1.1.1.2

 

Network#4 : 1.1.1.4/30 

  • Router2 fa0/1 : 1.1.1.5
  • Router3 fa0/0 : 1.1.1.6
 

🔵 통신 테스트 및 문제 분석 (Troubleshooting)

위 토폴로지를 바탕으로 Network#1의 PC1에서 Network#2의 PC4로 통신 테스트(ping)을 해보면 실패하는 것을 알 수 있다.

 

이유는 간단하다. 라우터가 목적지 네트워크로 가는 길을 모르기 때문이다.

 

  • Default Gateway의 역할: PC가 자기 네트워크 바깥으로 나가는 모든 패킷을 Router1에게 던지는 이유는 Router1이 기본 게이트웨이(Default Gateway)로 설정되어 있기 때문이다.
  • 라우터는 자신과 직접 연결된(Directly Connected) 네트워크 정보만 기본적으로 알고 있다.
  • Router1Network#1과 Network#3은 직접 연결되어 있어서 어디에 있는지 알지만, 떨어져 있는 Network#2나 Network#4가 어디에 있는지는 모른다.
  • Router1은 목적지가 192.168.100.128/26인 패킷을 받으면, 자신의 라우팅 테이블에 해당 정보가 없으므로 패킷을 폐기(Drop)한다.

 

 

☑️ 패킷 폐기와 ICMP (Action & Reaction)

라우터가 목적지 경로를 찾지 못했을 때 일어나는 일은 다음과 같다.

  • 동작 (Action) - 패킷 폐기: 사용자의 PC에서 출발한 패킷(예: 웹 접속 데이터, 핑 패킷 등)이 Router1에 도착한다. Router1은 라우팅 테이블을 뒤졌으나 192.168.100.128/26으로 가는 경로가 없다. 이때 라우터는 해당 패킷을 폐기한다. 이를 'Drop' 혹은 'Discard'라고 한다.
  • 응답 (Reaction) - ICMP 전송: 라우터는 패킷을 버리고 출발지(Source)에 "목적지를 찾을 수 없다"고 응답한다. 이때 사용하는 프로토콜이 바로 ICMP(Internet Control Message Protocol)다.
  • 보안상의 예외: 실무에서는 보안을 위해 라우터가 ICMP 응답을 보내지 않도록 설정(No ip unreachables)하기도 한다. 이 경우 패킷은 폐기되지만 출발지에서는 아무 응답도 받지 못하고 그냥 'Request timed out' 메시지만 만 보게 된다.

 

🔵 해결 방법 1. 정적 라우팅(static routing) 설정

 

관리자가 수동으로 각 목적지 네트워크의 경로를 하나하나 지정하는 방식으로, 가장 정확하고 확실하다.

 

형식: 

ip route [목적지 네트워크] [서브넷마스크] [Next-Hop IP 또는 나가는 인터페이스]

 

1️⃣ Router1 (왼쪽 끝)

Router1은 1.1.1.4/30(R2-R3 연결 구간)과 192.168.100.128/26(PC4 구간)을 알아야 한다.

 

------------------------------

Router1(config)# ip route 1.1.1.4 255.255.255.252 1.1.1.2

Router1(config)# ip route 192.168.100.128 255.255.255.192 1.1.1.2

------------------------------

 

2️⃣ Router2 (가운데)

Router2는 양옆의 PC 대역들을 모두 알아야 한다.

 

 
------------------------------

Router2(config)# ip route 192.168.100.0 255.255.255.192 1.1.1.1

Router2(config)# ip route 192.168.100.128 255.255.255.192 1.1.1.6

------------------------------

3️⃣ Router3 (오른쪽 끝)

Router3은 1.1.1.0/30(R1-R2 연결 구간)과 192.168.100.0/26(PC1 구간)을 알아야 한다.

 

------------------------------

Router3(config)# ip route 1.1.1.0 255.255.255.252 1.1.1.5
Router3(config)# ip route 192.168.100.0 255.255.255.192 1.1.1.5

------------------------------

 

🔵 해결 방법 2. 디폴트 라우트 (Default Route)

Router1이나 Router3처럼 외부로 나가는 통로가 단 하나뿐인 스텁(Stub) 네트워크 라우터에서 사용하는 매우 효율적인 방법이다.

 

"모르는 모든 목적지는 일단 여기로 던져라"라는 설정이다.

 

형식: 

ip route 0.0.0.0 0.0.0.0 [Next-Hop IP 또는 나가는 인터페이스]

 

Router1 입장에서는 목적지가 어디든 간에 무조건 Router2(1.1.1.2)를 거쳐야만 한다.

따라서 정적 라우팅 여러 줄 대신 아래 한 줄로 끝낼 수 있다.

 

------------------------------

Router1(config)# ip route 0.0.0.0 0.0.0.0 1.1.1.2

------------------------------

 

  • 0.0.0.0 0.0.0.0: 모든 IP 대역을 의미한다.

Router3의 경우 1.1.1.5를 통해서 나가므로  아래와 같이 설정할 수 있다.

------------------------------

Router3(config)# ip route 0.0.0.0 0.0.0.0 1.1.1.5

------------------------------

 

‼️디폴트 라우트를 쓰면 안 되는 경우

Router2에서는 디폴트 라우트를 함부로 쓰면 안 된다.

Router2는 왼쪽(Router1)과 오른쪽(Router3) 양갈래 길이 있기 때문이다.

  • Router2에 0.0.0.0 0.0.0.0 1.1.1.1을 넣으면 오른쪽(Network#2)으로 갈 패킷도 왼쪽으로 가버릴 수 있다.
  • 중간에 낀 라우터는 반드시 목적지별로 정확한 경로를 지정해 주는 정적 라우팅을 사용해야 한다.

  

🔵 라우팅 테이블 확인 

Router# show ip route

 

이 명령어를 입력하면 현재 라우터가 알고 있는 모든 경로 목록이 출력된다.

여기서 설정한 값이 잘 들어갔는지 확인하려면 코드(Code) 문자를 봐야 한다.

  • S (Static): 관리자가 ip route 명령어로 직접 설정한 정적 라우팅 경로를 의미한다.
  • S* (Candidate Default): 0.0.0.0 0.0.0.0으로 설정한 디폴트 라우트를 의미한다. 뒤에 *가 붙어 있으면 "모르는 패킷은 이 길로 가겠다"는 뜻이다.
  • C (Connected): 라우터 인터페이스에 직접 연결된 네트워크를 의미한다. IP만 할당하고 인터페이스를 활성화(no shutdown)하면 자동으로 나타난다.
  • L (Local): 라우터 자신의 인터페이스에 할당된 개별 IP 주소를 의미한다.

 

라우팅 테이블이 너무 길어서 내가 설정한 정적 라우팅만 골라보고 싶을 때는 뒤에 옵션을 붙인다.

Router# show ip route static

 

 
이렇게 치면 S와 S*로 시작하는 항목만 출력된다.
 
 

🔵 최종 통신 테스트 

Network#1과 Network#2 사이에서 다양한 경로로 ping을 테스트 해본다.

 

 

3. L3 스위치에 정적 라우팅을 설정하고 싶다면?

만약 라우터 대신에 L3 스위치를 이용해서 토폴로지를 재구성한다고 해도 방법은 크게 다르지 않다.

먼저 전역 설정 모드에서 ip routing 명령으로 L3 스위치가 라우팅 기능을 할 수 있도록 설정하고,

각 인터페이스(fa0/1, fa0/2)에 들어가서 no switchport 명령으로 2계층 스위치 포트를 3계층 인터페이스로 바꾼 후 ip 주소를 할당해서 패킷이 드나들 수 있는 문을 만들어준다.

여기까지 되었다면, 이제 다시 전역 설정 모드로 가서 라우터와 같은 방법으로 ip route [목적지 네트워크] [서브넷마스크] [Next-Hop IP 또는 나가는 인터페이스] 명령으로 정적 라우팅을 설정해주면 된다.