#ip #ipinfo #whois #ping #cache #cli

bin+lib ripinfo

ripinfo 是一个使用 ipinfo.io API 汇集 IP 信息的工具

2 个版本

0.1.1 2023 年 3 月 9 日
0.1.0 2023 年 3 月 9 日

#9 in #whois

MIT 许可证

190KB
392 代码行

Ripinfo

使用 rust™ 编写的个人工具,用于通过 ipinfo.io API 汇集 IP 信息

command gif

安装

Ripinfo 可以使用 cargo 进行安装

cargo install ripinfo

配置

Ripinfo 可以以两种模式获取 IP 信息:演示模式令牌模式

演示模式

令牌模式

  • 使用访问令牌来获取数据
  • 响应取决于您的计划
  • 需要您配置 ripinfo_config.json

如何获取访问令牌?

为了获取访问令牌,您需要在 ipinfo.io 上拥有一个账户。您可以在以下链接创建一个账户: https://ipinfo.io/login

一旦您创建了账户,您可以在以下链接检查您的访问令牌:https://ipinfo.io/account/token

配置 ripinfo_config.json

默认情况下,ripinfo 使用演示模式,如果不存在 ripinfo_config.json,ripinfo 将创建它。

要使用 ipinfo.io 访问令牌,请创建/编辑位于以下路径的 ripinfo_config.json

# Windows: C:\Users\<USER>\AppData\Roaming\RipInfo\ripinfo\config\ripinfo_config.json
# Linux: /home/<USER>/.config/ripinfo/ripinfo_config.json
# Mac: /Users/<USER>/Library/Application Support/com.RipInfo.ripinfo/ripinfo_config.json

Ripinfo 使用 directories crate 获取配置目录。

将以下内容插入 ripinfo_config.json

{
  "use_token": true,
  "token": "<YOUR_ACCESS_TOKEN>"
}

关于缓存 ⚠️

每次请求成功后,ripinfo 都会在 ripinfo.json 中存储 IP 数据(与 ripinfo_config.json 相同的目录)。

因此,下次您请求缓存的 IP 时,ripinfo 将返回缓存的 IP 数据。这样做是为了节省对 ipinfo.io 的请求,并减少对 ipinfo API 的使用。

由于这曾经是一个个人工具,我通常会手动删除缓存中的项目。因此,我计划在将来添加命令来绕过缓存并删除缓存中的特定项目。

依赖项

~7–22MB
~303K SLoC