본문 바로가기

망각/Network

네이트온 패킷 통신

네이트온 패킷 통신

네이트온은 TCP 프로토콜을 사용하며, 어플리케이션 데이터는 기본적으로 텍스트 기반이다.


예를 들어, 네이트온 클라이언트와 서버의 핑퐁 데이터 역시 텍스트이다. 네이트온 클라이언트는 주기적으로 서버에 핑을 보내고 응답을 받아 접속 상태를 확인한다.

클라이언트 -> 'PING 31' -> 서버

클라이언트는 서버게에게 'PING 31'이라는 문자열로 핑 메시지를 보낸다.

서버 -> 'PING 0' -> 클라이언트

서버는 클라이언트의 핑 패킷을 받고 'PING 0' 값으로 확인 패킷을 보낸다.

여기서 실제 TCP 데이터는 'PING 0\r\n' 이다. 모든 네이트온 패킷(TCP 데이터)은 '\r\n' '0x0D 0x0A' 로 끝난다.


  • 기타 네이트온 패킷 태크들

'ALRM 0 MAIL .....' - 이메일이 도착함을 알림

'NTFY 0 id@aaa.com ...' - 'id@aaa.com' 사용자의 상태 변경을 통지

'MESG 12 .....' - 채팅관련 정보

ex) 'MESG 12 MSG 굴림%0916711680%09B%09안녕하세요'


  • 네이트온 패킷은 UTF-8 유니코드 인코딩 방식을 사용한다.

암호화되지 않은 네이트온 채팅 패킷

암호화 되지 않은 네이트온 채팅 패킷을 살펴보자

'MESG 31 MSG 굴림%0916711680%09B%09안녕하세요\r\n'

MESG - 채팅 관련 패킷

31 - 채팅 관련 패킷의 순서번호

MSG - 채팅 메시지임을 나타내는 MESG의 하위 태그

굴림 - 글꼴

%09 - 16진수값으로 tab 아스키코드, 속성값 구분자로 사용된다.

16711680 - 글자색에 대한 10진수 BGR 값으로 16진수변환시 FF0000이 된다. 글자색은 파란색

B - 글꼴 스타일을 명시한다. B는 굵게, I는 기울임, U는 밑줄, S는 취소선

안녕하세요 - 실제 사용자가 입력한 채팅 문자열

\r\n - 패킷의 종료 문자



암호화된 네이트온 패칭 패킷

CRPT 0 96

암호화 설정이 된 채팅 패킷을 잡아보면 CRPT 라는 태그와 함께 2개의 정수만이 텍스트로 확인가능하다.

첨에 말한 텍스트 기반이라는 전제가 무너지는 부분이 바로 이 암호화이다. 'CRPT 0 96' 이후의 암호화된 데이터는 텍스트화되지 않는다.

하지만, 암호화 설정이 되어 있어도 채팅 메시지외의 다른 것들은 모두 텍스트기반으로 쉽게 확인 할 수 있다.










이 글은 스프링노트에서 작성되었습니다.

'망각 > Network' 카테고리의 다른 글

TCP 패킷 조작  (0) 2007.05.25
LAN 안의 노드들 MAC 알아내기  (0) 2007.03.20
ARP 스푸핑 및 IP 하이재킹  (0) 2007.03.18
[MAC] FF:FF:FF:FF:FF:FF mac 주소  (0) 2007.03.12
about things with packet  (0) 2007.02.03