[NET-002][입문] IP 주소·서브넷·게이트웨이 이해하기 > IT 기술 공유

본문 바로가기
사이트 내 전체검색

IT 기술 공유

[NET-002][입문] IP 주소·서브넷·게이트웨이 이해하기

페이지 정보

profile_image
작성자 기술팀장
댓글 0건 조회 228회 작성일 26-08-29 21:34

본문

[이번 수업]

IP 주소가 무엇을 가리키는지, 접두사 길이로 서브넷 범위를 어떻게 나누는지, 목적지가 다른 네트워크에 있을 때 게이트웨이가 왜 필요한지 배웁니다.

[선수지식]

NET-001의 패킷·라우터·인터넷 기본 흐름과 2진수의 자릿값을 알면 좋습니다. Python 3만 있으면 실습할 수 있습니다.

[학습목표]

1. IPv4 주소와 접두사 길이의 역할을 설명한다.
2. 네트워크 주소와 브로드캐스트 주소를 계산한다.
3. 목적지가 같은 서브넷인지 판별한다.
4. 기본 게이트웨이와 기본 경로의 관계를 이해한다.

[핵심개념]

IP 주소는 IP 네트워크에서 통신 지점을 식별하는 논리 주소입니다. IPv4는 32비트를 192.168.10.34처럼 네 개의 십진수로 표시합니다. 주소는 인터페이스에 설정되고 DHCP나 운영자가 바꿀 수 있으므로 사람이나 장비의 영구 신원으로 보면 안 됩니다.

192.168.10.34/24에서 /24는 앞 24비트가 네트워크 부분이라는 뜻입니다. 점으로 쓴 서브넷 마스크는 255.255.255.0입니다. 이 예의 네트워크 주소는 192.168.10.0, 브로드캐스트 주소는 192.168.10.255입니다.

출발지와 목적지가 같은 서브넷이면 호스트는 로컬 링크에서 목적지를 찾아 직접 전달합니다. 다른 서브넷이면 라우팅 테이블에서 맞는 경로를 찾고, 더 구체적인 경로가 없을 때 기본 경로의 다음 홉인 기본 게이트웨이로 보냅니다. IPv4 기본 경로는 흔히 0.0.0.0/0으로 표시됩니다. 게이트웨이는 보통 같은 로컬 네트워크에서 도달 가능한 라우터 주소지만 반드시 끝자리가 .1인 것은 아닙니다.

RFC 1918의 사설 IPv4 범위는 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16입니다. 이 주소는 공용 인터넷에서 직접 라우팅하기 위한 주소가 아니며 가정·회사 내부에서 재사용됩니다. 사설 주소라는 사실만으로 통신이 암호화되거나 안전해지는 것은 아닙니다.

[따라하기]

subnet_check.py에 다음을 저장하세요.

from ipaddress import ip_address, ip_interface

host = ip_interface("192.168.10.34/24")
targets = ["192.168.10.99", "192.168.11.2"]

print("host:", host.ip)
print("network:", host.network)
print("netmask:", host.network.netmask)
print("broadcast:", host.network.broadcast_address)

for target in targets:
    same = ip_address(target) in host.network
    print(target, "same subnet:", same)

Windows는 py subnet_check.py, macOS·Linux는 python3 subnet_check.py로 실행합니다. 예상 결과는 다음과 같습니다.

host: 192.168.10.34
network: 192.168.10.0/24
netmask: 255.255.255.0
broadcast: 192.168.10.255
192.168.10.99 same subnet: True
192.168.11.2 same subnet: False

첫 목적지는 같은 /24에 있고 두 번째는 밖이므로 보통 두 번째 통신에 라우터 경로가 필요합니다. 내 컴퓨터의 읽기 전용 정보를 보려면 Windows는 ipconfig와 route print, macOS는 ifconfig와 route -n get default, Linux는 ip address와 ip route를 사용합니다.

[흔한 실수]

첫째, /24를 주소의 일부 숫자로 생각합니다. 이는 네트워크 비트 수입니다. 둘째, 같은 192.168로 시작하면 모두 같은 서브넷이라고 판단합니다. 접두사까지 계산해야 합니다. 셋째, 게이트웨이는 항상 .1이라고 가정합니다. 다섯째, 사설 IP면 인증과 암호화가 필요 없다고 오해합니다.

[보안 주의]

명령은 본인 소유 장비의 설정 확인에만 사용하고 다른 주소 대역을 스캔하지 마세요. 화면을 공유할 때 공인 IP, 내부 주소 구조, 인터페이스 이름 같은 정보를 가립니다. IP 주소는 신원 증명이 아니므로 접근 제어에는 인증을 사용하고 외부 통신은 TLS로 보호하세요. 내부망도 신뢰하지 말고 방화벽과 최소 권한을 적용합니다.

[직접 해볼 과제]

host를 192.168.10.34/25로 바꾸고 192.168.10.99와 192.168.10.200이 같은 서브넷인지 비교하세요. 새 네트워크 주소, 마스크, 브로드캐스트 주소도 기록하세요.

[확인문제]

1. /24와 255.255.255.0은 어떤 관계인가요?
2. 목적지가 같은 서브넷인지 판단할 때 주소 외에 무엇이 필요한가요?
3. 라우팅 테이블에 더 구체적인 경로가 없을 때 패킷은 어디로 가나요?

[다음 학습]

순환 커리큘럼의 다음 글은 CLOUD-002 리전·가용영역·엣지입니다. 네트워크 트랙에서는 NET-003 DNS가 이름을 주소로 바꾸는 과정으로 이어집니다.

[공식 참고 자료]

RFC 4632 CIDR 주소 전략
https://www.rfc-editor.org/rfc/rfc4632.html

RFC 1918 사설 IPv4 주소
https://www.rfc-editor.org/rfc/rfc1918.html

RFC 1122 인터넷 호스트 통신 계층
https://www.rfc-editor.org/rfc/rfc1122.html

Python ipaddress
https://docs.python.org/3/library/ipaddress.html

Microsoft TCP/IP 주소와 서브넷
https://learn.microsoft.com/en-us/troubleshoot/windows-client/networking/tcpip-addressing-and-subnetting

댓글목록

등록된 댓글이 없습니다.

회원로그인

회원가입

사이트 정보

회사명 : 회사명 / 대표 : 대표자명
주소 : OO도 OO시 OO구 OO동 123-45
사업자 등록번호 : 123-45-67890
전화 : 02-123-4567 팩스 : 02-123-4568
통신판매업신고번호 : 제 OO구 - 123호
개인정보관리책임자 : 정보책임자명

접속자집계

오늘
4,402
어제
6,862
최대
16,772
전체
770,353
Copyright © 소유하신 도메인. All rights reserved.