이전 포스팅에서 프로그래머/개발자가 패킷분석 툴로 Wireshark를 이용하여 여러가지 프로토콜 분석을 해본 바 있습니다.

이번에는 조금 더 활용하여 Wireshark를 PC에서 실행시켜 웹 브라우저에서 특정 홈페이지를 방문하여 패킷들을 캡쳐 한 후, 웹 서버의 80번 포트와 통신하는 TCP Segment만 필터링 해보겠습니다.

그러면 TCP Connection을 설정하는 과정과 해지하는 과정, HTTP 요청 메시지(Request Message), 응답메시지(Response Message)만 나타날 것입니다.

저는 모교의 정보통신공학과 홈페이지(http://ice.hufs.ac.kr)를 방문하도록 하겠습니다.


[ TCP connection 설정과 해지, HTTP 요청 메시지와 응답 메시지가 교환되는 과정을 그림으로 도시 ]



- 먼저, Wireshark에서 Protocol Hierarchy 를 확인하면 아래의 그림과 같이 Frame 내에 Ethernet frame, 그 내에 IP datagram, 그 내에 TCP segment가 있고 그 내부에는 HTTP를 확인할 수 있습니다.



이것을 아래의 그림으로 도시할 수 있습니다.



이를 분석해서 저의 PC와 해당 웹 서버의 IP address port number를 알아내도록 해보겠습니다. 또한, Ethernet frame을 보고 제 PC MAC address와 인접한 노드의 MAC 주소를 알아내도록 하겠습니다. 

(HTTP 서버는 TCP 프로토콜 위에서 port 번호 80번을 이용)


3. 먼저, 해당 사이트에 접속했을 때의 패킷을 캡쳐한 화면입니. 여기서 제 PCIP192.168.0.43 로 확인할 수 있고, 해당 사이트의 IP203.253.68.121 이라는 것을 알아낼 수 있습니다.

그리고 해당 사이트의 포트번호는 TCP 프로토콜 위에서 port 번호 80번을 이용하므로 80번으로 확인할 수 있습니다.


마지막으로 내 PC에서 인접한 노드의 MAC Address를 알기 위해아래의 그림을 참고하면 IP Packet안에 Destination address는 웹 서버의 IP지만, Ethernet Frame의 Destination address는 next-hop의 MAC address입니다.

내 PC MAC Address : 20:68:9d:c5:60:d6

근첩 노드의 MAC Address : 00:08:9f:d3:bd:c9

를 확인할 수 있습니다.

'ETC' 카테고리의 다른 글

Code Refactoring (코드 리팩토링)  (0) 2016.07.08
IntelliJ 프로젝트 기본 설정  (0) 2016.05.03
IntelliJ 설치 및 프로젝트 생성  (0) 2016.05.03
Wireshark를 이용한 패킷 분석  (2) 2016.04.26

WRITTEN BY
SiriusJ

,