IP 주소를 10진수로 변환하고 10진수를 IP 주소로 바꾸는 방법: 실용적인 변환 가이드

IP 주소는 네트워크에서 장치를 식별하는 핵심 요소지만, 때로는 10진수(Decimal) 형태로 변환하거나 그 반대로 작업해야 할 때가 있습니다. 예를 들어, 네트워크 분석이나 프로그래밍에서 IP를 숫자로 다루는 경우가 많죠. 이 글에서는 IP 주소를 10진수로 바꾸고, 10진수를 다시 IP로 변환하는 방법을 단계별로 설명하겠습니다.

 

IP 주소와 10진수의 기본 이해

IP 주소(IPv4)는 네 개의 8비트 숫자(0~255)로 구성됩니다. 예: 192.168.1.1. 이를 10진수로 변환하면 단일 숫자(예: 3232235777)가 됩니다. 이 과정은 네트워크 계산이나 데이터베이스 저장 시 유용합니다. 반대로, 10진수에서 IP 주소로 변환하는 것도 알아두면 편리합니다. 아래에서 두 가지 변환 방법을 자세히 살펴보겠습니다.

 

IP 주소를 10진수로 변환하는 방법

IP 주소(예: 192.168.1.1)를 10진수로 바꾸려면 각 옥텟(octet)을 256의 거듭제곱으로 계산합니다. 공식은 다음과 같습니다:

  • 공식:
    (첫 번째 옥텟 × 256³) + (두 번째 옥텟 × 256²) + (세 번째 옥텟 × 256¹) + (네 번째 옥텟 × 256⁰)

단계별 계산 예시: `192.168.1.1`

  1. 각 옥텟에 256의 거듭제곱을 곱합니다:
  2. 모두 더합니다:
  1. 결과: 192.168.1.1 → 3232235777

 

Python 코드로 쉽게 변환

수작업이 번거롭다면 Python으로 자동화할 수 있습니다:

def ip_to_decimal(ip):
    octets = ip.split(".")
    decimal = (int(octets[0]) * 256**3) + (int(octets[1]) * 256**2) + \
             (int(octets[2]) * 256**1) + (int(octets[3]) * 256**0)
    return decimal

ip = "192.168.1.1"
print(ip_to_decimal(ip))  # 출력: 3232235777

 

10진수를 IP 주소로 변환하는 방법

10진수(예: 3232235777)를 IP 주소로 바꾸려면 256으로 나누기를 반복하며 각 옥텟을 추출합니다.

단계별 계산 예시: `3232235777`

  1. 256³(16,777,216)으로 나눕니다:
  2. 나머지를 256²(65,536)으로 나눕니다:
  3. 나머지를 256¹(256)으로 나눕니다:
  4. 마지막 나머지가 네 번째 옥텟:
  1. 결과: 3232235777 → 192.168.41.1 (단계 3에서 예시 보정)

 

Python 코드로 간단히 변환

Python을 활용하면 더 빠르게 처리할 수 있습니다:

def decimal_to_ip(decimal):
    octets = []
    num = int(decimal)
    for i in range(3, -1, -1):
        octet = num // (256**i)
        num %= 256**i
        octets.append(str(octet))
    return ".".join(octets)

decimal = 3232235777
print(decimal_to_ip(decimal))  # 출력: 192.168.1.1

 

실무에서 유용한 팁

  • 계산기 사용: 수작업 계산이 어렵다면 온라인 IP 변환 도구(예: ipaddressguide.com)를 활용하세요.
  • 에러 체크: IP 주소 범위(0255)와 10진수 범위(04294967295)를 벗어나지 않도록 확인하세요.
  • 응용: 네트워크 스크립트에서 IP를 숫자로 저장해 비교 작업을 간소화할 수 있습니다.

 

IP 주소와 10진수 변환 마스터하기

IP 주소를 10진수로 변환하고, 10진수를 IP 주소로 바꾸는 방법은 간단한 수학 공식과 Python 코드로 쉽게 구현할 수 있습니다. 네트워크 관리나 프로그래밍에서 자주 쓰이는 이 기술을 익히면 작업 효율이 크게 올라갑니다. 다음 시간에는 IP 주소와 관련된 네트워크 서브넷 계산법을 다루겠습니다.

댓글

Designed by JB FACTORY