互联网与R-编程的不一致之处
互联网协议(IP)地址是域名系统(DNS)的几个组成部分之一。通常,IP序列会以IPv4和IPv6格式显示。互联网目录包含关于IP地址的进一步信息。大致的地理位置、互联网服务提供商(ISP)、虚拟私人网络(VPN)和自治系统号码(ASN)是可以找到的几个数据例子。
如果不进行编辑,这些信息可以合并成一个集体研究平台。本教程可以帮助那些对检测互联网不一致性感兴趣的个人和团体。
先决条件
作为先决条件,读者必须具备以下条件。
- 一个具有无限功能的设备。
- 安装了一个功能性的Linux模拟器(选择了Kali Linux)。
- R-编程软件。
- 互联网接入。
- DNS机械和知识。
- R-编程库的安装和文档。
- 一些算术经验。
目标
本教程的一个目标是承认可能影响不知情的个人和团体的互联网差距。另一个目标是为互联网的复杂性提供可能的洞察力。
对读者来说,理解范围内的术语和内容也很重要。
简介
在本教程中,R程序被用来对IPv4地址的数据进行统计分析。其目的是为了了解互联网活动的准确性和不准确性。
作为一个起点,45.88.197.212 将是本教程中定义的 IP 地址。
让我们开始吧。
Linux基础知识
打开任何Linux Shell。
对于那些喜欢使用Linux而不使用ROOT 。
sudo apt update
作为提醒,有权限的用户可以通过输入以下一行进入ROOT 模式。
sudo -i
对于那些喜欢使用Linux与ROOT.
apt update
打开一个新的Kali-Linux窗口并输入以下内容。
kex
应该弹出一个类似这样的窗口。

屏幕截图
R-编程
输入以下一行以安装R-Programming应用程序的Linux版本。
sudo apt-get install r-base r-base-dev
可能会出现以下屏幕。

屏幕截图

屏幕截图
另外,使用R-编程应用程序也同样有效。

RStudio的屏幕截图
如果没有安装,本教程中使用的库列在下面。
install.packages(c("Rwhois", dependencies = TRUE))
install.packagec(c("iptools", dependencies = TRUE))
install.packages(c("rIP", dependencies = TRUE))
install.packages(c("rattle", dependencies = TRUE))
使用下面这个库可以找到负责的IP注册商的信息。
library(Rwhois)
部分输出。
| 索引 | key | val |
|---|---|---|
| 1 | 网络范围 | 45.80.0.0至45.95.255.255 |
| 2 | CIDR | 45.80.0.0/12 |
| 3 | 网名 | RIPE |
| 4 | 网柄 | net-45-80-0-0-1 |
| 5 | 父母 | net45 (net-45-0-0-0) |
| 6 | 网类 | 早期注册,转入RIPE NCC |
一个与域名扩展名协调的服务器(例如,".us")。如果包括一个服务器名称,可以显示DNS停放的名称服务器。
下面的代码显示了名称服务器。
("asianausa.us", server = "whois.nic.us")
部分输出。
| 关键 | val |
|---|---|
| 名称服务器 | ns1.dns-parking.com |
| 名称服务器 | ns2.dns-parking.com |
下面的代码可以确认这个IP是否有效。
library(iptools)
iptools::is_valid("45.88.197.212")
输出。
[1] TRUE
为了检查该IP是否使用了DNS代理,我们必须使用以下命令。
library(rIP)
proxycheck("45.88.197.212", api_key = proxycheck_api_key())
显示一个没有代理的IP地址将出现如下图所示。
输出。
[1] "no"
一个IP地址可以被归类到多个地理区域。下一步将展示可以从一个IPv4地址得出的基本统计数据。
基本统计数据
一个IP地址的地质位置可以类似于许多统计数据模型。确定正确的地质位置的概率可能很艰难,因为要考虑各种DNS因素。
例如,IP地址45.88.197.212 与立陶宛、德国、塞浦路斯、荷兰和阿姆斯特丹重叠。
因素可以包括。
- 本教程中之前发现的DNS变量。
- 目录。
下表列出了一些有用的目录。
| 目录名称 | 信息 |
|---|---|
| RIPE | Réseaux IP Européens(欧洲IP网络)为欧洲服务。 |
| NIC | 用于扩展的服务器目录。 |
| ARIN | 美国互联网号码注册处为北美和加勒比地区的部分地区服务。 |
| IANA | Internet Assigned Numbers Authority 提供整体目录和注册商信息。 |
| CIRA | 加拿大互联网注册局为加拿大服务。 |
- 隐私编辑。
与这个IP地址分类的国家是复杂的。Hostinger国际有限公司(AS47583)是负责45.88.197.0 到45.88.197.255 之间的IP地址的ASN托管网站。
通过对45.88.197.212 进行反向IP工程,我们可以找到五个可能的地质位置。
- 立陶宛(Li)
- 塞浦路斯 (Cyp)
- 德国 (De)
- 荷兰(Nl)
- 阿姆斯特丹(Am)
Rattle 可以生成数据模型。决策树模型可以提供一个逻辑上的细分。下面显示的,是一个手工制作的IP地址数据框。

通常,决策树会选择可能的最高数字作为最佳选择。
在这种情况下,对被归类为不太理想的国家进行分析。Amsterdam,Netherlands, 和Cyprus 被显示为前三个选择。Lithuania 和Germany 似乎不太理想。

屏幕截图
可以从随机森林模型中评估变量的重要性。变量的重要性显示在下面的图片中。

屏幕截图
在五个国家中得分最高的是Lithuania ,它显示了与IP地址的最多联系。Germany 也显示了一些关联性。这个使用Gini的统计分析发现Lithuania 产生了更高的变量重要性,其值为3087.48 。
Linux反向IP查询
为了验证有效性,这里有一个快速的代码来评估。
sudo curl http://ipinfo.io/45.88.197.212
输出。
{
"ip": "45.88.197.212",
"city": "Kaunas",
"region": "Kaunas",
"country": "LT",
"loc": "54.9027,23.9096",
"org": "AS47583 Hostinger International Limited",
"postal": "44001",
"timezone": "Europe/Vilnius",
"readme": "https://ipinfo.io/missingauth"
}

屏幕截图
一个curl 函数可以列出一个IP地址上可能的域名。下面的代码使用了反向IP工程。
sudo curl https://host.io/asianausa.us
部分输出。
grh-interviews.online
recruits-agility.com
careers-mfc.work
careers-massiveinsights.work
grandrivershospital.com
mindfieldconsulting.work
careers-mconsulting.work
grandrivershosp.ca
interviews-sobeys.com
interviews-massiveinsights.digital
morgeesmodcon.com
你是否注意到上面列出的域名是在ARIN 和CIRA 注册的公司,与RIPE 没有任何联系?
互联网存在不一致的情况,因为欧洲国家通常不应该拥有北美公司域名的IP地址的所有权。
编码可以帮助识别互联网数据是准确的还是不准确的。统计编码方法可以显示DNS的关系网。网上身份可以通过互联网目录和IP查询来揭示。
经验之谈
- 统计学可以揭示互联网的不一致性。
- 先进的数据模型可以提供进一步的DNS关系。
- 互联网注册商对分配IP数据很重要。