[널널한 개발자 TV] 네트워크 기초 이론: 16 - IP 헤더 형식과 의미 요약

securitykss·2023년 3월 14일
0

네트워크

목록 보기
15/19

이 글은 널널한 개발자 TV 님의 강의영상을 보고 작성한 글입니다.

IP Header format

Packet은 Header와 Payload로 이뤄져있다.

Packet의 MTU는 1500bytes이다.

Header가 TCP/IP 라고 하면,

각각 20bytes씩 총 40 bytes를 차지한다.

그래서 MSS 는 1460bytes이다.

위의 TCP/IP 중에서, IP의 Header를 살펴 보자

전체 Packet

IP Header: 20bytes를 차지한다.

그래서 옆에 20bytes 만큼을 차지하고 있는 것을 확인 할 수 있다.

Option: 최대 40bytes

Option은 줄 수도 있고, 안 줄 수도 있다.

주로 없다.

Data: 최대 65536까지 늘어난다.

65536 = 2^16, 64KB 까지 늘어날 수 있다.

그런데? MTU는 1500bytes라고 했는데, 어떻게 된 일인가?

이론상은 65536까지 가능하다고 표현하는 것 같다.


IP Header

Version: IPv4인지 IPv6인지 (일반적으로 4인다)

IHL (Internet Header Length): 주로 5이다.

엥? 왜 5죠?

Header의 길이는 20bytes 잖아요!!

0부터 31bit 까지, 32bit -> 4bytes

4bytes x 5 = 20bytes

아... 넵!

그런데 만약에, IHL 값이 6이면 어떻게 되나요?

그때는 Option에 뭔가 값을 준 것일 것이다.

TOS (Type Of Service) : 패킷의 우선 순위를 나타내는 필드

Total length: Packet의 전체 길이 -> 16bit이다.

아하!! 위에서 65536 = 2^16 이라고 했던 것은

즉, Packet의 길이가 2^16까지 가능하다고 했던 것은 여기서 나온 이유때문이구나!

라고 이해했다.

Identification(ID): 이것은 단편화와 관련이 있다.

IP Packet의 MTU는 1500 이라고 했는데 가끔 1400인 경우도 있다.

그 때, Packet을 받을때 1500이 오면, 이거를 반으로 나눠서 보내야 하는 경우가 있다.

이렇게 되는 경우, 즉, 1500짜리 Packet을 반으로 나누는 경우를 단편화라고 하는데,

안그래도 1500도 작은데, 이거를 또 나눠서, 다시 붙여야하는 번거로움이 있기에, 되도록 안 일어나야한다.

어쨋든, ID는 단편화를 할 때 쓰인다.

TTL (Time To Live)

인터넷은 라우터의 집합체다.

라우터들이 유통을 한다.

무엇을 유통하냐면 Packet을 유통을 한다.

이 Packet을 유통하는 과정에서 가끔, 목적지를 못찾는 경우도 있고, 유통 과정에서 뭔가 이상이 생길 수 있다.

그래서, 라우터들이 이 Packet을 마구마구 전달한다.(약간 폭탄돌리기 식으로)

근데, 이 라우터들이 Packet을 전달할 때마다 TTL 값이 1씩 감소한다.

TTL은 위에 그림에서 보면 8bit이고, 경우의 수는 256이다.

0~255 사이에서, 255번을 지나야 0이 된다.

만약 TTL이 0이 되면, 라우터는 이 Packet을 버린다.

Protocol

Protocol은 4계층 Header가 뭔지,

즉, Protocol에 4계층 Header가

TCP 인지 UDP 인지 등에 따라, 뒤에 오는 Data를 어떻게 볼 것인지 판단한다.

Header checksum

전송간에 문제(오류)가 있는지 확인하는 필드이다.

뭐 이거는 계산하는 규칙이 있다.

Source address

출발지 주소

Destination address

목적지 주소

Reference

https://www.youtube.com/@nullnull_not_eq_null (널널한 개발자님 URL)

https://ko.wikipedia.org/wiki/IPv4 (그림)

https://www.youtube.com/watch?v=9MPzEwZrRqo&list=PLXvgR_grOs1BFH-TuqFsfHqbh-gpMbFoy&index=16 (강의 영상)

profile
보안 공부를 하는 학생입니다.

0개의 댓글

관련 채용 정보