와이어샤크로 패킷 캡처 파일 분석해보기
IP 분석
1. IPv4 단편화 + ICMP
IP 주소 지정 확인

IP 단편화

같은 식별자를 가진 패킷들은 같은 데이터 덩어리에서 단편화된 조각들이라고 생각하면 된다.

more fragment 플래그가 1 값을 가지고 있다는 것은 이 패킷 다음에 단편화된 패킷이 더 있다는 의미이다.
Offset은 단편화된 패킷이 초기 데이터로부터 얼마나 떨어져있는지를 나타낸다.
ICMP 패킷
ICMP는 기본적으로 패킷의 전송 과정에 대한 피드백 메시지를 얻을 수 있는 프로토콜이다.

type과 code에 해당하는 메시지 정보를 확인하여 구체적인 내용을 알 수 있다.
위 예시에서 Type 8의 의미는 에코를 요청하는 메시지이다.
2. IPv6 단편화 + UDP
단편화 여부에 따른 Next Header의 차이

단편화를 하지 않은 경우에는 Next Header 필드에 캡슐화한 프로토콜인 UDP를 가지고 있다.

Fragment Header for IPv6라는 확장된 헤더가 포함되어 있다.
UDP 다이어그램

송신지 포트, 수신지 포트, UDP 데이터그램의 바이트 길이 단위 등이 명시되어 있다.
TCP 분석
1. TCP 연결 수립

192.168.0.1이 10.10.10.1에 연결 요청을 보내는 패킷이다. TCP 연결은 SYN, SYN + ACK, ACK로 이루어진다.
첫 번째 패킷의 Transmission Control Protocol을 보면

수신지와 송신지의 포트 번호를 알 수 있다.
또한 플래그 값을 보면 SYN 비트가 1로 설정되어 있기 때문에 쓰리 웨이 핸드셰이크를 시작하는 패킷이라는 것을 알 수 있다.
이 다음 SYN+ACK 패킷을 보게되면 플래그 값의 SYN과 ACK가 1로 되어있고, 또한 확인 응답 번호가 첫 번째 패킷에서의 값보다 1커진 값을 응답 번호로 삼고 전송한다.
2. TCP 연결 종료

FIN, ACK / FIN, ACK
10.10.10.1이 먼저 종료 요청을 했고 192.168.0.1은 마지막 패킷을 받자마자, 10.10.10.1은 마지막 패킷을 보내고 일정 시간이 지난 뒤에 연결이 종료된다.
3. TCP 재전송
재전송 기반의 오류 제어 수행

tcp.analysis.retransmission : 재전송된 패킷
tcp.analysis.fast_retrasmission : 빠른 재전송 패킷
HTTP 분석
http 요청과 응답 헤더는 개발자 도구에서도 확인이 가능하다.

/ 경로로 GET 요청을 보냈다.
추가로 \r은 커서를 현재 행의 앞으로 이동하라는 뜻, \n은 다음 행으로 커서를 이동하라는 의미이디ㅏ.
두 가지를 함께 사용하면 커서의 위치가 행의 앞으로 이동한 뒤 다음 행으로 이동하게 되어 줄바꿈을 표현한다.

응답 파일을 보면, 200으로 정상적으로 응답했다는 것을 할 수 있다. 또한 Content Type이 html text 파일이라는 것을 알 수 있다.
'STUDY' 카테고리의 다른 글
[영화진흥위원회 API] 일별 박스오피스 데이터 활용하기 with Python (2) | 2024.03.11 |
---|---|
[NAVER Developers API] 지역 검색 API 활용하기 with Python (1) | 2024.03.09 |