IP 주소 계산기 (CIDR 계산)

ISMS-P 인증심사를 진행하는 과정에서 매우 중요한 심사 포인트 중 하나가 바로 “네트워크 구성의 안전성”을 평가하는 것이다. ISMS-P 인증기준에서는 네트워크 구성의 안전성 평가에 대해 다음과 같은 기준을 제시하고 있다.

ISMS-P 인증기준 2.6.1 네트워크 접근

네트워크에 대한 비인가 접근을 통제하기 위하여 IP관리, 단말인증 등 관리절차를 수립·
이행하고, 업무목적 및 중요도에 따라 네트워크 분리(DMZ, 서버팜, DB존, 개발존 등)와
접근통제를 적용하여야 한다.

인증기준에서는 네트워크 구성과 관련하여 업무목적 및 중요도에 따라 네트워크를 분리하고 접근통제를 적용하도록 요구하고 있다.

사실 네트워크의 분리와 분리된 네트워크 간 접근통제라는 문장으로 표현되는 네트워크의 안전성은 네트워크를 처음 설계할 때 그 기준을 수립하고 설계해야 한다. 하지만 현실적으로 ISMS-P 인증심사를 다니면서 경험한 바에 의하면 상당수 기업의 네트워크가 안전성을 고려하지 않고 설계된 것을 확인할 수 있었다.

네트워크의 분리를 위한 기준과 분리된 네트워크 간 접근을 통제할 수 있는 방안을 마련하지 않고 네트워크를 구성하게 되면 추후 서비스 및 네트워크를 확장할 때 심각한 보안수준의 하락을 경험하게 되지만 한번 설계하고 구축한 네트워크는 쉽게 뜯어 고칠 수 없다는 현실적인 어려움으로 인해 위험을 감수할 수 밖에 없는 경우도 많다. 그 과정에서 대부분의 IT운영부서는 그 위험의 상승을 간과하거나 침묵하고 넘어가는 경우가 많다. 그 위험에 대해 언급하면 일이 힘들어지니까…

IP주소 계산기의 필요성

필자는 네트워크 전문가는 아니다. 다만 업무상 네트워크 구성도를 보면서 구성도에 표시된 IP주소를 보게되면 /17, /19, /21, /22와 같이 CIDR 형태로 표시된 IP주소를 자주 접하게 된다. 하지만 이렇게 표시된 IP 주소는 그 시작IP와 끝 IP주소를 쉽게 암산으로 계산할 수 없다. (나쁜 머리를 한탄하게 된다) 그래서 IP 주소를 계산하는 앱을 폰에 설치해 사용하곤 한다.

하지만 욕심은 끝이 없는 법. 내가 원하는 계산과 결과를 출력하는 앱을 찾기 귀찮아서(?) 계산기를 PHP 코드를 작성해 웹사이트로 만들어 보았다. 취미삼아 코딩을 하기도 하니까 말이다.

IP 주소 계산기의 기능

PHP 코드로 작성한 IP 주소 계산기 화면(계산기 바로가기)이다. 현재 IP 주소 계산기에는 모두 세 가지의 계산기능이 구현되어 있다.

IP주소 계산기 화면
IP주소 계산기 화면 (바로가기)

먼저 시작 IP 주소와 마지막 IP 주소를 입력하면 두 IP를 포함하는 가장 작은 서브넷을 계산해 주는 기능이다. 예를 들면 다음과 같이 192.168.219.10 과 192.168.220.30을 포함하는 가장 작은 서브넷을 계산해준다.

계산의 결과에는 CIDR을 포함해 표시해준다. 네트워크 구성도와 IP 주소 현황에서 네트워크가 CIDR로 표시된 경우 네트워크가 제대로 분리되었는지를 확인할 때 참고하기 좋은 기능이다.

그리고 다음과 같이 특정 IP가 포함되는 서브넷을 CIDR 방식으로 나열해주는 기능도 필요할 때가 많다.

입력한 IP를 포함하는 서브넷을 목록으로 표시하고 각 서브넷의 시작 IP와 끝 IP도 함께 이해하기 쉽게 표시해준다.

마지막으로 필요한 기능은 네트워크 구성도와 IP 현황자료에 CIDR로 표시된 네트워크가 표시되어 있을 경우 시작과 끝 IP를 계산하는 기능이다. /23이나 /24, /16 등 일부 CIDR 표기는 시작과 끝 IP주소를 바로 알 수 있지만 그렇지 않은 /CIDR 표기가 더 많은 것이 사실이다.

예를 들어 서버의 주소와 서브넷이 10.0.20.20/20 으로 표기되어 있다면 이 네트워크의 시작 IP와 끝 IP는 쉽게 알 수 없다.

네트워크는 필요한 만큼의 범위로 목적과 용도에 따라 분리하고 접근통제를 적용하는 것이 원칙이다. 물론 성능을 고려하지 않을 수는 없지만 이 원칙이 무시될 경우 뒤 따라올 수 있는 위험도 함께 고려하여 네트워크를 설계해야 한다. 게다가 추후 사용량의 증가에 따라 네트워크를 확장할 때의 확장성도 고려해야 한다.

최근에는 SDN 및 NFV 기술을 통해 네트워크를 가상화하는 경우도 많다. 이 때는 특히 컨트롤 플레인에 대한 접근을 통제하기 위해 컨트롤 플레인과 데이터 플레인 네트워크의 분리와 접근통제를 구현해야 하며 물리적 인프라를 공유하는 특성 상 서비스 네트워크에 대한 침해가 전체 네트워크를 위험에 빠뜨릴 수 있다는 점도 고려해야 한다.

#IP주소계산 #서브넷계산 #CIDR계산

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다