📚 네트워크 · 패킷 분석 › 01. TCP/IP 구조 이해 — 07편
이전 글: 06. MAC Address란 무엇인가 · 다음 글: 08. IPv4 주소 구조

1. 개념

IP 주소(Internet Protocol Address) 는 3계층(네트워크 계층)에서 네트워크를 넘어 목적지 호스트를 찾아가기 위한 논리 주소입니다. 우편 주소에 비유하면 "어느 지역(네트워크)의 몇 번지(호스트)인가"를 함께 담고 있어, 라우터가 이를 보고 전달 방향을 결정할 수 있습니다.

현재 두 버전이 함께 쓰입니다.

구분IPv4IPv6
길이32비트128비트
표기점으로 구분한 10진수 4개 (192.168.10.25)콜론으로 구분한 16진수 8그룹 (2001:db8::25)
주소 수약 43억 개 (2^32)2^128개
상세08. IPv4 주소 구조09. IPv6 기초 — 관제에서 놓치기 쉬운 두 번째 주소 체계

이 글은 두 버전에 공통된 "IP 주소라는 개념"만 다루고, 비트 구조는 각 전용 글에 맡깁니다.


2. 동작 원리

IP 주소와 MAC 주소는 역할이 다릅니다. IP는 최종 목적지(끝과 끝), MAC은 바로 다음 장치(구간) 를 가리킵니다.

 [PC 192.168.10.25]      [라우터 R1]                 [라우터 R2]      [서버 203.0.113.10]
  MAC: AA                in: BB / out: CC           in: DD / out: EE   MAC: FF
        │  구간 1                │   구간 2                  │  구간 3        │
        └──────────────→ ────────┴────────────────→ ─────────┴────────────→ ┘
 IP  출발지/목적지 :  192.168.10.25 → 203.0.113.10   (세 구간 모두 동일*)
 MAC 출발지/목적지 :  AA → BB       |  CC → DD       |  EE → FF   (구간마다 바뀜)

 * NAT 장비를 지나면 IP도 바뀜 → 49편에서 다룸

라우터는 패킷을 받을 때마다 목적지 IP를 보고 다음 경로를 고른 뒤, 그 구간에 맞는 새 MAC 주소로 프레임을 다시 만들어 보냅니다. 이 과정은 17. 게이트웨이와 라우팅 기초 — 다른 네트워크로 패킷은 어떻게 가는가에서 자세히 다룹니다.

IP 주소는 네트워크 부분 + 호스트 부분으로 이루어져 있고, 그 경계는 서브넷 마스크(또는 프리픽스 길이)가 정합니다(12. Subnet Mask란 무엇인가, 13. Network Address와 Host Address).


3. 주요 특징

① MAC 주소와 비교

구분MAC 주소IP 주소
계층2계층3계층
범위같은 링크 안네트워크를 넘어 끝과 끝
부여 방식제조 시 기본값(변경 가능)관리자 설정 또는 자동 할당
구조제조사(OUI) + 장치 번호네트워크 부분 + 호스트 부분
위치 정보없음 (어디에 연결돼도 같음)있음 (연결된 네트워크에 따라 바뀜)

② 할당 방식이 여러 가지입니다.

방식설명흔한 사용처
정적(Static)관리자가 직접 고정 설정서버, 네트워크 장비, 프린터
DHCP서버가 일정 기간(임대) 동안 자동 할당사용자 PC, 무선 단말
SLAAC(IPv6)라우터 광고를 받아 호스트가 스스로 생성IPv6 환경
링크 로컬할당 실패 시 자동 생성 (169.254.x.x, fe80::/10)DHCP 장애 시, IPv6 기본

③ 하나의 인터페이스에 여러 IP를 둘 수 있고, 모든 호스트는 자기 자신을 가리키는 루프백 주소(127.0.0.1, ::1)를 가집니다.

④ 공인 IP와 사설 IP로 나뉩니다. 인터넷에서 유일한 주소와 조직 내부에서만 쓰는 주소의 구분은 10. 공인 IP와 사설 IP에서 다룹니다.


4. 예시

실습 예시 — Rocky Linux / Ubuntu 공통

# 예시(값은 환경마다 다름)
ip -4 addr show ens33     # IPv4 주소와 프리픽스 길이
ip -6 addr show ens33     # IPv6 주소
hostname -I               # 이 호스트의 모든 IP를 한 줄로
# 출력 형식 예시(값은 환경마다 다름)
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 ...
    inet 192.168.10.25/24 brd 192.168.10.255 scope global dynamic noprefixroute ens33
       valid_lft 85432sec preferred_lft 85432sec
  • inet 192.168.10.25/24: IP 주소와 네트워크 부분 길이(24비트)
  • dynamic, valid_lft: DHCP로 받은 주소이며 남은 임대 시간
  • brd 192.168.10.255: 이 네트워크의 브로드캐스트 주소

Windows에서는 ipconfig의 "IPv4 주소"와 "서브넷 마스크", ipconfig /all의 "DHCP 사용", "임대 만료 날짜" 항목이 같은 정보입니다.


5. 보안 관점

  • 출발지 IP는 위조될 수 있습니다. IP 헤더의 출발지 주소는 보내는 쪽이 채우는 값이므로, UDP·ICMP처럼 연결 수립 없이 동작하는 프로토콜에서는 위조된 출발지가 가능합니다. 반면 TCP는 3-Way Handshake 응답이 위조된 주소로 돌아가므로, 위조 주소로 정상 연결을 완성하기는 어렵습니다.
  • IP는 사람이 아닙니다. 하나의 공인 IP 뒤에 NAT로 수백 명이 있을 수 있고, DHCP 환경에서는 같은 사설 IP가 시간에 따라 다른 장치에 할당됩니다.
  • IP 기반 접근 통제는 기본이지만 충분하지 않습니다. 허용된 IP의 호스트가 감염되면 그 호스트를 통한 접근도 허용됩니다.

6. SOC 관점

IP 주소는 관제에서 가장 많이 쓰이는 피벗(검색 기준) 값입니다. 다만 IP만으로 결론을 내리면 안 되며, 반드시 시간과 함께 해석해야 합니다.

  • 내부 IP → 그 시각의 DHCP 할당 기록 → MAC → 자산·사용자
  • 외부 IP → 평판(위협 인텔리전스), 소유 기관(WHOIS), 같은 시간대 다른 로그

관제자가 확인할 질문은 다음과 같습니다.

  • 이 IP는 내부 자산인가, 외부 주소인가? 내부라면 그 시각에 누구에게 할당되어 있었는가?
  • 이 IP가 NAT·프록시·로드밸런서의 주소는 아닌가?
  • 출발지 IP가 위조되었을 가능성이 있는 프로토콜(UDP·ICMP)인가?

⚠️ 오탐 주의: 외부 IP 평판 조회 결과가 "악성"이라도, 클라우드·CDN 주소는 여러 고객이 공유하고 소유자가 자주 바뀝니다. 과거 평판만으로 현재 통신을 악성으로 단정하지 않아야 합니다. NAT로 인해 IP가 바뀌는 구조는 49. 사설 IP · 공인 IP와 NAT — 로그의 IP가 서로 다른 이유에서 다룹니다.


7. 핵심 정리

  • IP 주소는 네트워크를 넘어 목적지를 찾기 위한 3계층 논리 주소입니다(IPv4 32비트, IPv6 128비트).
  • IP는 끝과 끝을, MAC은 구간을 가리키며, 라우터를 지날 때 MAC만 바뀝니다(NAT 제외).
  • IP 주소는 네트워크 부분과 호스트 부분으로 이루어지고, 경계는 서브넷 마스크가 정합니다.
  • 출발지 IP는 위조될 수 있고, 하나의 IP가 한 사람을 뜻하지 않습니다.
  • 관제에서는 IP를 반드시 시간·DHCP·NAT 기록과 함께 해석합니다.
profile
코드에 숨겨진 위협을 읽고 AI로 보안의 미래를 설계합니다. 프론트엔드 개발 경험을 자산 삼아 더 견고하고 지능적인 보안 운영 시스템을 구축해 나가는 과정을 기록합니다

0개의 댓글