至于如何搭建openvpn服务器,请参考我之前的文章,主要注意以下几点
新建client.ovpn,内容为

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
client
dev tun
proto tcp
remote 服务器IP 443
resolv-retry infinite
nobind
persist-key
persist-tun
comp-lzo
verb 3

########免流代码########
http-proxy-option EXT1 "POST http://rd.go.10086.cn"
http-proxy-option EXT1 "GET http://rd.go.10086.cn"
http-proxy-option EXT1 "X-Online-Host: rd.go.10086.cn"
http-proxy-option EXT1 "POST http://rd.go.10086.cn"
http-proxy-option EXT1 "X-Online-Host: rd.go.10086.cn"
http-proxy-option EXT1 "POST http://rd.go.10086.cn"
http-proxy-option EXT1 "Host: rd.go.10086.cn"
http-proxy-option EXT1 "GET http://rd.go.10086.cn"
http-proxy-option EXT1 "Host: rd.go.10086.cn"
http-proxy 10.0.0.172 80
########免流代码########

<ca>
ca.crt的内容粘贴到这里
</ca>

<cert>
client.crt的内容粘贴到这里
</cert>

<key>
client.key的内容粘贴到这里
</key>

注意:需要修改服务器IP为自己的服务器,ca、cert、key的内容需要按里面要求粘贴进去
默认的免流代码为移动的代码
可以修改为其他的

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
联通

http-proxy-retry
http-proxy 10.0.0.172 80
http-proxy-option EXT1 "X-Online-Host: wap.10010.com"
http-proxy-option EXT2 "Host: wap.10010.com"
电信

http-proxy-retry
http-proxy 10.0.0.200 80
http-proxy-option EXT1 "X-Online-Host: ltetp.tv189.com"
http-proxy-option EXT2 "Host: ltetp.tv189.com"
移动-默认

http-proxy-retry
http-proxy 10.0.0.172 80
http-proxy-option EXT1 "POST http://rd.go.10086.cn"
http-proxy-option EXT1 "GET http://rd.go.10086.cn"
http-proxy-option EXT1 "X-Online-Host: rd.go.10086.cn"
http-proxy-option EXT1 "POST http://rd.go.10086.cn"
http-proxy-option EXT1 "X-Online-Host: rd.go.10086.cn"
http-proxy-option EXT1 "POST http://rd.go.10086.cn"
http-proxy-option EXT1 "Host: rd.go.10086.cn"
http-proxy-option EXT1 "GET http://rd.go.10086.cn"
http-proxy-option EXT1 "Host: rd.go.10086.cn"
移动-彩信

http-proxy-retry
http-proxy 10.0.0.172 80
http-proxy-option EXT1 "POST http://mmsc.monternet.com"
http-proxy-option EXT1 "GET http://mmsc.monternet.com"
http-proxy-option EXT1 "X-Online-Host: mmsc.monternet.com"
http-proxy-option EXT1 "CMCC: mmsc.monternet.com"

免流原理

移动公司为了用户方便,设置了浏览部分移动的网站不需要花流量,而移动公司识别访问的网址是否为这部分网址时,出现了问题,导致识别错误,主要是这个X-Online-Host字段上的问题。OpenVPN免流时,实际会先通过HTTP代理,然后再建立VPN,在建立HTTP代理时,让移动公司识别我们是和移动的免流网站建立的代理,这样就能免流了。