为了账号安全,请及时绑定邮箱和手机立即绑定

在域名上聚类 IP 地址

在域名上聚类 IP 地址

炎炎设计 2021-08-24 17:20:57
我有一个 ip-network,它基本上是一个连续的 ip 地址列表。从这个列表中,我想将 ip 地址范围聚集到独立的实体中。我想为该范围内的每个 IP 提供一组属性,例如生存时间、名称服务器和与之关联的域名。然后我想确定每个 IP 地址与其邻居之间的距离,并根据最短距离开始聚类。我的问题在于距离函数。TTL 是一个数字,所以这应该不是问题。域名服务器和域名是字符串,但是如何将它们表示为向量中的数字?基本上,如果 2 个 IP 地址具有相同的名称服务器或非常相似的域名(等于 2LD),您希望它们之间的距离更小。我已经研究过类似 word2vec 的东西,但真的找不到有用的实现。
查看完整描述

1 回答

?
哔哔one

TA贡献1854条经验 获得超8个赞

我会尝试像这样使用 difflib。


from difflib import SequenceMatcher


def similarity(a, b):

    return SequenceMatcher(None, a, b).ratio()

然后,您可以针对每组名称调用该函数以获得相似性分数并根据该分数对它们进行分组。


similarity("server1","server1")

1.0


similarity("Server1","Server2")

0.8571428571428571


similarity("foo","bar")

0.0


查看完整回答
反对 回复 2021-08-24
  • 1 回答
  • 0 关注
  • 214 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信