eMule电骡使用OpenVPN获取HighID配置教程

以下是在 Windows7 虚拟机环境中做的试验,还需要有一台自己的 Openvpn 服务器,用于映射端口,打通 eMule 的连接,最终获得 HighID,使之可以连接 lowID 用户,提高下载速度或者资源。
PS:早些年就用过这个方案,拖延症托到现在才把这方案记录到博客中来让更多的 eMule 分享者使用。

下面这张图是配置好之后正常下载文件中的截图
eMule_XdP downloading
1、设置 eMule TCP、UDP 端口,我设置的是 TCP 3531,UDP 3531,并配置 Windows 防火墙,配置出、入方向的 TCP、UDP 的 3531 端口为允许连接,不然是获得不到 HighID 的。

eMule_port_setting

Windows 7_eMule_in

Windows 7_eMule_out

2、配置 OpenVPN 客户端静态 ip 地址,每次连接都分配同一个地址。
2.1 在 OpenVPN server.conf 配置文件中增加

vim /etc/openvpn/server.conf

# Client config directory
client-config-dir /etc/openvpn/ccd

2.2 创建 /etc/openvpn/ccd 目录

mkdir -p /etc/openvpn/ccd

2.3 查看你的 OpenVPN 分配给你的证书名:

openssl x509 -in /etc/easy-rsa/easyrsa3/pki/issued/windows.crt -noout -subject | sed -e 's/.*CN=\(.*\)\/.*/\1/'

windows

我这次的名字为 windows,这个看你 OpenVPN 创建证书分配给客户的时候你自己定的

2.4 在 ccd 目录创建名为 windows 的文件,内容如下:

cat /etc/openvpn/ccd/windows
ifconfig-push 10.8.0.14 10.8.0.13

前面一个是客户端,你电脑连接成功 OpenVPN 之后获取的地址,后面是服务器使用的地址,这两个地址分配也是有规律的,为什么要这样配置呢?

客户端占用两个 IP,因为根据 IP 掩码位 /30 得知可用的 IP 就是两个。对于为什么只有 64 个,下面是官方的解释。
解释:
分配静态 IP 的方式是通过 ipconfig-push 设置的,而 ifconfig-push 地址代表虚拟客户端和服务器 IP 端点。它们必须从连续/30个子网中取得,以便与 Windows 客户端和 TAP-Windows 驱动程序兼容。具体来说,每个端点对的 IP 地址中的最后一个八位字节必须从该集合中取出:

[1,2] [5,6] [9,10] [13,14] [17,18]
[21,22] [25,26] [29,30] [33,34] [37,38]
[41,42] [45,46] [49,50] [53,54] [57,58]
[61,62] [65,66] [69,70] [73,74] [77,78]
[81,82] [85,86] [89,90] [93,94] [97,98]
[101,102] [105,106] [109,110] [113,114] [117,118]
[121,122] [125,126] [129,130] [ 133,134] [137,138]
[141,142] [145,146] [149,150] [153,154] [157,158]
[161,162] [165,166] [169,170] [173,174] [177,178]
[181,182] [185,186] [189,190]
[201,202] [205,206] [209,210] [213,214] [217,218]
[221,222] [225,226] [229,230] [233,234] [237,238]
[241,242] [245,246] [249,250] [253,254]

2.5 修改配置权限

chown -R nobody:nogroup /etc/openvpn/ccd

2.6 重启 OpenVPN 服务

service openvpn restart

3、在 OpenVPN 服务器中设置端口转发
上面我的 eMule 的 TCP 和 UDP 端口分别为TCP 3531,UDP 3531,OpenVPN 公网 ip 为 233.233.233.233,客户端连接 vpn 后得到的 ip 为 10.8.0.14, 分别执行

# opvnevpn to emule Get HighID
iptables -t nat -A PREROUTING -p tcp -d 233.233.233.233 --dport 3531 -j DNAT --to 10.8.0.14:3531
iptables -t nat -A PREROUTING -p udp -d 233.233.233.233 --dport 3531 -j DNAT --to 10.8.0.14:3531

iptables-save > /etc/sysconfig/iptables

查看是否配置成功,命令如下:

iptables -t nat -vnL

iptables_NAT_PREROUTING_Chain

4、重新连接 OpenVPN,重启 eMule,连接服务器看看是不是 HightID 吧,

ovpn

eMule_My_info_HighID

还有一个检测方法:

telnet 233.233.233.233 3531

如果是通的,那表示端口映射成功,可以获得 HighID 了。

文章来源:

Author:JavasBoy
link:https://www.liurongxing.com/emule-openvpn-highid-setting.html