패킷
패킷은 네트워크에서 데이터를 전송하기 위해 작은 조각으로 나눈 데이터 단위이다
패킷은 데이터를 전송하는 기본 단위로 큰 데이터를 작고 관리하기 쉬운 단위로 나누서 전송한다
특징
- 작은 크기 : 대규모 데이터를 여러 패킷으로 나누어 전송함으로써
효율적으로 전송하고 네트워크 혼잡을 줄임 - 독립적 전송 : 각 패킷은 독립적으로 전송되며 서로 다른 경로를 통해 전솔 될 수 있음
- 재조림 가능 : 수신 측에서 패킷을 원래의 순서대로 재조립하여 원본 데이터를 복원
- 오류 검사 : 패킷은 전송 중에 손상되지 않았는지 확인하기 위해 오류 검사를 수행
패킷의 필요성, 용도
필요성
- 효율적인 대역폭 사용 : 데이터를 작은 단위로 나누어 전송하여 네트워크 자원을 효율적으로 사용
여러 사용자가 네트워크를 공유할 수 있음 - 데이터 전송의 신뢰성 : 손실된 패킷만 재전송 하면 되므로 전체 데이터를 다시 전송할 필요없음
- 네트워크 혼잡 제어 : 작은 크키의 패킷은 네트워크 트래픽을 고르게 분산시켜
혼잡을 줄이고 네트워크의 안전성과 성능을 유지 - 다양한 경로를 통한 전송 : 각 패킷은 독립적으로 전송되므로 서로 다른 경로를 통해 목적지에 도달할 수 있음
이는 네트워크 장애가 발생했을 때 대체 경로를 사용할 수 있게 함 - 비동기 전송 : 송신자와 수싲낮가 동시에 데이터를 주고받을 필요없이 비동기적으로 데이터를 전송할 수 있음
이는 네트워크 자원의 효율적 사용과 다양한 애플리케이션의 지원을 가능하게 함
용도
- 인터넷 데이터 전송 : 웹 페이지, 이메일, 파일 전송 등의 모든 데이터는 패킷 단위로 전송
- 파일 다운로드 및 업로드 : 대용량 파일을 다운로드하거나 업로드할 때 파일은 여러 패킷으로 나누어 전송
- 스트리밍 서비스 : 동영상 및 음악 스트리밍 서비스는 데이터를 작은 패킷으로 나누어 전송하여
쾌적한 스트리밍 경험을 제공 - VoIP : 인터넷을 통해 음성 데이터를 전송할 때 음성 신호는 디지털 패킷으로 변환되어 전송
- 온라인 게임 : 게임 클라이언트와 서버 간의 데이터 전송은 패킷 단위로 이루어져 실시간으로
상태를 동기화하고 지연을 최소화
패킷의 구조
패킷은 세가지 주요 구성 요소로 나뉘어 진다 (헤더, 페이로드, 트레일러)
1. 헤더(Header)
- 주소 정보 : 송신자와 수신자의 IP 주소
- 프로토콜 정보 : 데이터가 어떤 프로토콜(TCP, UDP 등)을 사용하는지
- 패킷 번호 : 패킷의 순서를 나타내는 번호 (재조립을 위해 필요)
- 기타 제어 정보 : 오류 검사, 흐름 제어 등을 위한 정보
2. 페이로드(Payload)
- 실제 전송할 데이터가 포함된다
예를 들어 웹 페이지의 HTML, 이미지, 텍스트 등
3. 트레일러(Trailer)
- 오류 검사를 위한 데이터이고 데이터의 무결성을 확인하는데 사용
Wireshark
wireshark는 네트워크 패킷 분석을 위한 도구이다
네트워크 트래픽을 캡쳐하고 분석, 문제를 진단하는데 유용하다
도전 과제
1. Wireshark를 사용하여 Naver 접속 시 사용된 패킷 필터링하기
2. Wireshark를 사용하여 자신의 DNS 서버 정보 확인하기
1. Wireshark를 사용하여 Naver 접속 시 사용된 패킷 필터링하기
와이어샤크에 인터넷이 연결된 wifi 메뉴로 들어가 네이버 홈페이지에 접속한 후 정지 버튼을 눌렀다

내 컴퓨터로 들어오는 패킷이 이렇게 많은줄은 상상도 못했다 ;;
이제 naver에서 들어온 것을 필터링 할건데
인터넷에 나온 IP주소를 사용했더니 나오지 않아서
cmd 창에서 naver IP주소를 알 수 있는 명령어를 입력해 알아냈다

223.130.200.219 인것을 확인 할 수 있다

필터 형식은 이렇게 할 수 있다

실제 ip를 적용해서 해보면
naver에서 온 패킷을 필터링해서 볼 수 있다
2. Wireshark를 사용하여 자신의 DNS 서버 정보 확인하기
1번과 동일한 방식을 사용했고 dns 명령어를 사용해 dns 정보를 필터링했다

이 이상은 정말 잘 모르겠어서 이쯤에서 마친다..
이후 wireshark를 필요로 하는 순간에 확실하게 공부해야겠다
'KnockOn' 카테고리의 다른 글
| [1주차 TIL] KnockOn Bootcamp HTML / CSS / JS (0) | 2024.08.03 |
|---|---|
| [1주차 TIL] KnockOn Bootcamp 프록시 (0) | 2024.08.02 |
| [1주차 TIL] KnockOn Bootcamp Cookie & Session (0) | 2024.08.01 |
| [1주차 TIL] KnockOn Bootcamp HTTP / HTTPS (0) | 2024.07.31 |
| [1주차 TIL] KnockOn Bootcamp protocol (0) | 2024.07.31 |