设为首页收藏本站

 找回密码
 注册论坛

QQ登录

只需一步,快速开始

用百度帐号登录

只需两步,快速登录

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 4629|回复: 40
打印 上一主题 下一主题

centos 6安装haproxy 实现TCP代理请求中转转发加速的方法 SS国内阿里云服务器加速访问

[复制链接]

签到天数: 2213 天

[LV.Master]伴坛终老

 成长值: 20805
跳转到指定楼层
楼主
发表于 2016/12/26 19:51 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式 |Google Chrome 55.0.2883.87|Windows 10
天涯海角搜一下: 百度 谷歌 360 搜狗 有道 雅虎 必应 即刻
移动到阿里云香港只有1MB/S,用国内深圳阿里云BGP转发下,速度瞬间飞起来。

此方法,只要是TCP的都能用,什么MC游戏啊,视频直播都可以。

centos 6 x64运行此命令安装
  1. yum install -y haproxy
复制代码


输入rpm -qi haproxy可以看到版本号是1.5.4,如果不满意可以自己去官网编译安装
[root@pac haproxy]# rpm -qi haproxy
Name        : haproxy                      Relocations: (not relocatable)
Version     : 1.5.4                             Vendor: CentOS
Release     : 3.el6                         Build Date: Tue 10 May 2016 07:17:37 PM UTC
Install Date: Mon 26 Dec 2016 11:29:07 AM UTC      Build Host: worker1.bsys.centos.org
Group       : System Environment/Daemons    Source RPM: haproxy-1.5.4-3.el6.src.rpm
Size        : 2552550                          License: GPLv2+
Signature   : RSA/SHA1, Thu 12 May 2016 10:49:33 AM UTC, Key ID 0946fca2c105b9de
Packager    : CentOS BuildSystem <http://bugs.centos.org>
URL         : http://www.haproxy.org/
Summary     : HAProxy is a TCP/HTTP reverse proxy for high availability environments
Description :
HAProxy is a TCP/HTTP reverse proxy which is particularly suited for high
availability environments. Indeed, it can:
- route HTTP requests depending on statically assigned cookies
- spread load among several servers while assuring server persistence
   through the use of HTTP cookies
- switch to backup servers in the event a main one fails
- accept connections to special ports dedicated to service monitoring
- stop accepting connections without breaking existing ones
- add, modify, and delete HTTP headers in both directions
- block requests matching particular patterns
- persists clients to the correct application server depending on
   application cookies
- report detailed status as HTML pages to authenticated users from a URI
   intercepted from the application


输入rpm -ql haproxy可以看到当然的软件文件占用
[root@pac haproxy]# rpm -ql haproxy
/etc/haproxy
/etc/haproxy/haproxy.cfg
/etc/logrotate.d/haproxy
/etc/rc.d/init.d/haproxy
/etc/sysconfig/haproxy
/usr/bin/halog
/usr/bin/iprange
/usr/sbin/haproxy
/usr/share/doc/haproxy-1.5.4
/usr/share/doc/haproxy-1.5.4/CHANGELOG
/usr/share/doc/haproxy-1.5.4/LICENSE
/usr/share/doc/haproxy-1.5.4/README
/usr/share/doc/haproxy-1.5.4/acl-content-sw.cfg
/usr/share/doc/haproxy-1.5.4/acl.fig
/usr/share/doc/haproxy-1.5.4/architecture.txt
/usr/share/doc/haproxy-1.5.4/close-options.txt
/usr/share/doc/haproxy-1.5.4/coding-style.txt
/usr/share/doc/haproxy-1.5.4/configuration.txt
/usr/share/doc/haproxy-1.5.4/content-sw-sample.cfg
/usr/share/doc/haproxy-1.5.4/cookie-options.txt
/usr/share/doc/haproxy-1.5.4/cttproxy-src.cfg
/usr/share/doc/haproxy-1.5.4/design-thoughts
/usr/share/doc/haproxy-1.5.4/design-thoughts/backends-v0.txt
/usr/share/doc/haproxy-1.5.4/design-thoughts/backends.txt
/usr/share/doc/haproxy-1.5.4/design-thoughts/be-fe-changes.txt
/usr/share/doc/haproxy-1.5.4/design-thoughts/binding-possibilities.txt
/usr/share/doc/haproxy-1.5.4/design-thoughts/buffer-redesign.txt
/usr/share/doc/haproxy-1.5.4/design-thoughts/buffers.fig
/usr/share/doc/haproxy-1.5.4/design-thoughts/config-language.txt
/usr/share/doc/haproxy-1.5.4/design-thoughts/connection-reuse.txt
/usr/share/doc/haproxy-1.5.4/design-thoughts/cttproxy-changes.txt
/usr/share/doc/haproxy-1.5.4/design-thoughts/entities-v2.txt
/usr/share/doc/haproxy-1.5.4/design-thoughts/how-it-works.txt
/usr/share/doc/haproxy-1.5.4/design-thoughts/http_load_time.url
/usr/share/doc/haproxy-1.5.4/design-thoughts/rate-shaping.txt
/usr/share/doc/haproxy-1.5.4/design-thoughts/sess_par_sec.txt
/usr/share/doc/haproxy-1.5.4/gpl.txt
/usr/share/doc/haproxy-1.5.4/haproxy-en.txt
/usr/share/doc/haproxy-1.5.4/haproxy-fr.txt
/usr/share/doc/haproxy-1.5.4/haproxy.1
/usr/share/doc/haproxy-1.5.4/haproxy.cfg
/usr/share/doc/haproxy-1.5.4/internals
/usr/share/doc/haproxy-1.5.4/internals/acl.txt
/usr/share/doc/haproxy-1.5.4/internals/body-parsing.txt
/usr/share/doc/haproxy-1.5.4/internals/buffer-operations.txt
/usr/share/doc/haproxy-1.5.4/internals/buffer-ops.fig
/usr/share/doc/haproxy-1.5.4/internals/connect-status.txt
/usr/share/doc/haproxy-1.5.4/internals/connection-header.txt
/usr/share/doc/haproxy-1.5.4/internals/connection-scale.txt
/usr/share/doc/haproxy-1.5.4/internals/entities.fig
/usr/share/doc/haproxy-1.5.4/internals/entities.pdf
/usr/share/doc/haproxy-1.5.4/internals/entities.svg
/usr/share/doc/haproxy-1.5.4/internals/entities.txt
/usr/share/doc/haproxy-1.5.4/internals/hashing.txt
/usr/share/doc/haproxy-1.5.4/internals/header-parser-speed.txt
/usr/share/doc/haproxy-1.5.4/internals/header-tree.txt
/usr/share/doc/haproxy-1.5.4/internals/http-cookies.txt
/usr/share/doc/haproxy-1.5.4/internals/http-docs.txt
/usr/share/doc/haproxy-1.5.4/internals/http-parsing.txt
/usr/share/doc/haproxy-1.5.4/internals/naming.txt
/usr/share/doc/haproxy-1.5.4/internals/pattern.dia
/usr/share/doc/haproxy-1.5.4/internals/pattern.pdf
/usr/share/doc/haproxy-1.5.4/internals/polling-states.fig
/usr/share/doc/haproxy-1.5.4/internals/repartition-be-fe-fi.txt
/usr/share/doc/haproxy-1.5.4/internals/sequence.fig
/usr/share/doc/haproxy-1.5.4/internals/stats-v2.txt
/usr/share/doc/haproxy-1.5.4/internals/stream-sock-states.fig
/usr/share/doc/haproxy-1.5.4/internals/todo.cttproxy
/usr/share/doc/haproxy-1.5.4/lgpl.txt
/usr/share/doc/haproxy-1.5.4/proxy-protocol.txt
/usr/share/doc/haproxy-1.5.4/queuing.fig
/usr/share/doc/haproxy-1.5.4/tarpit.cfg
/usr/share/doc/haproxy-1.5.4/url-switching.cfg
/usr/share/haproxy
/usr/share/haproxy/400.http
/usr/share/haproxy/403.http
/usr/share/haproxy/408.http
/usr/share/haproxy/500.http
/usr/share/haproxy/502.http
/usr/share/haproxy/503.http
/usr/share/haproxy/504.http
/usr/share/haproxy/README
/usr/share/man/man1/halog.1.gz
/usr/share/man/man1/haproxy.1.gz
/var/lib/haproxy
[root@pac haproxy]#


修改配置文件vi /etc/haproxy/haproxy.cfg
  1. global
  2.         ulimit-n  800000
  3. defaults
  4.         log global
  5.         mode    tcp
  6.         option  dontlognull
  7.         contimeout 1000
  8.         clitimeout 150000
  9.         srvtimeout 150000
  10. frontend ss-in
  11.         bind *:port  ##阿里云深圳中转服务器本地使用端口port自己改
  12.         default_backend ss-out
  13. backend ss-out
  14.         server server1 server_IP:port maxconn 65535  ##阿里云香港源服务器 IP 和 SS 端口
复制代码


启动
  1. service haproxy start
复制代码


开机自动启动
  1. chkconfig --level 2345 haproxy on
复制代码


如果要多端口用户,做不同的东西,比如说MC,就可以在配置文件最下方增加
  1. frontend mc-in
  2. bind *:25565
  3. default_backend mc-out
  4. backend mc-out
  5. server server1 ip:25565 maxconn 65535
复制代码


然后重启服务即可
  1. service haproxy restart
复制代码


查看进程端口占用情况
  1. netstat -apn | grep haproxy
复制代码


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 顶 踩
欢迎光临IT技术交流论坛:http://bbs.itzmx.com/
回复

使用道具 举报

签到天数: 61 天

[LV.6]常住居民II

沙发
发表于 2016/12/27 08:58 | 只看该作者 |Google Chrome 55.0.2883.87|Windows 7
使用iptables规则其实也可以实现上述功能,haproxy本身还不支持udp中转,而iptables支持
欢迎光临IT技术交流论坛:http://bbs.itzmx.com/
回复 支持 反对

使用道具 举报

签到天数: 2213 天

[LV.Master]伴坛终老

 成长值: 20805
板凳
发表于 2016/12/27 18:04 | 只看该作者 |Google Chrome 54.0.2840.99|Windows 8.1
lunksana 发表于 2016/12/27 08:58
使用iptables规则其实也可以实现上述功能,haproxy本身还不支持udp中转,而iptables支持

那肯定,,然而iptables并不会写←v←
欢迎光临IT技术交流论坛:http://bbs.itzmx.com/
回复 支持 反对

使用道具 举报

签到天数: 61 天

[LV.6]常住居民II

报纸
发表于 2016/12/28 08:09 | 只看该作者 |Google Chrome 55.0.2883.87|Windows 7
本帖最后由 lunksana 于 2017/1/3 16:19 编辑
小樱 发表于 2016/12/27 18:04
那肯定,,然而iptables并不会写←v←


首先开启linux转发功能echo 1 > /proc/sys/net/ipv4/ip_forward
然后在/etc/sysconfig/iptables文件中添加以下代码
iptables -t nat -A PREROUTING -p tcp --dport [端口] -j DNAT --to-destination [目标IP:端口]
iptables -t nat -A PREROUTING -p udp --dport [端口] -j DNAT --to-destination [目标IP:端口]
iptables -t nat -A POSTROUTING -p tcp -d [目标IP] --dport [端口] -j SNAT --to-source [本地服务器公网IP]
iptables -t nat -A POSTROUTING -p udp -d [目标IP] --dport [端口] -j SNAT --to-source [本地服务器公网IP]
其中端口指你要开放的本地转发端口。目标IP:端口是国外vps的IP和需要转发的端口,这样就开启了tcp和udp中转,然后重启一下iptables就可以进行测试了
同样的centos7的firewalld也可以实现上述功能,直接几条命令就可以了
echo 1 > /etc/sys/net/ipv4/ip_forward
firewall-cmd --permanent --add-port=端口/tcp #开启本地tcp中转端口
firewall-cmd --permanent --add-port=端口/udp #开启本地udp中转端口
firewall-cmd --permanent --add-masquerade #添加伪装
firewall-cmd --permanent --add-forward-port=port=端口:proto=tcp:toport=vps端口:toaddr=x.x.x.x(vps IP) #建立tcp远程中转端口转发
firewall-cmd --permanent --add-forward-port=port=端口:proto=udp:toport=vps端口:toaddr=x.x.x.x(vps IP) #建立udp远程中转端口转发
firewall-cmd --reload #重启firewalld
以上即完成了防火墙转发
欢迎光临IT技术交流论坛:http://bbs.itzmx.com/
回复 支持 反对

使用道具 举报

签到天数: 2213 天

[LV.Master]伴坛终老

 成长值: 20805
地板
发表于 2016/12/28 15:19 | 只看该作者 |Google Chrome 55.0.2883.87|Windows 8.1
lunksana 发表于 2016/12/28 08:09
首先开启linux转发功能echo 1 > /proc/sys/net/ipv4/ip_forward
然后在/etc/sysconfig/iptables文件中添 ...

大大大大佬
欢迎光临IT技术交流论坛:http://bbs.itzmx.com/
回复 支持 反对

使用道具 举报

签到天数: 61 天

[LV.6]常住居民II

6
发表于 2016/12/29 08:43 | 只看该作者 |Google Chrome 55.0.2883.87|Windows 7

我不是大佬,我只是一个搬运工外加实践者,还要感谢你的推荐,否则就没有国际版阿里云让我来做测试了
欢迎光临IT技术交流论坛:http://bbs.itzmx.com/
回复 支持 反对

使用道具 举报

签到天数: 2213 天

[LV.Master]伴坛终老

 成长值: 20805
7
发表于 2016/12/31 01:45 | 只看该作者 |Google Chrome 55.0.2883.87|Windows 10
lunksana 发表于 2016/12/29 08:43
我不是大佬,我只是一个搬运工外加实践者,还要感谢你的推荐,否则就没有国际版阿里云让我来做测试了



service iptables restart
netstat -apn参数竟然看不到网络监听状态。。不过实测的确可用
欢迎光临IT技术交流论坛:http://bbs.itzmx.com/
回复 支持 反对

使用道具 举报

签到天数: 10 天

[LV.3]偶尔看看II

8
发表于 2016/12/31 15:16 | 只看该作者 |Google Chrome 45.0.2454.101|Windows 10
两位大大大大佬
欢迎光临IT技术交流论坛:http://bbs.itzmx.com/
回复 支持 反对

使用道具 举报

签到天数: 10 天

[LV.3]偶尔看看II

9
发表于 2016/12/31 15:16 | 只看该作者 |Google Chrome 45.0.2454.101|Windows 10
两位大大大大佬
欢迎光临IT技术交流论坛:http://bbs.itzmx.com/
回复 支持 反对

使用道具 举报

签到天数: 2213 天

[LV.Master]伴坛终老

 成长值: 20805
10
发表于 2016/12/31 17:19 | 只看该作者 |Google Chrome 55.0.2883.87|Windows 8.1
lunksana 发表于 2016/12/28 08:09
首先开启linux转发功能echo 1 > /proc/sys/net/ipv4/ip_forward
然后在/etc/sysconfig/iptables文件中添 ...

iptables转发把服务器网络搞死了怎么办。。


[发帖际遇]: 小樱 发帖时在路边捡到 5 樱币,偷偷放进了口袋. 幸运榜 / 衰神榜
欢迎光临IT技术交流论坛:http://bbs.itzmx.com/
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册论坛 用百度帐号登录新浪微博账号登陆

本版积分规则

手机版|Archiver|Mail me|网站地图|IT技术交流论坛 ( 闽ICP备13013206号-7 )

GMT+8, 2018/1/24 11:27 , Processed in 0.323572 second(s), 37 queries , Gzip On, Apc On.

Powered by itzmx!

© 2011-2018 sakura

快速回复 返回顶部 返回列表