Deployment and Installation

Server

Running ArkC-Server requires Python 2.7, Twisted (Python 3 is currently not supported for compatibility issues) and txsocksx, a full list of requirements is shown below, also a virtual environment is generally recommended.

Requirements


Python development environment:

You may need python deveolpment environment to run Arkc-Server

Debian/Ubuntu users:

sudo apt-get install python python-pip python-dev

Fedora users:

sudo yum install python python-pip python-devel

Site-packages:

Required site-packages are included in requirements.txt, pip will install them automatically.

  • twisted
  • pycrypto
  • txsocksx
  • pyotp
  • ipaddress
  • dnslib
  • psutil

Installation


With python development environment:

sudo pip install arkcserver

You may also install via source.

Generate keys for server side with

arkcserver -kg

If you need to use portable proxy function, like MEEK (required to integrate with GAE), use

arkcserver --get-meek

Client

Requirements


Prerequisites:

To get ArkC Client work, you must satisfy ONE OF the following conditions (unless you are the expert):

  1. Connect to public Internet directly.
  2. Connect to the Internet via a UPnP-enabled router, in a single-layer LAN.
  3. Router(s) on your route to the public Internet are properly configured with NAT to allow your server to connect to your client’s “remote_port” directly.

Python development environment:

For linux users, a python3 pip development environment is required.(Note:We don’t recommend using python 2)

Debian/Ubuntu users:

sudo apt-get install python3 python3-pip python3-dev

Fedora users:

sudo yum install python3 python3-pip python3-devel

For windows users, see Installation.

Site-packages:

Required site-packages are included in requirements.txt
, pip will install them automatically.

  • pycrypto
  • dnslib
  • requests
  • miniupnpc

Installation


Windows

For Windows users, you are recommended to use our Windows executable along with our GUI based on .Net framework in the Github release page. It saves troubles because installing pycrypto and miniupnpc often involves compiler configuration.

Linux

With python development environment:

sudo pip3 install arkcclient

You may also install via source.

Generate keys for client side with

arkcclient -kg

If you need to use portable proxy function, like MEEK (required to integrate with GAE), use

arkcclient --get-meek