基于URL资源探测的代理IP识别与管理方法、系统及非瞬时计算机可读存储介质与流程

摘要: 本发明属于网络代理与ip资源管理,具体涉及一种基于url资源探测的代理ip识别与管理方法、系统及非瞬时计算机可读存储介质。背景技术:1、随着互联网业务的分布式发...
基于URL资源探测的代理IP识别与管理方法、系统及非瞬时计算机可读存储介质与流程

本发明属于网络代理与ip资源管理,具体涉及一种基于url资源探测的代理ip识别与管理方法、系统及非瞬时计算机可读存储介质。

背景技术:

1、随着互联网业务的分布式发展,企业在跨地域业务监测、公开信息采集、多节点api调用、网络性能测试等场景中,对代理ip资源的需求持续增长。当前市场中的代理服务厂商普遍以url资源连接的形式向用户交付代理服务,用户通过调用该url资源即可使用代理转发能力。

2、然而,现有代理服务模式在企业级应用中存在以下技术问题:

3、ip地址不可见:代理厂商仅提供url资源入口,用户无法直接获知该url背后实际出口的ip地址,黑盒式的交付模式导致用户无法对代理ip进行精细化管控与调度。

4、ip地址动态变化:url资源背后的出口ip由厂商调度动态调整,用户无法预知变更节点与变更范围,易导致业务链路中ip白名单失效、路由策略错乱等问题。

5、资源可用性未知:用户无法提前校验url资源的连通性与有效性,仅能在业务调用时发现认证失效、连接超时、服务不可用等故障,影响业务连续性。

6、资源管理效率低:多厂商、多批次的url资源分散管理,缺乏统一的ip维度标识与状态台账,难以实现资源分类、筛选、统计与全生命周期管理。

7、业务调度精度不足:对于需要基于ip地址做策略路由、节点分配的业务场景,无法获知具体ip会导致调度粒度不足,难以实现基于ip的资源池化与弹性调度。

8、因此,亟需一种能够自动探测url资源背后实际出口ip、同步完成可用性校验、实现统一资源管理的技术方案,以解决现有技术存在的上述问题。

技术实现思路

1、本发明为了解决现有技术中的不足之处,提供一种基于url资源探测的代理ip识别与管理方法、系统及非瞬时计算机可读存储介质,通过自动探测代理厂商url资源对应的最终出口ip地址,结合多维度可用性检测与全生命周期状态管理,构建统一的代理ip资源数据库并对外提供标准化查询服务,且在用户授权范围内实现对自有代理资源的透明化管理,全程遵循合规探测原则,解决现有技术中代理ip不可见、动态不可控、可用性无法前置校验、资源管理效率低的技术问题。

2、为解决上述技术问题,本发明采用如下技术方案:

3、一种基于url资源探测的代理ip识别与管理方法,包括以下步骤:

4、s1:获取各代理厂商提供的url资源连接及对应所属代理厂商信息,将所述url资源连接加入待探测队列;

5、s2:从所述待探测队列中取出url资源连接,通过该url资源连接向预设的用于反馈连接来源ip的目标探测服务器发起连接请求;

6、s3:基于目标探测服务器反馈的网络连接信息,识别并提取该url资源连接对应的最终出口ip地址;

7、s4:对已识别出最终出口ip地址的url资源对应的代理资源执行可用性检测,得到资源可用性判定结果与性能指标数据;

8、s5:根据所述可用性判定结果执行url资源状态管理:检测通过的,将该url资源连接、对应的最终出口ip地址、所属代理厂商、url资源状态及性能指标数据存入代理ip资源数据库,并标记为可用状态且纳入可用资源池;检测未通过的,累计连续失败次数,当连续失败次数达到预设阈值时,将该url资源标记为失效状态并从可用资源池中移除;

9、s6:按照预设周期对所述代理ip资源数据库中的存量url资源执行ip重新探测与可用性重新检测,动态更新url资源对应的最终出口ip地址与url资源状态;

10、s7:基于所述代理ip资源数据库构建资源查询接口,通过资源查询接口向外部应用提供代理ip资源查询服务。

11、在其中一个实施例中,步骤s3中识别最终出口ip地址具体包括:

12、依次采用http请求探测、tcp连接探测、dns解析探测三种方式获取对应层级的网络连接信息;其中http请求探测用于获取应用层响应与代理链字段,tcp连接探测用于获取传输层实际对端ip,dns解析探测用于获取入口域名解析ip;

13、按照目标端实际观测来源ip优先级高于http代理链字段、http代理链字段优先级高于dns解析入口ip的规则进行结果融合;

14、同一检测周期内两个及两个以上有效探测结果指向同一公网ip时,判定该ip为当前url资源连接对应的最终出口ip地址。

15、在其中一个实施例中,步骤s4中所述可用性检测包括连接性检测、认证检测、稳定性检测与性能检测;

16、检测过程采用令牌桶或漏桶算法,按代理厂商、认证账号、url资源连接及目标探测服务器维度进行限流控制;

17、检测失败时按照指数退避策略延长下一次探测间隔,其中认证失败类错误累计达到预设次数后转入人工校验流程,网络抖动类错误采用低频复测策略。

18、在其中一个实施例中,步骤s3中识别得到的最终出口ip地址,在多层级联代理场景下为目标探测服务器观测到的距离自身最近的一跳代理出口ip;

19、级联链路中的上游代理节点、厂商调度节点及入口ip仅作为附加信息存储,不参与可用出口ip的主键去重与白名单判定。

20、在其中一个实施例中,用于发起连接请求与可用性检测的url资源对应的代理认证信息采用信封加密方式存储:使用数据加密密钥对单条代理认证信息进行带认证的对称加密,再使用主密钥加密所述数据加密密钥;

21、所述代理认证信息仅在发起探测请求与可用性检测时于内存中短时解密,日志记录与接口返回中对凭据信息进行脱敏处理。

22、本发明还公开了一种基于url资源探测的代理ip识别与管理系统,包括:

23、url资源获取模块,用于获取各代理厂商提供的url资源连接及对应所属代理厂商信息,将所述url资源连接加入待探测队列;

24、ip地址探测模块,用于从所述待探测队列中取出url资源连接,通过该url资源连接向预设的用于反馈连接来源ip的目标探测服务器发起连接请求,并基于目标探测服务器反馈的网络连接信息,识别并提取该url资源连接对应的最终出口ip地址;

25、资源可用性检测模块,用于对已识别出最终出口ip地址的url资源对应的代理资源执行可用性检测,得到资源可用性判定结果与性能指标数据;

26、资源状态管理模块,用于根据所述可用性判定结果执行url资源状态管理:检测通过的,将该url资源连接、对应的最终出口ip地址、所属代理厂商、url资源状态及性能指标数据存入代理ip资源数据库,并标记为可用状态且纳入可用资源池;检测未通过的,累计连续失败次数,当连续失败次数达到预设阈值时,将该url资源标记为失效状态并从可用资源池中移除;

27、定期巡检模块,用于按照预设周期对所述代理ip资源数据库中的存量url资源执行ip重新探测与可用性重新检测,动态更新url资源对应的最终出口ip地址与url资源状态;

28、资源查询接口模块,用于基于所述代理ip资源数据库构建资源查询接口,通过资源查询接口向外部应用提供代理ip资源查询服务。

29、在其中一个实施例中,所述ip地址探测模块集成http请求探测单元、tcp连接探测单元与dns解析探测单元,按照http请求探测优先、tcp连接探测校验、dns解析探测参考的顺序执行探测,并按照目标端实测ip优先的规则进行多源结果融合与置信度标记。

30、在其中一个实施例中,所述资源可用性检测模块内置检测执行单元、限流调度单元与异常退避单元;

31、所述检测执行单元用于执行连接性检测、认证检测、稳定性检测与性能检测;

32、所述限流调度单元采用令牌桶算法按多维度控制探测请求速率;

33、所述异常退避单元针对不同失败类型执行分级指数退避,并区分认证失败与网络抖动场景采用不同的重试策略。

34、在其中一个实施例中,还包括认证信息加密存储模块,采用信封加密方式存储代理认证凭据,支持密钥轮换与审计日志记录,并在探测调用时执行按需解密与脱敏输出。

35、本发明还公开了一种非瞬时计算机可读存储介质,所述非瞬时计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述的基于url资源探测的代理ip识别与管理方法。

36、采用上述技术方案,本发明具有以下有益效果:

37、(1)本发明通过目标探测服务器实测的方式识别url资源对应的最终出口ip地址,打破现有代理服务的黑盒模式,使用户能够清晰掌握每个url资源对应的实际出口ip,可以为精细化调度提供数据基础;

38、(2)本发明通过构建统一的代理ip资源数据库,用户可按ip地址、所属厂商、可用性状态等维度对资源进行分类、筛选与管理,实现对代理ip资源的精确控制与池化调度;

39、(3)本发明通过多维度可用性前置检测与失效自动清理机制,能够提前发现并剔除失效资源,确保可用资源池中的资源持续有效,降低业务运行中的故障概率;

40、(4)本发明的资源获取、ip探测、可用性检测、状态更新、定期巡检全流程自动化执行,无需人工干预,可以大幅降低运维管理成本,提升资源管理效率;

41、(5)本发明通过提供准确的出口ip地址信息,使业务系统能够实现ip白名单匹配、按地域调度、ip去重复用等高级策略,满足分布式业务对ip精确控制的需求;

42、(6)本发明支持同时接入多个代理厂商的资源,统一格式、统一存储、统一查询,可以为厂商选型、资源比价与弹性调度提供数据支撑;

43、(7)本发明通过定期巡检机制动态更新ip地址与资源状态,能够及时感知厂商侧的ip变更与服务波动,保证资源数据库信息的准确性与时效性;

44、综上所述,本发明具有可以实现代理ip透明化,可以提升资源可控性,可以保障业务连续性,可以实现自动化全生命周期管理,可以支撑精细化业务调度,能够兼容多厂商进行统一管理,能够保持数据实时性等优点。