讨论互联网与R-编程的不一致之处

122 阅读6分钟

互联网与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

应该弹出一个类似这样的窗口。

kex

屏幕截图

R-编程

输入以下一行以安装R-Programming应用程序的Linux版本。

sudo apt-get install r-base r-base-dev

可能会出现以下屏幕。

kexry

屏幕截图

kexr

屏幕截图

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

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)

部分输出。

索引keyval
1网络范围45.80.0.0至45.95.255.255
2CIDR45.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变量。
  • 目录。

下表列出了一些有用的目录。

目录名称信息
RIPERéseaux IP Européens(欧洲IP网络)为欧洲服务。
NIC用于扩展的服务器目录。
ARIN美国互联网号码注册处为北美和加勒比地区的部分地区服务。
IANAInternet Assigned Numbers Authority 提供整体目录和注册商信息。
CIRA加拿大互联网注册局为加拿大服务。
  • 隐私编辑。

与这个IP地址分类的国家是复杂的。Hostinger国际有限公司(AS47583)是负责45.88.197.045.88.197.255 之间的IP地址的ASN托管网站。

通过对45.88.197.212 进行反向IP工程,我们可以找到五个可能的地质位置。

  • 立陶宛(Li)
  • 塞浦路斯 (Cyp)
  • 德国 (De)
  • 荷兰(Nl)
  • 阿姆斯特丹(Am)

Rattle 可以生成数据模型。决策树模型可以提供一个逻辑上的细分。下面显示的,是一个手工制作的IP地址数据框。

dataframe

通常,决策树会选择可能的最高数字作为最佳选择。

在这种情况下,对被归类为不太理想的国家进行分析。Amsterdam,Netherlands, 和Cyprus 被显示为前三个选择。LithuaniaGermany 似乎不太理想。

decisiontree

屏幕截图

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

variableimportance

屏幕截图

在五个国家中得分最高的是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"
}

ipinfolinux

屏幕截图

一个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

你是否注意到上面列出的域名是在ARINCIRA 注册的公司,与RIPE 没有任何联系?

互联网存在不一致的情况,因为欧洲国家通常不应该拥有北美公司域名的IP地址的所有权。

编码可以帮助识别互联网数据是准确的还是不准确的。统计编码方法可以显示DNS的关系网。网上身份可以通过互联网目录和IP查询来揭示。

经验之谈

  • 统计学可以揭示互联网的不一致性。
  • 先进的数据模型可以提供进一步的DNS关系。
  • 互联网注册商对分配IP数据很重要。