首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从主机名中提取ISP名称

从主机名中提取ISP名称
EN

Database Administration用户
提问于 2020-10-22 19:46:53
回答 1查看 64关注 0票数 0

我想从主机名获得高级域名(不是子域)。其想法是从用户的主机名中“猜测”ISP的名称。想法?

代码语言:javascript
复制
// no ISP when it's an IP
115.20.106.216 => null

// in these cases the domain name should be the ISP name
108-81-122-61.lightspeed.frokca.sbcglobal.net => sbcglobal.net
61-22-86-252.static.trlk.ca.charter.com => charter.com
c-28-8-222-102.hsd1.ca.comcast.net => comcast.net
CPE-128-122-18-181.hdbq1.win.bigpond.net.au => bigpond.net.au
dhcp-108-168-82-106.cable.user.start.ca => start.ca
ip68-100-26-186.dc.dc.cox.net => cox.net
ip-108-85-1-22.web.vodafone.de => vodafone.de
pool-68-86-186-222.washdc.fios.verizon.net => verizon.net
s51865a4f.adsl.online.nl => online.nl

// in these cases it's not very obvious
c-208-168-15-86.wifi.ties.k12.mn.us => k12.mn.us ?
cpe-66-181-81-222.tx.res.rr.com => res.rr.com ?

注意:所有IP地址都是随机的。

bigpond.net.au这样的东西是三级的.主域有时是2级,有时是3级.

EN

回答 1

Database Administration用户

回答已采纳

发布于 2020-10-26 17:25:11

我找到了这个工具,它做的正是我想要的https://github.com/rvflash/publicsuffix-sql

它使用publicsuffix.org,它维护一个公共后缀列表,如.com.co.ukpvt.k12.ma.us

使用该工具提供的函数,我们可以简单地执行以下操作:

代码语言:javascript
复制
select DOMAIN('115.20.106.216'); -- null 
select DOMAIN('cpe-45-37-121-56.nc.res.rr.com'); -- rr.com 
select DOMAIN('CPE00fc8d22x-CM023d22f4f0.cpe.net.cable.rogers.com'); -- rogers.com 
select DOMAIN('c-208-168-15-86.wifi.ties.k12.mn.us'); -- k12.mn.us 
select DOMAIN('CPE-128-122-18-181.hdbq1.win.bigpond.net.au'); -- bigpond.net.au 
票数 2
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/278529

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档