Ethernet/TCP/IP Header 구조 살펴보기
1. Ethernet Header(IEEE 802.3)
DA(Destination Address) | 목적지의 2 계층 주소를 나타내며 6byte(48bit), 주소의 첫 번째 비트가 1이면 멀티캐스트, 모든 비트가 1이면 브로드캐스트 |
SA(Source Address) | 출발지의 2계층 주소를 나타내며 6byte(48bit) |
Ethernet Type | MAC 프레임 데이터 부분에 있는 상위계층의 프로토콜 종류 표시, 0x0800이면 IPv4 패킷, 0x0806이면 ARP, 0x8100이면 VLAN Tag가 Ethernet 헤더와 L3 패킷 사이에 붙는다는 의미 |
Length | 데이터 영역의 길이를 표시 |
Data | 상위 계층으로부터 받은 데이터 또는 상위 계층에 전달할 데이터, 최대 1500byte, 최소 46byte |
Frame Check Sequence | Preamble과 FXS 부분을 제외한 유효한 MAC 프레임의 비트열에서 오류를 검사 |
2. TCP Header
Source Port/Destination Port | TCP로 연결되는 가상 회선 양단의 송수신 프로세스에 할당된 네트워크 포트 주소 |
Sequence Number | 순서 번호, 송신자가 지정하는 송신 번호 |
Acknowledgement Number | 응답 번호, 수신 프로세스가 제대로 수신한 바이트의 수를 응답하기 위해서 사용 |
Data Offset | TCP 세그먼트가 시작되는 위치를 기준으로 데이터의 시작 위치를 나타내므로 TCP Header의 크기가 된다. 32bit WORD 단위로 표시 |
Checksum | TCP 세그먼트에 포함되는 프로토콜 헤더와 데이터 모두에 대한 변형 오류를 검출하려고 사용 |
TCP Flags
URG | Urgent Pointer 필드가 유효한지를 나타낸다. |
ACK | Acknowledgement Number 필드가 유효한지 나타낸다. |
PSH | 현재 세그먼트에 포함된 데이터를 상위 계층에 즉시 전달하도록 지시할 때 사용한다. |
RST | 연결의 리셋이나 유효하지 않은 세그먼트에 대한 응답용으로 사용한다. |
SYN | 연결 설정 요구를 의미하는 플래그 비트 |
FIN | 한쪽 프로세서에서 더는 전송할 데이터가 없어 연결을 종료하고 싶다는 의사를 상대방에게 알리는 데 사용한다. |
2. IP Header
Version | TCP/IP 제품은 IPv4 |
Header Length | IP 헤드의 길이를 32bit 단위로 나타낸다. 대부분의 IP 헤더의 길이는 20바이트이고 필드 값은 거의 5(5*32=160bit=20byte)이다. |
Type-of-Service Flags | 서비스의 우선순위 |
Total Packet Length | 16bit, 전체 IP 패킷의 길이를 바이트 단위 |
Fragment Identifier | 16bit, 다시 결합하기 위해 원래의 데이터를 식별하기 위해서 사용 |
Fragmentation Flags | 3bit, 처음 1bit는 항상 0으로 설정, 나머지 2비트는 IP 라우터에 의해 분열되는 여부, 원래 데이터의 분열된 조각이 더 있는지 여부 판단 |
Fragmentation Offset | 13bit, 8byte offset 조각에 저장된 원래 데이터의 바이트 범위 |
Time-to-Live | 데이터 전달할 수 없는 것으로 판단되어 소멸되기 이전에 데이터가 이동할 수 있는 단계의 수, 1에서 255 사이의 값을 지정하여 라우터들이 패킷을 전달할 때마다 이 값을 하나씩 감소시킨다. |
Protocol Identifier | 8bit, 상위 계층의 프로토콜 |
Header Checksum | 16bit, IP 헤더의 Checksum을 저장 |
참고
https://www.linux.co.kr/security/certcc/IP%20Fragmentation.htm
'Security > Network' 카테고리의 다른 글
[Network] TCP 와 UDP 정의 및 차이점 (413) | 2020.09.10 |
---|---|
[Network] DMZ(Demilitarized Zone) (270) | 2020.09.10 |
[Network] IP Fragmentation(단편화) 정의 및 관련 취약점 (0) | 2020.09.10 |
[Network] Router IGP와 EGP(=> BGP+AS) (439) | 2020.09.07 |
[Network] NAC(Network Access Control, 네트워크 접근제어) (438) | 2020.09.07 |