Last updated at 2018-02-18 13:36:48

CDN 과 미꾸라지

어느 날 갑자기 미꾸라지 크레딧이 크게 없어진 경험이 있으신지요? 대부분의 경우, 제가 분석해 보면 CDN (Content Deliever Network, 이하 CDN) 과 연관이 있는데요, 이 글에서는 왜 CDN 과 연관이 있는지 부연하겠습니다.

CDN (Content Deliever Network) 이 무엇인가요?

콘텐츠 전송 네트워크 URL 에 상세하게 나오니 참고 바랍니다. 간단하게 말하면 게임 회사들이 게임 다운로드나 패치 배포를 위해 사용하는 네트워크 서비스라고 보면 됩니다. 대표적인 회사로는 Akamai, CDNetworks 등등이 있습니다.

미꾸라지와의 연결고리

미꾸라지 아이템 (예를 들어 던전앤파이터 아이템 혹은 Overwatch 아이템 등등)은 내부적으로 어떠한 트래픽을 미꾸라지 중계 서버로 보낼지 정보를 가지고 있습니다. IP 기반으로 된 정보 혹은 hostname 기반으로 된 정보들이 있는데요, 보통 문제를 일으키는 것은 "hostname 기반으로 된 정보" 때문입니다. 즉, hostname (다른 말로 하면 도메인) 의 DNS resolving 결과가 CDN 회사의 IP 로 나올 경우 해당 CDN 회사의 IP 로의 트래픽은 미꾸라지 중계 서버를 통해 전달됩니다.

여기서 해결하기 힘든 문제는 다음과 같습니다.

  • CDN 회사가 GeoIP 기반의 서비스 제한을 하기 때문에 게임 실행을 위해서는 반드시 해당 접속 또한 미꾸라지를 통해 전달해야 하는 경우가 있습니다. 이럴 경우 아이템 정보에서 "hostname 기반으로 된 정보" 를 제거하기 힘듭니다.
  • CDN 회사의 cache 서버는 1 개의 hostname 만 서비스하는 것이 아니라, 다수의 다른 hostname 들도 서비스를 합니다. 즉 미꾸라지 아이템에 의해 어쩔 수 없이 CDN 회사 IP 대역이 등록되었는데, 해당 IP 대역이 해당 게임 뿐만 아니라 다른 웹 사이트의 요청 또한 처리가 될 수 있는 상황입니다.
    • 이는 미꾸라지가 API Hooking 방식으로 구현된 것이 아니라 운영체제의 Routing Table 기반으로 동작하기 때문에 생기는 이슈입니다. 즉 기본 설계의 한계입니다.
    • 미꾸라지의 경우 OSI L3 수준에서 패킷을 처리하기 때문에, 요청되는 hostname 을 알아내서 트래픽을 제어하지 않습니다. 사실 구현도 거의 불가능에 가깝습니다.

예방책

이러한 이슈를 피하고 싶다면 아래와 같이 조치를 취하실 수 있습니다.

  • 요금제를 정액제로 변경하시면 트래픽에 따른 과금을 예방할 수 있습니다.

  • 네트워크 활동이 발생되는 프로그램을 사용하지 않는 다면 종료합니다.
  • 만약 큰 파일 다운로드나 스트리밍을 하게 된다면, 미꾸라지 프로그램을 완전히 종료합니다. 이 방법이 가장 확실한 방법입니다.
  • 혹은 장착하고 계신 아이템을 잠시 비활성화 시킵니다.

이슈가 있을 수 있는 게임 아이템

자주 묻는 질문들

Full VPN 모드 사용 안합니다. 근데 크레딧 차감이 큰가요?

위의 "미꾸라지와의 연결고리" 섹션을 참고 바랍니다. 만약 아이템 정보에 불가피하게 CDN 회사 정보가 들어가 있을 경우 발생될 수 있습니다.

CDN 과 미꾸라지 (last edited 2018-02-18 13:36:48 by loxch)