소개
IPNetwork CLI는 IPv4 및 IPv6 네트워크 계산을 명령줄에서 수행할 수 있는 오픈소스 도구입니다. .NET 개발자를 위해 작성된 C# 기반의 라이브러리와 함께 제공되며, 복잡한 네트워크 마스크, CIDR, 서브넷, 슈퍼넷 계산을 간단한 API로 처리합니다. BSD 라이선스로 배포되며, Chocolatey를 통해 Windows에서도 쉽게 설치할 수 있습니다.
상세정보
기본 네트워크 정보 조회
IP 주소와 CIDR 표기법을 입력하면 네트워크 주소, 서브넷 마스크, CIDR 값, 브로드캐스트 주소, 첫 번째 및 마지막 사용 가능한 IP 주소, 사용 가능한 총 IP 수 등을 한눈에 확인할 수 있습니다.
서브넷 분할 및 슈퍼넷 병합
대용량 네트워크를 지정된 CIDR 값으로 여러 개의 작은 서브넷으로 분할하거나, 여러 개의 서브넷을 하나의 큰 네트워크로 병합하는 작업을 자동으로 수행합니다. 이는 네트워크 계획 수립 및 리소스 할당에 유용합니다.
네트워크 포함 및 오버랩 검사
특정 IP 주소나 네트워크가 다른 네트워크에 포함되는지, 또는 두 네트워크가 서로 겹치는지(오버랩) 여부를 테스트할 수 있습니다. 네트워크 충돌 방지 및 구성 검증에 활용됩니다.
IPv6 ULA(Unique Local Address) 생성
IPv6의 고유 로컬 주소(ULA) 접두사를 랜덤으로 생성하고, 이를 기반으로 여러 개의 서브넷을 만들 수 있는 기능을 제공합니다. 프라이빗 네트워크 설계에 적합합니다.
IP 범위를 CIDR 블록으로 변환
IP 주소 범위(예: 192.168.1.45 – 192.168.1.65)를 해당 범위를 정확히 포함하는 최적의 CIDR 블록 집합으로 변환합니다. IPv4 및 IPv6 범위 모두 지원됩니다.
다운로드 및 설치 방법
Windows에서는 Chocolatey 패키지 관리자를 사용하여 간편하게 설치할 수 있습니다. 관리자 권한이 있는 명령 프롬프트나 PowerShell에서 아래 명령어를 실행합니다.
- Chocolatey 설치: choco install ipnetwork
설치가 완료되면 시스템 전체에서 ipnetwork 명령어를 사용할 수 있습니다. 다른 플랫폼에서는 GitHub 릴리스 페이지에서 호환되는 네이티브 바이너리를 다운로드하여 직접 설치할 수도 있습니다.
기본 사용법 및 명령어
설치 후 명령 프롬프트에서 ipnetwork 뒤에 네트워크 주소를 입력하면 기본 정보를 출력합니다. 예를 들어, ipnetwork 10.0.0.0/8은 해당 Class A 네트워크의 전체 세부 정보를 보여줍니다.
- 네트워크 분할:
ipnetwork -s [CIDR] [네트워크]명령어로 네트워크를 지정된 CIDR 값으로 분할합니다. 예:ipnetwork -s 9 10.0.0.0/8 - 네트워크 병합(슈퍼넷):
ipnetwork -w [네트워크1] [네트워크2] ...로 여러 네트워크를 가장 작은 단일 서브넷으로 병합합니다.-W옵션은 하나의 단일 서브넷으로 병합할 때 사용합니다. - 포함 테스트:
ipnetwork -C [IP] [네트워크1] [네트워크2] ...로 특정 IP가 네트워크에 포함되는지 확인합니다. - 오버랩 테스트:
ipnetwork -o [네트워크1] [네트워크2] ...로 두 네트워크가 겹치는지 확인합니다.
자세한 사용법과 전체 옵션 목록은 명령어에 -h 옵션을 붙여 실행하면 확인할 수 있습니다.
이런 경우에 유용합니다
- 네트워크 관리 및 설계: 네트워크 엔지니어나 관리자가 할당된 IP 주소 공간을 효율적으로 분할하고 관리해야 할 때.
- 방화벽 및 라우팅 설정: 방화벽 규칙이나 라우팅 테이블을 구성할 때 정확한 서브넷 정보가 필요할 때.
- 개발 및 테스트 환경 구성: 애플리케이션 개발 과정에서 테스트용 네트워크 환경을 빠르게 구성할 때.
- 네트워크 문제 해결: IP 주소 충돌이나 구성 오류를 빠르게 진단하고 해결할 때.
지원 환경 및 시스템 요구사항
IPNetwork CLI는 Windows, macOS, Linux 등 여러 운영 체제에서 실행 가능합니다. 네이티브 AOT(Ahead-of-Time) 바이너리로 제공되므로 .NET 런타임이 설치되지 않은 환경에서도 동작합니다. .NET 개발자용 라이브러리 버전을 사용하는 경우, 호환되는 .NET 버전이 필요할 수 있습니다.
최신 버전 및 업데이트
최신 버전 정보와 변경 사항은 공식 GitHub 저장소의 릴리스 페이지에서 확인할 수 있습니다. Chocolatey를 통해 설치한 경우, 패키지 관리자를 사용하여 업데이트를 확인하고 적용할 수 있습니다.
라이선스
이 프로젝트는 BSD-2-Clause 라이선스 하에 공개되어 있습니다. 자유롭게 사용, 수정, 배포할 수 있습니다.
시스템 요구사항
Chocolatey를 사용하여 설치할 때는 Windows 시스템에 Chocolatey 패키지 관리자가 미리 설치되어 있어야 합니다. 또는 GitHub 릴리스에서 네이티브 바이너리를 직접 다운로드하여 사용할 수도 있습니다.


