소개

Warning

이 문서는 미꾸라지 v3 (EOL (End Of Life) 된 구 버전) 프로그램에 대한 문서이며 미꾸라지 v3.6.1 버전까지만 유요한 문서입니다.

최신 미꾸라지 버전은 v4 이며 http://mudfish.net/ 에서 다운로드 받으실 수 있습니다.

Note

문서에 오류가 있거나 건의 사항이 있으시면 메세지를 미꾸라지 포럼 (http://forums.loxch.com) 에 남겨주세요.

Mudfish Cloud VPN 프로그램은 다음과 같은 방법을 사용함으로써 Network 간의 congestion 을 회피할 수 있도록 도와 줍니다.

  • 세계 여러 곳에 흩어져 있는 중계 서버를 이용하여 물리적인 routing path 을 변경합니다.
  • WAN Optimization 기술을 이용하여 congestion 발생시 좀더 빠른 recovery 을 하도록 도와 줍니다.

프로그램 받기

다운로드하기

최신 mudfish 배포판은 http://ko.loxch.com 의 “다운로드” 섹션에서 가능합니다. 현재 Linux 와 Mac OS X, Windows 를 위한 설치본을 배포하고 있습니다.

  • Windows 32 bit 와 64 bit (binary 는 32 비트, 드라이버는 64 비트) 용이 제공되며 지원되는 윈도우즈 버전은 다음과 같습니다.
    • Windows XP (SP2 이후)
    • Windows Vista
    • Windows 7
    • Windows 8
  • Mac OS X OS X 버전 10.8 (OS X Mountain Lion) 기준으로 빌드된 버전입니다. 실행의 문제가 있어 다른 하위 OS X 버전 지원을 원하신다면 support@loxch.com 으로 요청 바랍니다.
  • Linux 64 bit 용만 현재 제공되며 지원되는 리눅스 배포판은 다음과 같습니다. 혹여나 다른 배포판을 위한 package 를 원하신다면 support@loxch.com 으로 요청 바랍니다.
    • Ubuntu 12.04 LTS

사용하시는 OS 와 CPU 타입에 따라 알맞은 설치 파일을 다운로드 받으셔야 합니다.

윈도우즈

설치 및 제거

프로그램 설치

Warning

만약 기존 미꾸라지 v1 사용자이시면 반드시 기존 패키지를 제거하신 후에 v2 의 설치를 추천합니다. v1 과 v2 를 같은 PC에 둘 다 설치할 경우 내부 프로그램들이 충돌할 여지가 있습니다.

받으신 설치 프로그램을 실행하시면 우선 첫번째 화면으로 component 선택 화면을 보실 수 있습니다.

설치할 component 선택

현재 두개의 component 가 존재하며 각각은 다음과 같은 프로그램을 시스템에 설치합니다.

  • mudfish core 파일들. 실제 데이타의 전송 및 가속을 해주는 모듈이 포함되어 있습니다. 추가적으로 crash reporting 을 위한 모듈이 함께 설치되게 됩니다.
  • TAP-Win32 Adapter v9 core 모듈과 함께 작동하는 가상 miniport adapter 입니다. 설치시 OpenVPN technology Inc. 에서 배포하는 tap0901 드라이버를 설치하게 됩니다.

다음 화면은 설치할 디렉토리를 선택하는 화면입니다. 이 설명서에는 mudfish 가 C:\Program Files\Mudfish Cloud VPN (64bit 머신에서는 C:\Program Files (x86)\Mudfish Cloud VPN) 에 설치되었다고 가정합니다.

설치 디렉토리 선택

폴더 선택이 끝났다면 이제 설치 버턴을 눌러주세요.

인증서 에러 화면

처음 TAP-Win32 Adapter v9 를 설치한다면 도중에 위 화면과 같은 경고창을 만나실 수 있습니다. “계속(C)” 버튼을 클릭하여 설치를 진행합니다.

만약 Windows 7/8 사용자의 경우 경고창이 뜰 수 있습니다.

Windows 7/8 에서의 경고 화면

“설치(I).”을 선택하셔서 설치를 계속해 주십시오.

설치 완료

설치가 모두 끝났습니다.

프로그램 제거

“시작 프로그램” -> “Mudfish Cloud VPN” -> “Uninstall Mudfish” 항목을 실행함으로써 프로그램 제거를 할 수 있습니다.

만약 해당 링크를 발견할 수 없다면 탐색기를 이용하여 C:\Program Files\Mudfish Cloud VPN (64 bit OS 의 경우, C:\Program Files (x86)\Mudfish Cloud VPN) 로 이동하면 해당 디렉토리 안에 uninstall.exe 파일이 있습니다. 해당 파일을 실행하시면 프로그램 제거를 위한 화면이 나타납니다.

C:\Program Files\Mudfish Cloud VPN 하위에 있는 디렉토리와 파일들이 삭제되며 TAP-Win32 Adapter v9 또한 삭제됩니다.

사용하기

Mudfish Cloud VPN은 크게 세개의 프로그램으로 구성되어 있습니다. mudfish, mudflow 와 mudrun 가 그것인데요, 각 프로그램의 역활에 대해서 잠깐 말씀드리면 아래와 같습니다.

  • mudfish (Mudfish Core) 미꾸라지의 핵심 프로그램입니다. Routing Table 수정 및 트래픽 처리 그리고 미꾸라지 중계 서버와의 통신 등등을 담당합니다. mudrun 의 사용이 불가능할 경우 명령 프롬프트 창을 통해서 직접 실행하실 수도 있습니다.
  • mudflow (Mudfish Flow Controller) 미꾸라지의 트래픽과 라우팅 테이블을 관리하는 프로그램입니다. RTT 검사와 Routing Path 세팅이 이 프로그램을 통해 이루어집니다.
  • mudrun (Mudfish Launcher) mudfish 을 실행시키기 위한 도우미 역활을 하는 프로그램입니다. 명령프롬프트를 이용할 경우, 서버 선택과 서비스 선택이 쉽지 않기 때문에 이를 해결하기 위해서 HTML 기반의 인터페이스를 제공합니다.

계정 만들기

미꾸라지를 사용하기 위해서는 반드시 사용자 ID가 필요하며 미꾸라지 프로그램을 설치하고 실행하시면 처음 로그인 화면 하단에서 “ID 만들기” 링크를 찾을 수 있습니다. 이 링크에 방문하여서 사용하고자 하시는 계정을 만들어주시면 됩니다.

계정 삭제하기

어떠한 이유로 위 ‘ID 만들기’ 를 통해서 생성한 계정을 삭제하고자 하신다면 미꾸라지 UI 에 로그인을 하신 후, 상단에 위치한 ‘계정 관리’메뉴를 클릭합니다. 그럼 ‘계정삭제’ 링크를 찾으실 수 있으며 해당 기능을 통해 계정을 영구 삭제 할 수 있습니다.

Mudfish Launcher 를 실행하기 전에

Warning

만약 기존에 미꾸라지 v1 버전을 사용하셨거나, TAP-Win32 Adapter v9 인터페이스를 사용중이셨던 분은 반드시 아래의 내용을 체크바랍니다.

이 문제로 인해 미꾸라지 v2 가 제대로 동작하지 않을 수 있습니다.

미꾸라지 Cloud VPN 이 제대로 동작하기 위해서는 반드시 TAP-Win32 Adapter v9 인터페이스가 DHCP 서버로 부터 IP 를 받도록 설정되어 있어야 합니다.

Windows Vista/7 기준으로 제어판 -> 네트워크 공유 센터 -> 어댑터 설정변경 메뉴에 가시면 TAP-Win32 Adapter v9 이름으로 명명된 장치를 찾으실 수 있을 것입니다. 찾을 수 없다면, 미꾸라지 설치에 문제가 있음을 의미합니다.

해당 장치의 속성에서 Internet Procotol Version 4 의 속성을 아래와 같이 살펴봐 주세요. (영문 Windows 7 기준으로 설명해 드려서 죄송합니다. ㅡ.ㅜ)

_images/mudfish_dhcp1.png

아래 화면과 같이 IP 와 DNS 서버 주소를 자동으로 받도록 반드시 설정해 놓으셔야 합니다.

_images/mudfish_dhcp2.png

위와 같이 설정하시고 확인하여 저장하시면 미꾸라지 Cloud VPN 사용 준비는 끝났습니다.

Mudfish Launcher 실행하기

Mudfish Launcher 프로그램을 실행하실려면 아래와 같이 수행하십시오.

  • “시작” -> “모든 프로그램” -> “Mudfish Cloud VPN” -> “Mudfish Launcher” 을 실행 하시면 브라우저에 로그인 창이 나옵니다.

    Windows Vista/7/8 사용자의 경우, “Mudfish Launcher” 실행시 반드시 관리자 권한으로 실행 메뉴로 실행하십시오. “Mudfish Launcher” 아이콘에서 오른쪽 버튼 클릭시 확인할 수 있습니다.

Windows Vista/7/8 을 위한 "mudfish launcher" 실행

실행을 하게 되면 “Mudfish Launcher” 은 IP 127.0.0.1 의 임의의 port (예를 들면 http://127.0.0.1:4878) 에 TCP LISTENING 을 하게 되며, 해당 서비스로 접속하도록 기본 브라우저를 뛰우게 됩니다.

로그인 하기

“Mudfish Launcher” 이 제대로 동작한다면 브라우저에 다음과 같이 나타나야 합니다.

"Mudfish Launcher" 로그인 화면

위 “계정 만들기”에서 생성한 ID/PASSWORD 을 입력한 후 로그인하시면 됩니다.

Mudfish Launcher 사용법

로그인이 성공적으로 되었다면 아래와 같은 화면이 뜰 것입니다.

"Mudfish Launcher" 대쉬보드

이제 미꾸라지 중계 서버 (VPN 서버)들을 사용할 준비가 되었습니다. 이 부분은 좀 더 자세한 설명이 필요로 하기 때문에 따로 문서를 만들었습니다. 해당내용은 “Mudfish Launcher 사용법” 문서를 참고해 주세요.

미꾸라지 중지 하기

미꾸라지 실행 후 프로그램을 종료하고 싶으시다면 system tray 에 있는 Mudfish Launcher 아이콘을 종료하는 것입니다.

아이콘 위에서 오른쪽 버튼 클릭시 메뉴를 볼 수 있는데, 거기 Exit 을 선택함으로써 미꾸라지 프로세스들을 종료할 수 있습니다.

Mac OS X

설치 및 제거

tap(4) 드라이버 설치

Mac OS X 의 경우, 기본적으로 tap(4) 드라이버가 설치되어 있지 않기 때문에 사용자가 직접 해당 드라이버를 운영체제에 설치하여야 합니다. 미꾸라지 프로그램에서 사용하는 tap(4) 드라이버는 http://tuntaposx.sourceforge.net/ 사이트에 배포하는 것으로 OpenVPN 과 같은 VPN 프로그램들이 이용하는 커널 모듈입니다.

_images/macosx_tap_1.png

Download 메뉴에 들어가시면 현재 release 에 대한 package 파일을 다운로드 받으실 수 있습니다.

_images/macosx_tap_2.png

적당한 위치에 저장하시고 압축을 해제하시면 패키지 파일이 보일 겁니다.

_images/macosx_tap_3.png

해당 패키지를 아래의 화면과 같이 설치를 진행하시기 바랍니다.

_images/macosx_tap_4.png

단, 이 패키지 자체가 커널 모듈을 설치하기 때문에 반드시 root 권한을 가지고 계셔야 하는데요, 설치 중간에 다음과 같이 권한 상승을 해야 한다는 메세지가 나올 것입니다.

_images/macosx_tap_5.png

이제 tap(4) 드라이버 설치가 완료되었습니다.

_images/macosx_tap_6.png

만약 Terminal 사용에 익숙하시다면 아래와 같이 kextstat 명령을 사용하시면 현재 tap 과 tun 커널 모듈이 제대로 로그되어 있는지 확인하실 수 있을 것입니다.

mac:~ weongyo$ kextstat
  ...
  111    0 0xffffff7f81dd2000 0x7000     0x7000     foo.tap (1.0) <7 5 4 1>
  112    0 0xffffff7f81dd9000 0x8000     0x8000     foo.tun (1.0) <7 5 4 1>
  ...

이 모듈들은 다음 운영체제 재부팅이 항상 load 될 것이기 때문에 한번만 설치하시면 미꾸라지 이용에 문제가 없을 것입니다.

프로그램 설치

다운로드 페이지를 통해서 Mac OS X 용 미꾸라지를 패키지를 다운로드 받으셨다고 가정하겠습니다. 패키지 확장자은 .sh 입니다. 아래는 버전 v3.5.4 을 다운로드 받으셨다는 가정하에 작성된 설치 예제입니다.

$ curl -O http://static.loxch.com/releases/mudfish-3.5.4-macosx-x86_64.sh
$ sudo sh mudfish-3.5.4-macosx-x86_64.sh
Verifying archive integrity... All good.
Installation is done under /Applications/Mudfish Cloud VPN.app
$ ls -l /Applications/Mudfish\ Cloud\ VPN.app/

Mac OS X 용 미꾸라지의 경우, Menulet 형태의 프로그램으로 작동하게 되며 오른쪽 상단에 아래와 같이 미꾸라지 아이콘이 보이게 됩니다.

_images/macosx_menulet.png

프로그램 제거

프로그램을 삭제하실려면 아래의 명령을 통해서 삭제하실 수 있습니다. 현재 사용하고 계신 프로그램의 버전을 확인하시고 알맞은 디렉토리를 삭제하시면 됩니다.

$ sudo rm -rf /Applications/Mudfish\ Cloud\ VPN.app/

사용하기

Mudfish Cloud VPN은 크게 세개의 프로그램으로 구성되어 있습니다. mudfish, mudflow 와 mudrun 가 그것인데요, 각 프로그램의 역활에 대해서 잠깐 말씀드리면 아래와 같습니다.

  • mudfish (Mudfish Core) 미꾸라지의 핵심 프로그램입니다. Routing Table 수정 및 트래픽 처리 그리고 미꾸라지 중계 서버와의 통신 등등을 담당합니다. mudrun 의 사용이 불가능할 경우 명령 프롬프트 창을 통해서 직접 실행하실 수도 있습니다.
  • mudflow (Mudfish Flow Controller) 미꾸라지의 트래픽과 라우팅 테이블을 관리하는 프로그램입니다. RTT 검사와 Routing Path 세팅이 이 프로그램을 통해 이루어집니다.
  • mudrun (Mudfish Launcher) - Mudfish Cloud VPN 바이너리 mudfish 을 실행시키기 위한 도우미 역활을 하는 프로그램입니다. 명령프롬프트를 이용할 경우, 서버 선택과 서비스 선택이 쉽지 않기 때문에 이를 해결하기 위해서 HTML 기반의 인터페이스를 제공합니다.

계정 만들기

미꾸라지를 사용하기 위해서는 반드시 사용자 ID가 필요하며 미꾸라지 프로그램을 설치하고 실행하시면 처음 로그인 화면 하단에서 “ID 만들기” 링크를 찾을 수 있습니다. 이 링크에 방문하여서 사용하고자 하시는 계정을 만들어주시면 됩니다.

계정 삭제하기

어떠한 이유로 위 ‘ID 만들기’ 를 통해서 생성한 계정을 삭제하고자 하신다면 미꾸라지 UI 에 로그인을 하신 후, 상단에 위치한 ‘계정 관리’메뉴를 클릭합니다. 그럼 ‘계정삭제’ 링크를 찾으실 수 있으며 해당 기능을 통해 계정을 영구 삭제 할 수 있습니다.

Mudfish Launcher 실행하기

Mudfish Launcher 프로그램을 실행하실려면 아래와 같이 수행하십시오.

$ sudo /Applications/Mudfish\ Cloud\ VPN.app/Contents/MacOS/Mudfish\ Cloud\ VPN

Mudfish Cloud VPN 실행 파일은 반드시 root 권한으로 실행이 되어야 하는데요, 아래와 같은 필요로 인해 root 권한이 필요합니다.

  • 내부적으로 현재 사용자 컴퓨터와 중계 서버간 ICMP 프로토콜을 이용하여 RTT (Round Trip Time) 을 계산하는 부분이 있는데, ICMP 프로토콜을 Mac OS X 상에서 구현을 하려면 raw socket 사용이 필수인데, root 권한만 이를 사용할 수 있습니다.
  • 마법사 메뉴를 통해 IP 주소를 세팅할 경우, 사용하시는 운영체제의 라우팅 테이블을 수정해야 하는데 이 또한 root 권한이 필요합니다.
  • 미꾸라지의 통신을 위해서 사용되는 tap(4) 장치의 IP 할당을 위해서 DHCP 프로토콜이 사용되는데, 이를 fetch 할 dhclient 명령이 root 권한이 필요합니다.

실행을 하게 되면 “Mudfish Launcher” 은 IP 127.0.0.1 의 임의의 port (예를 들면 http://127.0.0.1:8282) 에 TCP LISTENING 을 하게 됩니다. 편하신 브라우저를 뛰우셔서 해당 URL 로 접근하시면 됩니다.

로그인 하기

“Mudfish Launcher” 의 Menulet 아이콘이 제대로 표시된다면 해당 아이콘을 클릭하셔서 Open Dashboard 메뉴를 클릭하십시오. 제대로 동작하였다면 브라우저에 다음과 같이 로그인 화면이 나타나야 합니다.

"Mudfish Launcher" 로그인 화면

위 “계정 만들기”에서 생성한 ID/PASSWORD 을 입력한 후 로그인하시면 됩니다.

Mudfish Launcher 사용법

로그인이 성공적으로 되었다면 아래와 같은 화면이 뜰 것입니다.

"Mudfish Launcher" 대쉬보드

이제 미꾸라지 중계 서버 (VPN 서버)들을 사용할 준비가 되었습니다. 이 부분은 좀 더 자세한 설명이 필요로 하기 때문에 따로 문서를 만들었습니다. 해당내용은 “Mudfish Launcher 사용법” 문서를 참고해 주세요.

미꾸라지 중지 하기

Menulet 아이콘을 클릭하였을 때 나오는 Exit 메뉴 혹은 Mudfish Cloud VPN 프로세스를 kill 명령으로 죽이시면 됩니다.

리눅스

설치 및 제거

프로그램 설치

다운로드 페이지를 통해서 리눅스용 미꾸라지를 패키지를 다운로드 받으셨다고 가정하겠습니다. 패키지 확장자은 .sh 입니다. 아래는 버전 v2.2.20 을 다운로드 받으셨다는 가정하에 작성된 설치 예제입니다.

$ wget http://static.loxch.com/releases/mudfish-2.2.20-linux-x86_64.sh
$ sudo sh mudfish-2.2.20-linux-x86_64.sh
Verifying archive integrity... All good.
Uncompressing Mudfish Cloud VPN v2.2.20......
Installation is done under /opt/mudfish/2.2.20.
$ ls -l /opt/mudfish/2.2.20/bin/

리눅스용 미꾸라지의 경우 총 3 개의 executable binary 로 구성되어 있으며 설치 위치는 항상 /opt/mudfish/$(VERSION)/bin/ 에 됩니다. 만약 여러 버전의 패키지가 설치된다면 버전 마다 각각 다른 디렉토리가 사용됩니다.

프로그램 제거

프로그램을 삭제하실려면 아래의 명령을 통해서 삭제하실 수 있습니다. 현재 사용하고 계신 프로그램의 버전을 확인하시고 알맞은 디렉토리를 삭제하시면 됩니다.

$ sudo rm -rf /opt/mudfish/2.2.20/

사용하기

Mudfish Cloud VPN은 크게 세개의 프로그램으로 구성되어 있습니다. mudfish, mudflow 와 mudrun 가 그것인데요, 각 프로그램의 역활에 대해서 잠깐 말씀드리면 아래와 같습니다.

  • mudfish (Mudfish Core) 미꾸라지의 핵심 프로그램입니다. Routing Table 수정 및 트래픽 처리 그리고 미꾸라지 중계 서버와의 통신 등등을 담당합니다. mudrun 의 사용이 불가능할 경우 명령 프롬프트 창을 통해서 직접 실행하실 수도 있습니다.
  • mudflow (Mudfish Flow Controller) 미꾸라지의 트래픽과 라우팅 테이블을 관리하는 프로그램입니다. RTT 검사와 Routing Path 세팅이 이 프로그램을 통해 이루어집니다.
  • mudrun (Mudfish Launcher) mudfish 을 실행시키기 위한 도우미 역활을 하는 프로그램입니다. 명령프롬프트를 이용할 경우, 서버 선택과 서비스 선택이 쉽지 않기 때문에 이를 해결하기 위해서 HTML 기반의 인터페이스를 제공합니다.

계정 만들기

미꾸라지를 사용하기 위해서는 반드시 사용자 ID가 필요하며 미꾸라지 프로그램을 설치하고 실행하시면 처음 로그인 화면 하단에서 “ID 만들기” 링크를 찾을 수 있습니다. 이 링크에 방문하여서 사용하고자 하시는 계정을 만들어주시면 됩니다.

계정 삭제하기

어떠한 이유로 위 ‘ID 만들기’ 를 통해서 생성한 계정을 삭제하고자 하신다면 미꾸라지 UI 에 로그인을 하신 후, 상단에 위치한 ‘계정 관리’메뉴를 클릭합니다. 그럼 ‘계정삭제’ 링크를 찾으실 수 있으며 해당 기능을 통해 계정을 영구 삭제 할 수 있습니다.

Mudfish Launcher 실행하기

Mudfish Launcher 프로그램을 실행하실려면 아래와 같이 수행하십시오. 아래는 설치 버전이 v2.2.20 이라고 가정하고 작성된 예제입니다. 현재 설치하신 버전 정보에 유의하셔서 사용하시기 바랍니다.

$ sudo /opt/mudfish/2.2.20/bin/mudrun

mudrun (Mudfish Launcher) 프로그램은 반드시 root 권한으로 실행이 되어야 하는데요, 아래와 같은 필요로 인해 root 권한이 필요합니다.

  • 내부적으로 현재 사용자 컴퓨터와 중계 서버간 ICMP 프로토콜을 이용하여 RTT (Round Trip Time) 을 계산하는 부분이 있는데, ICMP 프로토콜을 리눅스 상에서 구현을 하려면 raw socket 사용이 필수인데, root 권한만 이를 사용할 수 있습니다.
  • 마법사 메뉴를 통해 IP 주소를 세팅할 경우, 사용하시는 운영체제의 라우팅 테이블을 수정해야 하는데 이 또한 root 권한이 필요합니다.
  • 미꾸라지의 통신을 위해서 사용되는 tap(4) 장치의 IP 할당을 위해서 DHCP 프로토콜이 사용되는데, 이를 fetch 할 dhclient 명령이 root 권한이 필요합니다.

실행을 하게 되면 “Mudfish Launcher” 은 IP 127.0.0.1 의 임의의 port (예를 들면 http://127.0.0.1:8282) 에 TCP LISTENING 을 하게 됩니다. 편하신 브라우저를 뛰우셔서 해당 URL 로 접근하시면 됩니다.

로그인 하기

“Mudfish Launcher” 이 제대로 동작한다면 브라우저에 다음과 같이 나타나야 합니다.

"Mudfish Launcher" 로그인 화면

위 “계정 만들기”에서 생성한 ID/PASSWORD 을 입력한 후 로그인하시면 됩니다.

Mudfish Launcher 사용법

로그인이 성공적으로 되었다면 아래와 같은 화면이 뜰 것입니다.

"Mudfish Launcher" 대쉬보드

이제 미꾸라지 중계 서버 (VPN 서버)들을 사용할 준비가 되었습니다. 이 부분은 좀 더 자세한 설명이 필요로 하기 때문에 따로 문서를 만들었습니다. 해당내용은 “Mudfish Launcher 사용법” 문서를 참고해 주세요.

미꾸라지 중지 하기

프로세스 리스트에서 mudrun 을 kill 명령으로 죽이시면 됩니다. 아직은 정식 종료 방법은 없습니다.