Skip to content

Latest commit

 

History

5 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RIR IP Search - Python ファイル概要

このリポジトリは、APNICなどRIRの情報を用いてIP アドレスの逆引き情報を検索・取得するツール群を提供しています

主に以下の Python スクリプトが含まれ、各ファイルがそれぞれの機能を担っています

依存関係

  • mise: 開発・実行環境の管理ツール (開発時に利用)

初期設定

# mise のインストール
curl https://mise.run | sh
cd ..
cd -
mise trust
cd ..
cd -
uv venv .venv
cd ..
cd -
uv sync
uv run pip install -e .

miseインストール

詳細は公式ページを参照してください

https://mise.jdx.dev/getting-started.html#alternate-installation-methods

インストール後、設定読み込みのためリポジトリのディレクトリから移動、再度入り直してください

また、初回移動時にコンフィグを信頼するか確認される場合があります。 必要に応じてmise trustを実行してください


venv環境の構築

miseによる環境読み込みが完了すると、pythonおよびuvの導入が実行されます

環境構築後、リポジトリの環境構築のため、uv venv .venvで環境を構築してください

uvによるVenv環境構築後、ディレクトリに出入りするとmiseの設定で自動的にvenv環境がアクティベーションされます


venv環境への開発コマンド導入

uv syncを実行して必要なライブラリを導入してください

また、uv run pip install -e .を実行することで管理スクリプトを呼び出せるようになります。 詳細はpyproject.toml[project.scripts]を確認してください

使用方法(簡易例)

詳細は各コマンドのヘルプ-hを実行してください

# RIRからIPアドレス情報を取得(初回、情報更新時のみ)
fetch-ip-allocations
# IPアドレスから情報をLookup
# 1つのアドレスをIPv4/IPv6で指定
lookup-ip x.x.x.x
lookup-ip x:x::x:x
# 複数のアドレスを一括確認
# 1行1アドレスのテキストデータを指定できます
lookup-ip -f PATH_TO_IP_LIST

本プログラム群はAS番号、組織名をipinfo.ioのAPIを用いて取得しています

高速化、負荷軽減のためCIDR単位でAS情報をDBにキャッシュしています

# ASキャッシュ情報の確認コマンド
inspect-asn-cache
# キャッシュ情報はAS番号、組織名、キャッシュ取得日でソート可能です
inspect-asn-cache --sort asn

AS情報のキャッシュ、RIRから取得するIP情報はSQLiteデータベースのip_allocations.dbに格納されます

不要な場合はファイルを削除してください

About

Search IP information from RIR data

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages