资讯专栏INFORMATION COLUMN

【全球动态加速 PathX】FAQ:详细

Tecode / 2513人阅读

摘要:长期维护该内核通用源码包,目前已经支持和等绝大多数的发行版。选择的加速区域在中国大陆地区之外,无论客户端在哪访问都不需要备案。网站或场景是否可以使用可以使用,全球动态加速支持透传回源。

FAQ

加速配置和加速线路的关系

1、带宽共享功能:一个加速线路可以被多个加速配置绑定,这些加速配置共享加速线路的带宽;
2、一个加速配置可以绑定多个加速线路。
3、删除加速配置不会影响加速线路,加速线路仍存在;
4、若加速线路上绑定了加速配置,该加速线路不能删除;若加速线路上无任何加速配置,该加速线路可以删除。

为什么看到大量固定的IP地址在访问源站服务器

这些地址是加速集群转发节点IP,起到两个作用:
1、传输您的业务数据流量(可通过toa模块获取访问者真实IP)
2、对源站服务器定时做健康检查
对源站服务器做健康检查是通过TCP三次握手的原理来探测源站可用性,为短连接。对于UDP端口 暂不支持健康检查。

注意:源站相关的云服务商或IDC安全策略,可能对短时间内大量的tcp短连接比较敏感,例如友商的安骑士、云盾会在您不知情的情况下误杀这类IP。安全起见,建议在加速线路详情页获得出口EIP列表后 提前加入到云盾白名单内(包括友商的CDN厂商信任列表,WAF产品白名单)。

如何获取访问者真实IP?

由于经过加速线路,发生了nat转换,在业务日志中看到的来源客户端IP变为PathX的出口IP。 如果需要获取真实的客户端IP 可以在您的源站服务器上加载UCloud定制开发的内核toa模块,让应用无需修改代码 不用重新部署即可获取到真实的来源客户端IP。 注意:toa模块目前仅支持ipv4 不支持ipv6。 如果您的源站监听了ipv6地址端口 无法通过此途径获取真实客户端IP的,需要修改监听方式。

Linux系统
UCloud快杰主机上已经安装好toa模块,执行"modprobe toa"即可加载该模块,如加载成功后无需其他操作。
如提示未找到该模块或非快杰主机,可按如下简单步骤进行手工编译与加载:

1.查看当前内核版本号,确认依赖"kernel-devel、kernel-headers"是否安装以及版本号是否与内核一致(uname
-r && rpm -qa |egrep kernel-devel|kernel-headers):
若一致,跳过步骤2,进行toa模块的编译安装
若不一致,如下图:
需要卸载后进行步骤2操作(rpm -e
--nodeps kernel-devel kernel-headers)
若未安装依赖,如下图:

2.yum搜索是否有与当前内核版本对应的kernel-devel、kernel-headers
若有,则安装对用版本(yum install pkgname-version.x86_64)
若无,如下图

则打开网站 http://rpm.pbone.net 点击左侧SEARCH标签,填入包名+版本号(如:kernel-devel-3.10.0-693.11.6.el7.x86_64),选择对应的系统发行版本(此处为CentOS7),点击搜索
搜索结果:
或使用谷歌用关键字“rpm.pbone.net
kernel-devel-3.10.0-693.11.6.el7.x86_64”搜索
下载后rpm方式安装,kernel-headers的安装同理
确认安装结果(uname -r && rpm -qa
|egrep kernel-devel|kernel-headers),如下图:

  1. 下载内核小版本对应的kernel-devel kernel-headers rpm安装包 除了通过搜索引擎或rpmfind等途径找到,历史版本的centos系统,可以去 https://vault.centos.org/ 看看对应centos版本x86_64/os/packages目录。
  2. UCloud长期维护该linux内核通用toa源码包,目前已经支持Centos 6.9和Centos 7、Centos 8、ubuntu14.04等绝大多数的linux发行版。

中国大陆地区下载地址:
wget http://pathx.cn-bj.ufileos.com/linux_toa.tar.gz

中国大陆之外地区下载地址:
wget http://toa.hk.ufileos.com/linux_toa.tar.gz

4.编译加载toa模块过程,由于操作系统和内核版本不断更新,编译过程可能会出现文档中未能描述的情形,如编译报错提示:缺少其他模块或内核函数签名错误,除了善用搜索引擎安装对应模块,
您可联系技术支持寻求帮助。

yum install -y gcc
tar -zxvf linux_toa.tar.gz
cd linux_toa
make
mv toa.ko /lib/modules/`uname -r`/kernel/net/netfilter/ipvs/toa.ko
insmod /lib/modules/`uname -r`/kernel/net/netfilter/ipvs/toa.ko

toa模块安装验证如下(lsmod |grep toa):

5.添加开机模块自动加载


echo "insmod /lib/modules/`uname -r`/kernel/net/netfilter/ipvs/toa.ko"
>> /etc/rc.local

nginx 环境下,直接在nginx 日志中查看真实访问者地址 日志路径: /var/log/nginx/access.log

apache环境下,直接在apache日志中查看真实访问者地址

日志路径:/etc/httpd/logs/access_log

  • 其他web配置环境, 采用同样方法在相关web 日志文件中检查即可

安装了toa 仍然无法查看真实客户端IP

toa原理是从tcp包中取出option字段,解析出真实客户端IP,最后通过内核钩子函数完成替换,服务程序调用的socket库可以通过getpeername方法获取到真实客户端IP。由于toa目前不支持ipv6 如果源站服务监听了ipv6地址,如golang服务默认监听方式,也会导致无法获取真实客户端IP,需要业务调整服务监听方式。如果必须支持ipv6栈下获取真实客户端IP请联系我们讨论解决方案。

如果整条链路转发过程中出现了tcp连接截断的情况,分成两段tcp连接。如在rs前使用了七层负载均衡或tcp请求代理模式,就会导致安装toa成功,仍然获取不到真实客户端IP:

1)client -------> pathx 4层转发 --------- tcp packet (option字段包含:客户端IP ) --------> 7层负载均衡或tcp请求代理负载均衡 ----------tcp packet (option字段不再包含 客户端IP) --------> 源站RS(安装toa 不能获取客户端IP)

2)client -------> pathx 4层转发 --------- tcp packet (option字段包含:客户端IP ) --------> 源站RS(安装toa 可以获取客户端IP)

3)client--------> pathx 4层转发 --------- tcp packet (option字段包含:客户端IP ) --------> 4层负载均衡(ulb4开启报文转发 或 AWS NLB开启保留源IP) ----------tcp packet (option字段包含 客户端IP) --------> 源站RS(安装toa 可以获取客户端IP)

如果使用http协议场景,七层转发 不需要安装toa模块就可以获取真实客户端IP:

4)client--------> pathx 7层转发 ------X-Forwarded-For---------> 各类LB --------> 源站RS(从http header获取客户端IP)

5)client--------> pathx 7层转发 ------X-Forwarded-For---------> 源站RS(从http header获取客户端IP)

如何查看PathX的回源IP(靠近源站一侧的转发节点IP)?

请在PathX资源详情页查看,需要在源站设置白名单时可供参考。这些IP在碰到ddos攻击或机房网络裁撤情况下会发生变化。加速域名解析出来的IP是靠近客户端一侧的接入点IP,在发生ddos攻击或机房网络裁撤情况下会发生变化。

非UCloud服务器是否可以使用全球动态加速?

可以,只要是公网路由可达的服务器即可。

网站是否需要备案?

1)选择的加速区域在中国大陆地区,当业务域名CName到加速域名后,需要在中华人民共和国工业和信息化部完成相关备案(console设有备案申请入口)。

2)选择的加速区域在中国大陆地区之外,无论客户端在哪访问都不需要备案。

3)使用PathX作为国内CDN回源海外服务器的加速器时,回源http(s)请求会经过PathX国内机房节点,备案系统会在机房pop点检查http header中host字段保存的域名是否做过备案。虽然此时cname没有解析到加速域名,仍然需要申请备案。

全球动态加速和CDN加速有区别吗?

CDN在边缘节点对资源缓存实现访问提速,缓存的对象为静态媒体资源。全链路在公网上,跨国回源的线路不太稳定。国外领先的CDN厂商对回源网络做了深度优化,受政策影响,在某些地区节点数量有限,需要其他产品辅助。

全球应用加速优化的是从客户端到源站的跨国(洲)网络质量,依托UCloud的专线调度能力,控制丢包和延迟,不支持应用数据缓存,每次请求都会访问源站获取资源数据。适合支付、登陆、聊天、长连接等场景。同时支持websocket,http等应用层协议,在靠近客户端一侧提前终结tcp连接,端到端长连接优化,可以使链路速度大幅提升。

HTTP(s)网站或API场景是否可以使用?

1)可以使用,全球动态加速支持tcp透传回源。在控制台配置 TCP 80或443端口,证书仍然部署在您的业务服务器上,不需要其他设置。

2)如果您的业务场景需要就近Offloading SSL 用HTTP协议回源,可以使用PathX 7层端口转发中HTTPS-HTTP方式。

3)如果您使用的HTTP(s)请求,源站不方便安装TOA模块 又想获得真实客户端IP,可以使用PathX HTTPS-HTTPS或HTTP-HTTP转发方式。

什么是多地接入?

以中国(多地)到香港的加速为例,创建加速后,华北、华东、华南的用户访问同一个加速域名,但解析出的IP不同,这些IP分别对应pathx在三个地区的入口,也即,不同区域的用户访问pathx加速域名会解析出离用户最近的加速入口IP。

资源使用一段时间后,PathX或GlobalSSH的加速域名+端口突然无法正常访问,而源站+端口可以正常访问

用curl测试一般会报"curl: (56) Failure when receiving data from the peer"
用telnet测试 提示连接成功后,立即收到"Reset By Remote Peer"
重点!重点!重点!用nc测试,则提示连接成功建立。

  1. 检查源站是否有安全策略设置,如阿里云的安骑士(云盾会在用户不做任何配置情况下自动封堵,需要开启白名单IP保护 CDN信任厂商),fail2ban等,若有,可以从console资源详情页获取pathx或globalssh 出口ip加入白名单。
  2. 以上不能解决您的问题,请先提工单咨询您的源站服务器供应商,是否有自动封堵不明来源IP的安全策略。
  3. 检查系统参数设置

    net.ipv4.tcp_timestamps = 1
    net.ipv4.tcp_tw_recycle = 0
    net.ipv4.tcp_tw_reuse = 1

开启tcp_tw_resuse足够进行TCP连接的回收(作为客户端压测或向外大量发请求时有效),tcp_tw_recycle由于设计的时间较为早期,并没有考虑NAT技术在如今公网已经普及,会导致经过NAT(诸如网吧、4G、WIFI)用户部分的连接失败。当前这个参数已经基本废弃。提升tcp回收速度,也可以通过减小tcp等待timeout的时间来实现。

源站是否可以修改?

2020年7月开始,PathX加速源站支持修改,在加速配置详情页,可以修改为新的源站IP或域名,原加速域名和端口不变。注意修改源站后,可能会发生短暂的服务中断,需要客户端重连。

pathX欠费回收后是否可以找回?

回收后无法找回。此时资源在我司的资源和计费系统被标记删除,需要重新创建资源。

pathX是否可配置带宽告警?

可在加速线路详情页"告警模板"处配置,支持带宽绝对值和带宽使用率告警,在加速线路详情页和加速配置页,下拉列表可以选择不同加速区域 方便定位带宽占比较高的入口。

pathX的限流措施

PathX按购买带宽限流,当实时带宽(出向带宽与入向带宽的最大值)超过购买带宽时会触发限流,限流会引起丢包率上升,连接中断等现象发生,当实时带宽低于购买带宽时限流会自动解除。请在线路详情页配置带宽使用率告警。PathX带宽监控数据需要动态采集计算,分布于全球各地机房有1-2分钟的滞后,导致短时间内实际带宽会大幅跑过购买带宽,等到带宽上报完成后下发限流指令会引起严重的丢包情况。

海外SD-WAN是否会支持从海外访问中国大陆地区或从中国大陆地区访问海外的线路?

目前仅支持加速区域和源站均在海外的线路。

加速配置相关能力限制说明

1)加速区域数量:不限制;

2)端口数量:50;

3)4层和七层协议支持情况:http(s) websocket(s) 4层转发可扩展http2 quic ipsec-vpn rtmp rtc等协议,ssl-vpn需要非标支持,不支持ftp访问。

4)4层端口转发:普通集群上,并发连接数限制10000;

5)7层端口转发:普通集群上,单个源IP(客户端)并发限制100,最大并发连接数4000,https请求会低一些;支持选用高性能集群,有需要的可以随时联系我们。

源站域名和源站多个IP,如何处理负载均衡?

1) 如果填写的源站域名解析出来多个IP 每隔30s会对全部源站IP+端口组合(暂时不包括UDP协议端口)做一次健康检查,踢掉健康检查失败的源站节点;

2) 客户端新增的连接请求采用轮询方式在多个源站IP节点间分发;

实时文档欢迎访问:https://docs.ucloud.cn/pathx/faq

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/126350.html

相关文章

  • 概览 全球动态加速 PathX

    摘要:概览概览概览产品简介功能简介产品优势名词解释使用指南免费域名加速价格说明证书格式苹果审核加速通道 概览产品简介 功能简介 产品优势 名词解释 使用指南 免费域名加速价格说明 证书格式 FAQ 苹果审核加速通道

    ernest.wang 评论0 收藏3238
  • 全球动态加速 PathX】产品简介:原理架构、海外SD-WAN、功能简介和价格说明

    摘要:全球动态加速产品简介全球动态加速,是一款致力于提升应用在全球访问质量的网络加速产品。按月续费订单价格控制台某线路的带宽价格加速配置价格不含折扣每月固定费用是元该线路已经绑定的加速配置数量。全球动态加速PathX产品简介全球动态加速(PathX),是一款致力于提升应用在全球访问质量的网络加速产品。使用PathX后,借助于分布在全世界的转发集群,各地区用户可实现就近接入,并通过PathX将请求转...

    Tecode 评论0 收藏0
  • 全球动态加速 PathX】苹果审核加速通道:产品介绍及使用

    摘要:借助于苹果审核加速通道,可以帮助因网络原因被打回的重新通过审核。注意事项苹果审核通道的主要作用是方便用户通过审核,提供的带宽有限。苹果审核加速通道产品介绍苹果审核加速通道是PathX衍生的子产品,旨在解决由于中美之间国际公网不稳定,导致在中国大陆地区部署的APP被App Store审核团队审核时,由于打开APP首页慢、加载内容白屏及网络连接中断等问题导致审核被拒。借助于PathX—苹果审核加...

    Tecode 评论0 收藏0
  • 全球动态加速 PathX】证书格式:支持两种上传方式

    摘要:证书格式格式要求当前证书支持两种上传方式,第一种是直接上传证书文件,第二种是手动填写证书文本信息。您在上传证书或手动填写证书时,请确保证书格式正确,如果校验格式错误,添加证书不成功。证书格式格式要求当前证书支持两种上传方式,第一种是直接上传证书文件,第二种是手动填写证书文本信息。直接上传文件如果您选择直接上传证书文件,那么需要准备好以下文件:必选,网站的证书文件(cer/crt/pem格式)...

    Tecode 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<