![需要查找我国的 ASN 用户](https://linux22.com/image/572971/%E9%9C%80%E8%A6%81%E6%9F%A5%E6%89%BE%E6%88%91%E5%9B%BD%E7%9A%84%20ASN%20%E7%94%A8%E6%88%B7.png)
有人知道我可以在哪里获得按国家/地区列出的自治系统编号用户列表吗?如果无法按国家/地区获取,任何类型的列表都可以。谢谢
答案1
您可以在以下位置找到一个很好的列表:http://bgp.potaroo.net/cidr/autnums.html
很难按“国家”对它们进行排序,因为许多组织横跨多个大洲,可能在全球范围内使用相同的 AS,但世界被划分为区域注册中心,因此您至少可以看到哪个地区给出了特定的 AS 编号。因此,例如对于欧洲,您有 RIPE。可以在以下位置找到 AS 编号列表以及它们被分配给哪个地区:
http://www.iana.org/assignments/as-numbers/as-numbers.xml
如果您想进行一些手动处理,您也可以从此文件中获取信息:
ftp://ftp.ripe.net/ripe/stats/delegated-ripencc-latest
字段按 分隔|
。第二个字段是国家代码,第三个字段类型(ASN 代表 AS 编号),第四个字段是实际 AS 编号。由于它是一个文本文件,因此您可以轻松地将其导入 Excel 并进行搜索,或者如果您可以访问命令行实用程序,则可以通过这种方式进行查询。Linux 中的一个示例是使用 awk 列出委托给瑞典的所有 AS 编号。
awk -F\| '{if ($2 == "SE" && $3 == "asn" ) print $4}' < delegated-ripencc-latest
要搜索俄罗斯,请将 SE 替换为 RU。
从 Linux 提示符中更高级一点,下载 RIPE 数据库文件,整理出来自俄罗斯的所有 AS 号码,然后为 AS 号码查找服务(来自 Team Cymru)准备一个输入文件,然后发送请求文件并将输出保存到 asn.ru,您可以逐行在 Linux shell 中执行类似这样的操作:
wget ftp://ftp.ripe.net/ripe/stats/delegated-ripencc-latest
awk -F\| '{if ($2 == "RU" && $3 == "asn" ) print $4}' < delegated-ripencc-latest > output.txt
sed -i -e 's/^/AS/' output.txt
(echo begin;echo verbose;cat output.txt;echo end) > input.txt
nc whois.cymru.com whois < input.txt > asn.ru
然后你的 asn.ru 将会输出类似这样的内容:
Bulk mode; whois.cymru.com [2012-01-18 19:09:55 +0000]
2118 | RU | ripencc | 1993-02-17 | RELCOM-AS OOO _NPO Relcom_
2122 | RU | ripencc | 2000-06-30 | JSC PIOGLOBAL Asset Management, www.pioglobal.ru
2587 | RU | ripencc | 1995-03-23 | FREE-NET-AS2587 OOO FREEnet Group
答案2
您可以使用以下服务获取注册到特定国家/地区的所有 AS 编号cc2asn.com。输入两个字母的国家代码(ISO 3166-1 Alpha-2),将返回所有 ASN。可用于获取 IPv4 或 IPv6 前缀的选项。示例:
使用谁是获取瑞典的所有 ASN:
whois -h cc2asn.com SE
将输出
AS1755
AS1878
AS1879
AS1880
AS1881
AS1882
...
或者你可以使用卷曲获取相同的数据:
curl www.cc2asn.com/data/se_asn
您还可以获取整个数据库,以进行离线查找:
wget www.cc2asn.com/data/db.tar.gz
此数据库每天更新一次(RIR 更新其授权文件的频率)。
源代码可在 github 上找到:http://github.com/toringe/cc2asn
答案3
这ipinfo.io 国家报告包括每个国家/地区的所有 ASN 列表。下面的屏幕截图显示了巴西的数据,可从http://ipinfo.io/countries/br