[Wireshark] 캡처한 패킷을 소스코드에 활용하기

주싱·2021년 5월 8일

Needs

때때로 Wireshark로 캡쳐한 패킷에서 전송한 명령 메시지나 응답 메시지 등을 그대로 복사해서 코드에 사용하면 편리할 때가 있다.

아래와 같이 배열 선언 코드로 만들어 주거나

char packet_bytes[] = {
  0x02, 0x7b, 0x22, 0x65, 0x6e, 0x74, 0x69, 0x74,
  0x79, 0x22, 0x3a, 0x22, 0x61, 0x6e, 0x74, 0x65,
  0x6e, 0x6e, 0x61, 0x5f, 0x70, 0x6f, 0x73, 0x69,
  0x74, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x22, 0x2c,
  0x22, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
  0x22, 0x3a, 0x7b, 0x22, 0x63, 0x6f, 0x6e, 0x74,
 .... 
  0x79, 0x70, 0x65, 0x22, 0x3a, 0x22, 0x63, 0x61,
  0x63, 0x68, 0x65, 0x64, 0x22, 0x7d, 0x03
};

Hex 값을 그대로 복사해 오거나

027b22656e74697479223a22616e74656e6e615f706f7369746... 

문자열을 깔끔하게 복사해 오면 편리할 때가 있다.

.{"entity":"antenna_positioner","request":{"control_channel": 0... 

Solution

필요한 대부분의 것을 Wireshark에서 제공해 준다.

  1. 값을 얻고 싶은 프로토콜을 Packet Details 창에서 선택한다. 또는 전체 패킷(Ethernet, IP, TCP, DATA) 의 값을 원한다면 제일 상단 Frame을 선택하면 된다.

  2. 메뉴 > Analyze > Show Packet Bytes (Ctrl+Shift+O) 선택

  3. Show as 타입을 다양하게 선택하면 원하는 값을 얻을 수 있다.

profile
Software Engineer

0개의 댓글