본문 바로가기
프로그래밍/네트워크

네트워크 경로 제어: 라우팅, 기본 게이트웨이, 서브넷의 이해

by min_daily 2024. 11. 30.

 

라우팅 - 통신 경로를 제어하는 기능

인터넷은 전 세계의 LAN을 연결한 거대한 네트워크로, 방대한 양의 패킷을 처리하기 위해서는 단순히 목적지를 지정하는 것뿐만 아니라, 효과적으로 경로를 제어하는 라우팅 기술이 필요합니다.

 

경로를 제어하는 라우팅
라우터의 기본 기능은 패킷을 참조하여 자신이 관리하는 LAN으로 들어오는 패킷은 받아들이고, 그렇지 않은 경우 다른 라우터로 전달하는 것입니다. 이 과정에서 라우터는 패킷이 목적지에 도달하기 위해 어떤 경로를 거쳐야 하는지를 판단하는 역할도 합니다. 경로를 제어할 수 있다면 경유하는 라우터 수를 최소화하거나, 고장 난 라우터를 우회하는 등의 유연한 조정이 가능합니다. 또한, 회선 속도나 요금을 고려하여 최단 경로 또는 최저 요금 경로로 제어할 수 있습니다. 이러한 경로 정보를 메트릭이라고 하며, 메트릭 및 목적지 라우터 정보는 라우팅 테이블이라는 표로 관리됩니다.

 

라우팅 프로토콜의 종류
라우터 간 경로를 제어하고 정보를 교환하는 프로토콜을 라우팅 프로토콜이라고 하며, 크게 IGP(Interior Gateway Protocol)와 BGP(Exterior Gateway Protocol)로 나눌 수 있습니다. IGP는 동일한 관리 정책을 가진 라우터(Autonomous System, AS) 간의 경로를 제어하는 프로토콜입니다. 동일한 관리 정책으로 운영되는 라우터는 AS 번호라는 식별자로 구별되며, 이는 LAN 내부와 외부 모두에 적용됩니다. AS 번호는 일반적으로 통신 사업자와 공급자별로 할당됩니다.
반면 BGP는 여러 AS 간의 라우팅 정보를 교환하는 프로토콜로, 인터넷의 핵심적인 경로 결정에 사용됩니다. 라우팅 프로토콜은 정보의 처리 방식에 따라 거리 벡터형, 링크 상태형, 하이브리드형, 경로 벡터형으로 나뉘며, 각 방식은 장단점이 있습니다.

 

기본 게이트웨이 - 미지의 패킷을 보내는 곳

라우터는 자신이 관리하는 LAN으로 들어오는 패킷과 목적지를 알고 있는 패킷을 제외하고는 기본적으로 폐기합니다. 하지만 미지의 패킷이 도착했을 때 이를 처리할 기본 게이트웨이가 필요합니다.
미지의 패킷을 처리하는 원리
라우터는 자신이 관리하는 LAN으로 들어오는 패킷을 제외하고, 라우팅 테이블에 따라 다른 라우터로 패킷을 전달합니다. 일반적으로 패킷은 인접 라우터로 전송되며, 이 인접 라우터도 마찬가지로 자신의 라우팅 테이블을 참조하여 패킷을 전달합니다. 이 과정을 반복하여 최종 목적지 라우터로 패킷이 도달합니다.
그러나 자신이 관리하는 LAN에서도 오지 않고, 라우팅 테이블을 통해 어디로 보낼지 알 수 없는 패킷이 도착하면, 라우터는 기본적으로 패킷을 폐기합니다. 이처럼 처리 방법이 알려지지 않은 패킷은 중간에서 버려지게 됩니다. 라우팅 프로토콜은 기본 게이트웨이라는 개념을 도입하여, 자신이 판단할 수 없는 IP 주소의 패킷을 전송할 기본 경로를 지정할 수 있도록 합니다.

 

기본 게이트웨이의 IP 주소
LAN 내부의 장치 간 통신에서는 일반적으로 LAN을 관리하는 라우터가 목적지 IP 주소를 알고 있어 패킷을 올바른 목적지로 전송할 수 있습니다. LAN 외부의 인터넷 웹 사이트로의 패킷도 라우터를 통해 전송할 수 있으며, 라우터는 외부 네트워크와 연결하는 포트를 통해 적절한 인접 라우터로 패킷을 전달합니다. 따라서 LAN 내 각 장치의 기본 게이트웨이는 라우터의 IP 주소를 지정합니다. 기본 게이트웨이는 외부 네트워크에 연결된 라우터에도 설정할 수 있습니다.
라우팅 테이블에서 판단할 수 없는 목적지 IP 주소는 상위 라우터나 인터넷 경계에 있는 라우터를 지정할 수 있습니다.

 

서브넷 - 네트워크를 세그먼트로 분할하는 구조

네트워크는 일반적으로 계층 구조로 구성되어 있으며, 서브넷은 하나의 네트워크를 여러 세그먼트로 나누는 것을 의미합니다. 특정 네트워크에 대해 각 세그먼트를 서브넷이라고 합니다.

 

네트워크를 분할하는 방식
일반적인 LAN은 장비의 종류, 용도, 사용 부서 등에 따라 세그먼트로 분할됩니다. IP 네트워크에서는 IP 주소의 상위 1비트부터 5비트까지의 패턴에 따라 주소 영역을 클래스 A, B, C로 나누어 생각합니다. 클래스 주소는 글로벌 IP 주소의 배포 단위로 사용되었으나, 클래스 방식은 배포에 낭비가 많아 IP 주소의 임의의 비트 위치에서 클래스 부분(네트워크부)과 주소 부분(호스트부)으로 구분하는 CIDR(Classless Inter-Domain Routing) 방식이 사용됩니다.
네트워크 부는 IP 주소의 상위 비트를 사용하여 해당 네트워크를 대표하는 주소입니다. 호스트 부는 그 네트워크 내에서 사용할 수 있는 개별 주소 범위를 나타냅니다. 예를 들어, 클래스 C의 192.168.100.0이 네트워크부라면 192.168.100.0에서 192.168.100.255까지의 주소를 각각의 호스트에 할당할 수 있습니다.

 

네트워크 부와 호스트 부를 나타내는 방식
CIDR 방식으로 분할한 네트워크가 서브넷입니다. 서브넷의 네트워크 부와 호스트부 구분은 서브넷 마스크로 나타냅니다. 네트워크 부의 비트 패턴을 모두 1(255)로 하고 나머지를 모두 0으로 한 주소 표기가 서브넷 마스크입니다. 앞의 예에서는 255.255.255.0이 서브넷 마스크입니다.
개별 호스트의 IP 주소만 봐서는 서브넷 구분이 몇 비트인지 알 수 없기 때문에, CIDR 방식에서는 IP 주소의 뒤에 슬래시와 네트워크 부의 비트 수를 붙인 프리픽스 표기로 나타냅니다. 예를 들어, 192.168.100.0/24 와 같이 표기하면, 이는 192.168.100.0 네트워크에 속하는 서브넷을 나타냅니다.

라우팅, 기본 게이트웨이, 서브넷은 네트워크의 효율적 운영에 필수적인 요소입니다. 라우팅은 패킷의 경로를 제어하여 효율적인 데이터 전송을 가능하게 하고, 기본 게이트웨이는 미지의 패킷을 처리할 수 있는 경로를 제공합니다. 서브넷은 네트워크를 세그먼트로 나누어 관리의 용이성을 높이고, IP 주소의 효율적인 사용을 지원합니다. 이러한 요소들을 이해함으로써, 네트워크 설계 및 운영에 있어 더욱 효과적으로 대응할 수 있습니다.