责任声明: 本站一切资源均原创或收集自互联网,仅作交流学习之用,请勿用作商业!如造成任何后果,本站概不负责!

CentOS7下使用firewalld设置服务器中转

Linux kevin 0评论

1、何谓中转

中转,顾名思义,就是用一台优质中转服务器中转目的服务器,优化用户端到目的服务器的路由,形成 用户→ 国内中转服务器 → 目的地服务器 的网路链路,简单来说就是通过中转服务器优化用户端到目的服务器的理由。

2、意义

同样是到外国某个IP,每个不同的运营商,走的线路是不同的。以上海→美国为例,有的运营商是直连,有的是从上海绕到广东再到香港,最后到美国。还有一些二级运营商,比如长城宽带、鹏博士这种二级运营商,自己没有出口带宽,靠租上级运营商的带宽过活,人一多就拥挤。而即便同样是电信,国际出口带宽有一般线路,还有cn2、cn2 Gia,差别很大。民用级的国际出口带宽在高峰时也如同万人挤独木桥,非常拥堵,导致大家平常玩游戏时经常遇到高延迟、高丢包的现象。而相对的,BGP 线路就会宽松很多。利用中转,用户端可以直接从国内走企业级国际出口,相当于出国的 VIP 绿色通道,避免和别人争那个本来就不多的民用出口,大大降低延迟和丢包。

3、设置

中转效果受中转服务器的质量影响,如果中转服务器带宽为 1Mbps,那么中转之后,用户端到目的服务器的最高速度也不会超过 1Mbps,因此 尽量找一台质量好的中转服务器。

主要是中转服务器的设置,系统不一样步骤可能不同,这里以CentOS为例。CentOS7 自带的有Firewall,所以就直接使用。

本例操作中,中转服务器为阿里云ECS上海节点,ip假设为1.1.1.1,端口为1111,目标服务器为搬瓦工美西节点,SS*应用已架设好,端口为2222,ip为2.2.2.2。

首先要确定阿里云ECS的“安全组规则”中添加了1111端口。

查看一下服务器是否启动了Firewall服务,如果没有,将Firewall启动。

systemctl status firewalld
systemctl start firewalld

firewall-cmd --query-masquerade
firewall-cmd --permanent --add-masquerade
firewall-cmd --permanent --add-forward-port=port=1111:proto=tcp:toport=2222:toaddr=2.2.2.2
firewall-cmd --permanent --add-forward-port=port=1111:proto=udp:toport=2222:toaddr=2.2.2.2

这张图是未中转前的youtube速度

这张图是使用中转后的youtube速度

为什么这么慢呢?是因为阿里云ECS是限速1M了。

 

4、firewall常用命令

systemctl status firewalld       #状态
systemctl stop firewalld         #关闭
systemctl start firewalld        #开启
systemctl  restart firewalld    #重启
systemctl  disable firewalld    #关闭开机启动

firewall-cmd --list-all        #查看防火墙所有信息
firewall-cmd --list-ports      #查看防火墙开放的端口信息
firewall-cmd --state           #查看防火墙
firewall-cmd --reload          #防火墙重新加载配置 
firewall-cmd --query-masquerade             #检查是否允许伪装IP
firewall-cmd --permanent --add-masquerade     #允许防火墙伪装IP
firewall-cmd --permanent --remove-masquerade   #禁止防火墙伪装IP

另外,看到很多同学讲先要进行启用转发,经过试验,此设置应该是iptables命令中的,在firewalld下无影响。

echo 1 > /proc/sys/net/ipv4/ip_forward

即便设成0,同样可以进行中转。

转载请超链接注明: XSpace » CentOS7下使用firewalld设置服务器中转