패킷이란?
네크워크에서 데이터를 주고받을 떄 사용되는 데이터 조각이다.
하나의 데이터를 조각으로 나눈 것을 패킷이라고 한다.
패킷의 크기는 1000 ~ 1500 byte 정도 된다.
패킷의 필요성, 용도
[패킷의 필요성]
- 효율성 - 데이터를 통째로 보내면 전송과정 오류 발생시 다시 데이터를 전송하면서 시간 소요, 네트워크 자원 낭비 -> 패킷으로 보내면 손실된 패킷만 보내면 되기 떄문에 효율적이며 시간 소요도 줄어든다.
- 네트워크 자원 - 패킷으로 여러 서버에 분산시켜 보낼 수 있어 네트워크 부담이 줄어들고 트래픽을 균일하게 분배 가능하게 한다.
[패킷의 용도]
- 인터넷 - 웹 페이지, 이메일, 파일 전송 등 모든 인터넷 통신은 패킷으로 데이터 전송
- 네트워크 통신 - LAN, WAN에서의 데이터 전송
- 스트리밍 - 비디오, 실시간 스트리밍 서비스패킷을 통해서 데이터를 연속적으로 전송
패킷의 구조
패킷은 크게 헤더(Header), 페이로드(Payload), 트레일러(Trailer)로 구성된다.
- 헤더(Header) - 패킷의 길이, 번호, 네트워크 프로토콜, 소스 IP 주소(발신자), 대상 IP 주소(수신자), 헤더 체크섬, IP 버전, TTL(Time to Live : 패킷의 네트워크 생존 시간, 라우터로 감소), 헤더 체크섬(헤더의 오류 확인)이 있다. IP패킷이라고 하면 헤더라고 생각하면 된다.
- 페이로드(Payload) - 전송하고자 하는 실제 데이터 내용이 들어있다.
- 트레일러(Trailer) - 패킷의 끝을 나타내며 여러 패킷의 경계를 뚜렷하게 알리는 역할과 오류 검출 역할을 한다. 체크섬(Checksum), CRC(cyclic Redundancy Check)와 같은 오류 검출코드가 트레일러에 포함되어 전송 중에 데이터 손실과 같은 오류가 발생하는지 판단한다.
Wireshark
와이어샤크는 네트워크 패킷을 캡처하여 분석하는 오픈소스 분석툴이다.
와이어샤크를 통해 네트워크 상태를 모니터링하면서 기본 정보를 수집하는데 사용한다.
[Wireshark 주요 기능]
- 패킷 캡처(PCAP)을 통한 분석
- 네트워크 이외의 다양한 프로토콜 지원
- 다양한 통계 생성하여 시각화
- 다양한 조건의 필터링을 통한 특정 패킷 검색
- 다른 분석툴의 패킷 캡처 데이터를 변환해서 읽을 수 있음
실습
Wireshark를 사용하여 Naver접속 시 사용된 패킷 필터링하기
우선 네이버를 접속한 후의 패킷 캡처한 모습이다.
여기에서 이제 naver.com과 수신한 패킷을 찾아야한다.
그래서 https을 통해 네트워크 통신한다는 것을 생각하여 SSL이나 TLS로 필터를 찾아보면 TLS가 있다.
그래서 TLS을 통해 검색해서 찾아보면
다음과 같이 naver.com와 내 컴퓨터가 통신하는 것을 찾을 수 있다.
Client Hello로 내 컴퓨터에서 서버로 보내면 서버에서 Server Hello라고 응답 하는 패킷을 볼 수 있다.
Wireshark를 사용하여 자신의 DNS 서버 정보 확인해보기
필터를 통해 dns을 적어 찾아본다.
그럼 이와 같이 naver.com에 Standard query 와 Standard query response가 나온다.
이 두 패킷은 클라이언트가 정보 요청과 그에 대한 응답인 패킷인 것을 알 수 있다.
가려져 있지만 첫 번쨰의 칸의 192.168.0.16이 소스 IP 주소이고, 그 옆에 219.250.36.130은 목적지 주소이다.
즉, 내가 서버에게 정보 요청한 IP 주소가 나의 DNS 서버 정보가 되므로 219.250.36.130이 내 DNS 서버이다.
'web hacking(Knockon Bootcamp)' 카테고리의 다른 글
[1주차 TIL] KnockOn Bootcamp HTML, CSS, JS (1) | 2024.12.08 |
---|---|
[1주차 TIL] KnockOn Bootcamp, 프록시(Proxy) (0) | 2024.12.08 |
[1주차 TIL] KnockOn Bootcamp, Cookie & Session (0) | 2024.12.06 |
[1주차 TIL] KnockOn Bootcamp, HTTP / HTTPS (0) | 2024.12.04 |
[1주차 TIL] KnockOn Bootcamp, Protocol (0) | 2024.12.04 |