*해당 실습 포스트는 실제 장비로 실습한 내용을 복습하기 위해 Packet Tracer로 재구성한 것입니다.
실 사용 장비
- Piolink Tifront Switch
- Cisco Router 2911
문제 상황: 라우터를 이용해 LAN들의 1계층을 연결했지만, 라우팅 테이블이 설정되지 않아 LAN 간의 통신이 되지 않는다. Static, Dynamic Routing(RIP v2, OSPF)를 통해 라우팅하라.
1. Static Routing을 통해 라우팅 이해 및 해결하기
아무 설정도 하지 않은 상태에서 라우팅 테이블들을 보면 위와 같이 연결된 서브넷과 연결된 다른 라우터의 게이트웨이의 네트워크 주소만 기록되어 있다. 정적 라우팅을 통해 다른 라우터에 연결된 LAN들과 통신하기 위해서는 해당 네트워크로 직접 라우팅을 해줘야 한다.
먼저 인접 라우터에 연결된 LAN의 경우 이미 해당 라우터의 게이트웨이 네트워크 주소를 알기 떄문에 아래와 같이 연결해주면 된다.
Router(config)#ip route 192.168.1.0 255.255.255.0 1.1.1.2
Router(config)#ip route 192.168.3.0 255.255.255.0 1.1.1.13
→ 라우터2, 3의 네트워크를 연결
라우팅을 해준 후, 라우팅 테이블을 확인하면 다음과 같이 Static 방식으로 다른 네트워크로 가는 라우트가 설정된 것을 볼 수 있다. 이 과정이 완료되면 PC1에서 보내는 패킷이 PC2, PC4로 '갈' 수는 있다. 즉, 통신은 호스트 간 송수신이 모두 가능한 상태여야 하기 때문에 라우터2, 라우터4에서도 라우터1으로의 라우팅을 설정해줘야 정상적으로 통신이 이뤄지는 것이다. 방법은 동일하다.
그렇다면 라우터를 2번 거쳐야 하는 PC3까지는 어떻게 라우팅할 수 있을까? 일단 먼저 라우터3으로 라우팅을 설정해줘야 할 것이다. 비유해보자면, 나는 집(충정로역-2호선)에서 회사(안국역-3호선 근처에 위치)으로 가야하는 상황이다. 중간에 을지로3가역에서 환승을 해야한다. 하지만 나는 충정로역에서 을지로3가역으로 가는 길 밖에 모르는 상황이다. 그렇하면 해야할 일은 무엇일까? 바로 을지로 3가역(라우터2)에서 안국역(라우터3)으로 가는 길을 찾는 것이다. 따라서 아래와 같이 라우터2의 게이트웨이를 통해 라우터3와 연결된 게이트웨이의 네트워크 주소를 라우팅하는 과정이 선행돼야 한다.
Router(config)#ip route 1.1.1.4 255.255.255.252 1.1.1.2
이제 마지막으로 안국역(라우터3)에서 안국역 근처에 위치한 회사로 가기만 하면 된다. 회사로 가기 위해서는 안국역 근처 회사가 위치한 지역(LAN)에 대한 정보가 필요하다. 따라서 마지막으로 라우터3와 연결된 네트워크까지 라우팅 해주는 것이다.
Router(config)#ip route 192.168.2.0 255.255.255.0 1.1.1.6
이러한 라우팅 과정을 모든 라우터의 라우팅 테이블에 동일한 방법으로 설정해주어야 모든 LAN 간의 통신이 가능하다. 너무 복잡하지 않은가? 실제로는 더 많은 LAN이 그물망처럼 얽혀있을텐데, 이 모든 것을 Static Routing으로 해결하기엔 너무 많은 낭비가 생길 것이다. 그래서 더 편리하게 라우팅 프로토콜이 자동으로 라우팅을 해주는 방식이 Dynamic Routing이다.
2. RIP v2를 통해 해결하기
RIP과 OSPF의 개념과 동작 원리에 대해서는 이미 이전 포스트를 통해 설명했으니 이번 포스트에서는 실제로 설정하는 방법에 대해서만 설명하도록 하겠다. 궁금하다면, 라우터 관련 포스트를 참고하길 바란다.
RIP v2를 통해 Dynamic Routing하는 방법을 간략하게 설명한다면 아래와 같다.
- 라우팅하고자 하는 모든 라우터의 프로토콜을 RIP v2로 지정한다
- 라우터와 연결된 네트워크 중 통신에 필요한 네트워크를 광고한다
통신에 사용되는 모든 라우터의 라우팅 프로토콜을 동일하게 설정하는 이유는 RIP v2가 동일한 프로토콜을 사용하는 인접 장비들 사이에서 작동하는 프로토콜이기 때문이다. 또한 아래 사진과 같이 라우터들은 서로 연결된 네트워크를 광고하는 방식을 통해서 라우팅 테이블을 갱신하기 때문에 광고할 네트워크를 설정해주는 것이다.
먼저 해당 라우터의 라우팅 프로토콜을 RIP으로 설정한 후, 버전을 2로 바꿔준다. RIP v1의 경우 Classful Network를 지원하는 방식이기 때문에, Classless Network를 지원하는 RIP v2로 설정해준 것이다. no-auto-summary는 네트워크를 Classful 방식으로 광고하라는 명령어다.
Router(config)#router rip
Router(config-router)#version 2
Router(config-router)#no auto-summary
그리고 라우터와 연결된 광고할 네트워크들을 설정해준다.
Router(config-router)#network 192.168.0.0
Router(config-router)#network 1.1.1.0
Router(config-router)#network 1.1.1.12
모든 라우터에 동일한 방법으로 RIP v2를 설정해주면, 다음과 같이 라우팅 테이블이 자동으로 갱신된다.
추가적으로 RIP v2를 사용하는데 알아둘 명령어는 다음과 같다.
Router(config-router) #passive-interface [인터페이스 주소] |
불필요한 인터페이스로 광고하지 않도록 설정 = 여기로는 보내지마! |
Router(config-router) #default-information originate |
Default Gateway 광고 |
Router #show ip protocols |
Routing Protocol 정보 확인 |
Router #show ip rip database |
교환한 정보(경로) 관리 Database |
Router # debug ip rip |
RIPv2의 동작상태 확인 |
3. OSPF를 통해서 해결하기
우리가 다루고 있는 토폴로지의 경우 라우터가 몇 개 되지 않기 때문에 홉 수 제한이 있고, 정보 수렴(Convergence Time)이 느린 RIP v2로도 이상 없이 작동됐다. 하지만 더 큰 범위의 AS에서 사용하기 위해서는 OSPF 방식을 사용하는 것이 유리하다. 아래는 OSPF를 설정하는데 사용되는 명령어들이다.
Router(config) #router ospf [Process ID] |
라우팅 프로토콜로 OSPF를 설정 Process ID: 한 라우터 내에서 OSPF를 다중으로 동작시킬 때 식별하는 ID |
Router(config-router) #network [광고할 Interface ID/네트워크 주소] [Wildcard Mask] area [Area-ID] |
교환할 Link(Interface) 정보 설정 Area-ID: 한 OSPF 내에서 영역을 구분하기 위한 정보 Wildcard Mask: 서브넷 마스크와 유사한 개념으로, 서브넷 마스크를 반전시킨 형태하는 것만 알아두자 |
Router(config-router) #passive-interface [인터페이스 주소] |
불필요한 인터페이스로 광고하지 않도록 설정 |
Router(config-router) #default-information originate [always] |
Default Gateway 광고 |
기왕 알아보는 김에 라우팅 프로토콜 확인 및 설정 확인하는 명령어들도 알아두자.
Router #show ip protocols |
Routing Protocol 정보 확인 |
Router # show ip osfp [Process-ID] |
OSPF 기본 정보 확인 |
Router #show ip osfp neighbor |
Neighbor Table 정보 확인 |
Router # debug ip osfp events |
OSPF의 동작 상태 확인 |
명령어들을 알아봤으니, 이제 실제로 설정해보자. 먼저 라우팅 프로토콜로 OSPF를 설정한다. 이때 Process-ID를 넣어줘야 한다. 그리고 모드가 바뀌면 네트워크를 설정해준다.
Router(config)#router ospf 1
Router(config-router)#network 192.168.0.0 0.0.0.255 area 2
Router(config-router)#network 1.1.1.0 0.0.0.255 area 2
Router(config-router)#network 1.1.1.12 0.0.0.255 area 2
OSPF는 AS를 Area라는 단위로 나눠 관리하는데, 한 Area 내의 라우터들은 인접한 라우터 간에 Neighbor 관계를 형성하여 링크 상태를 교환하고, 동일한 링크 상태 데이터베이스를 공유하고, 이를 기반으로 경로 선택을 하게 된다. Area-ID는 이러한 Area들을 식별하게 해주는데, Area ID가 다를 경우 Neighbor 관계를 형성할 수 없기 때문에 링크 상태를 교환할 수 없다. 따라서 같은 링크 상태 데이터베이스를 가지고 라우팅하기 위해서는 Area-ID를 동일하게 해줘야 한다. Area-ID가 다른 경우도 통신은 가능하지만 이는 ABR을 통해서만 가능하기 때문에 IGP를 다루는 이번 포스트에서는 예외로 하겠다.
Process-ID의 경우, 한 라우터 내에서 여러 개의 OSPF 프로세스를 실행할 때, 각 프로세스를 구분하기 위해 사용되는 것으로, 한 라우터 내에서만 유효하다. 따라서 Area-ID와 다르게 라우터 별로 다르게 설정해도 무관하다.
힘들지만 오늘도 해낸 나를 위한 한 마디,
"아주 사소한 일이 하루의 흐름을 바꾸고, 일 년의 흐름을 바꾸고, 내가 누구인지 바꿀 수 있다" , 테일러 스위프트
'Network' 카테고리의 다른 글
[Network] NAT (8) | 2024.08.28 |
---|---|
[Network] Network ACL (0) | 2024.08.26 |
[Network] VLAN, L3 Switch (0) | 2024.08.23 |
[Network] OSI Layer 4(Transport) - TCP, UDP (0) | 2024.08.23 |
[Network] OSI Layer 3 - Router (0) | 2024.08.22 |