베지밀
[네트워크] WireShark로 이더넷 헤더 구조 분석 본문
목표 : 이더넷 환경에서 ping으로 패킷을 주고 받은 후 프레임 헤더 분석해보기
0. 2계층 Data Link Layer 프레임 구조
이더넷 헤더 크기 = 14Byte
Preamble, SFD : 프레임의 시작을 알리는 부분. 동기화할 때 사용.
DA : 목적지 이더넷 주소(MAC주소)
SA : 호스트 이더넷 주소(MAC주소)
Type : 이더넷 프레임에 포함된 데이터가 어떤 프로토콜의 데이터인지
- 0800 : IP
- 0806 : ARP
Data : 상위 계층의 프로토콜의 정보
1. 기본 셋팅 및 실습 환경
우선 와이파이를 끄고 RJ45 선 연결
그럼 와이파이 칸에 모니터 화면이 뜸.
LAN 연결이 된 것
실습할 PC 둘 다 ipconfig로 ip확인
나(A) : 192.168.0.207 [ Window ]
상대방(B) : 192.168.0.15 [ Window ]
Wireshark 이더넷 환경에서 캡쳐 > 정지 > 옵션 후 모든 인터페이스에서 무작위 모드 사용 체크하면 NIC가 수신하는 모든 패킷을 수신할 수 있음
2. ping 보내기
15에서 207로 ping을 보냈는데 정상적으로 보내지지 않음
같은 허브의 LAN인데 왜 안되는지 찾아보았다
원인 : 방화벽 설정의 문제
방화벽 -> 고급설정 -> 인바운드 규칙 -> 파일 및 프린터 공유 ICMP(ICMP v4)에서 개인 규칙을 사용으로 바꾸자.
ping이 잘 수신되었다.
참고로 ping은 ICMP를 사용하는 명령어기 때문에 icmp 프로토콜만 보면 된다.
3. 이더넷 헤더 분석 (ICMP 패킷)
- Destination MAC 주소(6byte) : 74:5d:22:9b:17:8c
- Source MAC 주소(6byte) : 74:5d:22:9b:15:31
- Type(2type) : 0800 > IPv4 패킷
4. 마무리
RJ45 커넥터로 PC와 LAN케이블을 라우터(허브)에 연결해서 사용하는 것을 처음 해봤다.
컴퓨터 한 번 뜯어봐야겠구나 생각했다.
Wireshark으로 이더넷으로 들어오는 패킷들을 직접 확인했다. 자세한 내용은 좀 더 공부에 익숙해지면 차츰 알게 되겠지..?