一个轻量级代理,用于验证IP阻塞措施
arkcclient的Python项目详细描述
ArkC是一个轻量级代理,旨在证明IP阻塞措施 通过多连接传输和 交换连接。
arkc client是客户端实用程序。在局域网环境中, 使用支持upnp的路由器或需要nat配置,如果 客户端在路由器后面
注意:arkc 0.3与0.2或更早版本不兼容。
什么是arck?
arkc使vps所有者能够将vps共享给周围的人,或者在线共享vps上托管的代理,而不必担心ip黑名单。
有关更详细的说明,请访问我们的网站并阅读我们的页面Understand ArkC。中石化{a3}.
默认情况下,它会尝试这样做:
并使其稍微复杂一点,例如将obfs_级别设置为3或使用socks代理:
注意,“匿名代理”可以是您设置的任何内容!
设置和要求
可能需要更详细的指导:Deployment and Installation中新网 这页面。
对于Windows用户,建议您在Githubrelease page中使用我们的Windows GUI安装程序和最新的ArkC客户端二进制可执行文件只需选择您的.Net Framework版本并下载即可
对于使用python3 pip开发环境的用户(注意:我们没有 建议使用python 2):
sudo pip3 install arkcclient
使用python安装python3和pip3。h:
Debian/Ubuntu用户
sudo apt-get install python3 python3-pip python3-dev
Fedora用户
yum install python3 python3-devel python3-pip
您也可以通过source安装arkc。
要让arkc客户工作,您必须满足以下条件之一 条件(除非你是专家):1)连接到公共互联网 直接2)通过支持UPnP的路由器连接到Internet,在 单层LAN 3)您通往公共Internet的路由上的路由器是 正确配置NAT以允许服务器连接到 客户端的“远程端口”
如果您需要使用可移植的代理功能,如meek(需要与gae集成)或obfs4proxy,请按照上述链接访问arkc.org。
用法
有关详细文档,请访问我们的Documentation page。
中新网
运行
arkcclient [-h] [-v|-vv] [-pn] -c <Path of the config Json file>
[-pn]用于禁用UPnP
在这个版本中,任何私有证书都应该是pem格式的 没有加密,而任何公共证书都应该是 ssh rsa的。
我们可以用
arkcclient -kg [--kg-path Key_Generated_Path]
密钥可以发送到服务器提供程序使用的电子邮件地址
arkcclient -reg Email_Address_to_send
服务器应自动将密钥添加到其密钥存储中。
对于配置文件,您可以在此处找到一个示例:
{ "local_cert":"client.pem", "remote_cert":"server.pub", "local_cert_pub":"client.pub", "control_domain":"testing.arkc.org", "dns_servers": [ ["8.8.8.8", 53], ["127.0.0.1", 9000] ] }
注意:json格式不允许有任何注释。
有关设置的完整列表:
Index name | Value Type & Description | Required / Default |
---|---|---|
local_host | string, proxy listening addr | “127.0.0.1” |
local_port | integer, proxy port | 8001 |
remote_host | string, listening host | “0.0.0.0” |
remote_port | integer, listening port | random between 20000 and 60000 |
number | integer, how many conn. (max. 100) | 3 |
local_cert | string, path of client pri | REQUIRED |
local_cert_pub | string, path of client pub | REQUIRED |
remote_cert | string, path of server pub | REQUIRED |
control_domain | string, standard domain | REQUIRED |
dns_servers | list, servers to send dns query to | [] (use system resolver) |
debug_ip | string, address of the client (only for debug use) | None |
pt_exec | string, command line of PT executable | “obfs4proxy” |
obfs_level | integer, obfs leve 0~3, the same as server side | 0 |
注意:如果设置了obfs_level,则pt_exec必须是适当的设置已经准备好了 要使用obfs4或meek,两者都是可插入传输(缩写:pt)。温顺 像刺激剂一样,obfs4用来混淆所有的交通。
如果设置为1或2,obfs4将使用iat模式(obfs_level+1),其中 意味着如果obfs_level设置为1或2,连接速度可以是 影响。
如果obfs_level设置为3,meek将用于通过 在服务器端预先配置的MEEK服务默认情况下通过 通过谷歌应用引擎。
在Windows上生成可执行文件
pip install pyinstaller pyinstaller [--onefile] main.py
致谢
客户端软件改编了由 马克·珀西瓦尔m@mdp.im。他的代码在python端口版权下被重用, 附加许可证。
arkcclient/ptclient.py文件基于王定远的ptproxy。 在麻省理工学院许可证下重新使用和编辑的代码,附在文件中。
许可证
复制品HT2015 ArkC技术
arkc客户机和arkc服务器实用程序在gnu gplv2下获得许可。 您应该获得软件许可证的副本。
arkc是自由软件:您可以在 自由党公布的GNU通用公共许可条款 软件基础,许可证的版本2,或者 选项)任何更高版本
ArkC的发行是希望它会有用,但是没有 保证;甚至没有对适销性或 适合某一特定目的。参见GNU通用公共许可证 更多细节。
你应该收到一份GNU通用公共许可证的副本 和阿尔克在一起。如果没有,请参阅http://www.gnu.org/licenses/