IP 패킷 헤더: 형식, 필드
⚡ 스마트 요약
IP 헤더는 모든 IP 패킷의 시작 부분에 배치되는 메타데이터로, 버전, 헤더 길이, 전체 길이, TTL(Time to Live), 프로토콜, 체크섬, 출발지 및 목적지 주소와 같은 필드를 포함하며, 라우터는 이를 읽어 데이터를 전달합니다.

IP 헤더란 무엇입니까?
IP 헤더는 IP 패킷의 시작 부분에 있는 메타 정보입니다. 여기에는 IP 버전, 패킷 길이, 출발지 및 목적지와 같은 정보가 표시됩니다.
IPv4 헤더 형식은 길이가 20~60바이트이며, 라우팅 및 전송에 필요한 정보를 포함합니다. 헤더는 버전, 헤더 길이, 전체 길이, 식별자, 플래그, 체크섬, 출발지 IP 주소, 목적지 IP 주소와 같은 필드로 구성됩니다. 이러한 필드들은 라우팅 및 전송에 필요한 필수 데이터를 제공합니다. transmit 패킷을 한 호스트에서 다른 호스트로 안정적으로 전송합니다.
IPv4 헤더 구성 요소/필드
아래 다이어그램은 IPv4 헤더의 전체 형식을 보여주며, 각 필드는 올바른 위치와 비트 너비로 그려져 있습니다.
다음은 IP 패킷 헤더의 다양한 구성 요소/필드입니다.
- 버전 : 첫 번째 IP 헤더 필드는 4비트 버전 표시기입니다. IPv4에서 이 4비트 값은 0100으로 설정되며, 이는 이진수로 4를 나타냅니다. 라우터가 지정된 버전을 지원하지 않으면 패킷은 삭제됩니다.
- 인터넷 헤더 길이: 인터넷 헤더 길이(IHL)는 4비트 크기입니다. HELEN(Header Length)이라고도 합니다. 이 IP 구성 요소는 헤더에 포함된 32비트 워드의 개수를 나타냅니다.
- 서비스 유형: 서비스 유형은 차별화된 서비스라고도 합니다. Code DSCP(데이터그램 우선순위) 필드는 데이터 스트리밍이나 VoIP 통화의 서비스 품질과 관련된 기능을 제공합니다. 처음 3비트는 우선순위 비트입니다. 또한 데이터그램을 처리하는 방법을 지정합니다.
- 총 길이: 전체 길이는 바이트 단위로 측정됩니다. IP 데이터그램의 최소 크기는 20바이트이고 최대 크기는 65,535바이트입니다. HELEN 함수와 전체 길이를 사용하여 페이로드의 크기를 계산할 수 있습니다. 모든 호스트는 576바이트 데이터그램을 읽을 수 있어야 합니다. 그러나 네트워크의 호스트가 데이터그램을 읽기에 너무 큰 경우, 데이터그램 분할 방식이 널리 사용됩니다.
- 신분증: 식별자 필드는 IP 데이터그램의 각 조각을 고유하게 식별하는 데 사용됩니다. 일부에서는 이 필드를 패킷 정보 추가와 같은 다른 용도로 사용할 것을 권장하기도 합니다. tracING.
- IP 플래그: 플래그는 조각을 제어하고 식별하는 데 도움이 되는 3비트 필드입니다. 가능한 구성은 다음과 같습니다. 비트 0은 예약되어 있으며 0으로 설정해야 합니다. 비트 1은 조각화를 하지 않음을 의미하고, 비트 2는 더 많은 조각을 의미합니다.
- 조각 오프셋: 프래그먼트 오프셋은 특정 데이터그램에서 특정 프래그먼트보다 앞쪽에 있는 데이터 바이트 수를 나타냅니다. 8바이트 단위로 지정되며 최대값은 65,528바이트입니다.
- 생존 시간: TTL(Time To Live)은 데이터그램이 인터넷 시스템에서 유지될 수 있는 최대 시간을 나타내는 8비트 필드입니다. 데이터그램이 처리될 때마다 TTL 값은 1씩 감소합니다. TTL 값이 0에 도달하면 데이터그램은 폐기되어 패킷이 무한정 전송되는 것을 방지합니다. TTL 값의 범위는 0에서 255까지입니다.
- 프로토콜 : 이 IPv4 헤더 필드는 데이터그램의 뒷부분에 어떤 인터넷 프로토콜이 사용되는지를 나타냅니다. 예를 들어, 숫자 6은 TCP를, 17은 UDP 프로토콜을 나타냅니다.
- 헤더 체크섬: 다음 구성 요소는 16비트 헤더 체크섬 필드로, 헤더에 오류가 있는지 확인하는 데 사용됩니다. IP 헤더는 체크섬 값과 비교됩니다. 헤더 체크섬이 일치하지 않으면 패킷은 폐기됩니다.
- 소스 주소: 소스 주소는 IPv32 패킷에 사용되는 소스의 4비트 주소입니다.
- 목적지 주소: 목적지 주소 역시 32비트 크기이며 수신자의 주소를 저장합니다.
- IP 옵션: 이는 IPv4 헤더의 선택적 필드로, IHL(인터넷 헤더 길이) 값이 5보다 큰 경우에 사용됩니다. 보안, 레코드 경로, 타임스탬프 및 유사한 옵션과 관련된 값과 설정이 포함됩니다. 옵션 목록은 일반적으로 EOL(End of Options List) 표시로 끝납니다.
- 날짜 : 이 필드는 프로토콜 계층에서 IP 계층으로 데이터를 전달한 후의 데이터를 저장합니다.
IPv4 헤더 길이 계산 방법
인터넷 헤더 길이(IHL) 필드는 라우터에게 헤더의 정확한 길이를 알려주어 헤더가 어디에서 끝나고 데이터가 어디에서 시작되는지 알 수 있게 해줍니다. 이 필드는 4비트 폭이기 때문에 길이를 바이트 단위로 직접 저장하지 않습니다. 대신 32비트 워드 단위로 헤더 길이를 계산하며, 각 워드는 4바이트에 해당합니다.
IHL 값을 바이트로 변환하려면 4를 곱하십시오.
- 최소 : IHL에서 허용되는 최소값은 5이므로 5 × 4 = 20바이트입니다. 이는 옵션이 없는 헤더입니다.
- 최고: 가장 큰 IHL 값은 15이므로 15 × 4 = 60바이트입니다. 나머지 40바이트는 선택적 필드를 저장하는 데 사용됩니다.
예시를 통해 살펴보겠습니다. 패킷이 IHL 값 6으로 도착하면 헤더 길이는 6 × 4 = 24바이트입니다. 즉, 표준 20바이트 헤더 뒤에 4바이트의 옵션이 있다는 의미입니다. 페이로드의 크기를 구하려면 다음과 같이 하면 됩니다.trac총 길이 필드에서 헤더 길이를 가져옵니다. 총 길이가 1,500바이트이고 헤더가 24바이트인 경우 페이로드는 1,500 - 24 = 1,476바이트입니다.
이 계산은 단편화 과정에서 중요합니다. 라우터는 헤더 크기를 알아야 각 단편이 네트워크의 최대 허용량을 초과하지 않고 전송할 수 있는 데이터 양을 계산할 수 있기 때문입니다. Transmission 단위(MTU).
IPv4 헤더와 IPv6 헤더 비교
IPv6 헤더는 IPv4 헤더보다 더 간단하고 처리 속도가 빠르도록 재설계되었습니다. 고정 길이 헤더를 사용하고 사용 빈도가 낮은 옵션은 별도의 확장 헤더로 이동시켜 라우터가 회선 속도로 패킷을 전달할 수 있도록 했습니다. 아래 표는 두 헤더를 필드별로 비교한 것입니다.
| 제품 특장점 | IPv4 헤더 | IPv6 헤더 |
|---|---|---|
| 헤더 크기 | 20~60바이트(가변) | 40바이트(고정) |
| 필드 수 | 13개 필드와 옵션 | 8개 분야 |
| 주소 길이 | 32비트 소스 및 대상 | 128비트 소스 및 대상 |
| 헤더 체크섬 | 선물 | 제거됨 |
| 파편화 필드 | 기본 헤더(식별, 플래그, 오프셋) | Fragment 확장 헤더로 이동됨 |
| 형식 | 헤더 내부에 포함됨 | 확장 헤더에 포함됨 |
| 길이 필드 | 전체 길이(헤더 + 데이터) | 페이로드 길이 (페이로드만 해당) |
IPv6는 체크섬과 가변 길이 옵션을 생략하기 때문에 헤더에 포함되는 필드 수가 적고, 홉별 재계산 없이 하드웨어에서 처리할 수 있습니다.
IP 헤더가 중요한 이유
IP 헤더의 모든 필드는 라우터와 호스트가 영구적인 연결 없이도 여러 네트워크를 통해 패킷을 전송할 수 있도록 존재합니다. 헤더는 패킷 교환이 작동하는 데 필수적인 요소입니다.
- 라우팅 : 목적지 주소는 각 라우터에게 패킷을 어디로 전달해야 하는지를 알려주고, 출발지 주소는 응답 및 오류 메시지를 반환할 수 있도록 합니다.
- 루프 방지: TTL(Time to Live) 필드는 각 홉마다 감소하므로, 잘못 전송된 패킷은 인터넷을 영원히 순환하는 대신 폐기됩니다.
- 올바른 프로토콜에 따른 배송: 프로토콜 필드는 수신 호스트에게 페이로드를 TCP, UDP 또는 다른 프로토콜로 전달할지 여부를 알려줍니다.
- Integrity 그리고 재조립: 체크섬은 헤더의 손상을 방지하고, 식별, 플래그 및 조각 오프셋 필드를 통해 조각난 데이터그램을 올바른 순서로 재구성할 수 있습니다.
네트워크 엔지니어에게 있어 이러한 필드를 읽는 것은 매우 중요합니다. TCP / IP 패킷 캡처는 패킷 손실, 라우팅 루프 및 잘못된 구성 문제를 진단하는 가장 빠른 방법인 경우가 많습니다. IP 주소.

