scan-my-subnet — IPネットワーク資源スキャナー
概要
scan-my-subnetは、社内ネットワークやホームネットワークのIPアドレス利用状況を簡単に監視できるWebサービスです。バックエンドはFastAPI(Python 3.11想定)で実装され、フロントエンドはVue 3とTailwind CSSで構築されています。管理者は複数のサブネットを登録してスキャンを実行でき、非同期並列処理により大量のIPを効率的にチェックします。永続化はJSONファイルで行うためデータベース不要、Dockerイメージによるワンコマンド展開もサポートしており、小規模〜中規模な環境で手軽に導入できます。認証にはJWT、パスワードはbcryptでハッシュ化されるなどセキュリティ面の配慮もされています。
リポジトリの統計情報
- スター数: 3
- フォーク数: 0
- ウォッチャー数: 3
- コミット数: 3
- ファイル数: 13
- メインの言語: HTML
主な特徴
- 非同期・並列スキャンによる高速なIPステータス検出(大規模サブネット対応)
- FastAPI + Vue3/Tailwindで構成されたフルスタック構成、モダンなUIを提供
- JSONファイルベースの永続化でデータベース不要、軽量な運用が可能
- JWT認証とbcryptでのパスワードハッシュ化、Dockerデプロイ対応
技術的なポイント
本プロジェクトは「軽量で即導入可能なIPスキャン監視」を目標に設計されています。バックエンドはFastAPIを用いることで非同期処理やAPI設計が容易になり、Python 3系のasync機構を活かした並列スキャンが可能です(READMEに「异步并发扫描」とあるため、asyncioベースや並列タスクで多数のIPに対して同時接続/ICMP確認を行う構成が想定されます)。データの永続化はJSONファイルにより行われ、リレーショナルDBを必要としないためセットアップが簡便ですが、ファイルロックや同時書き込み時の整合性設計が必要になる点は運用で留意すべきです。
認証周りはJWTトークンを採用しており、APIはトークンベースで保護されます。ユーザーのパスワードはbcryptでハッシュ化保存されるため平文保存より安全ですが、HTTPS運用やトークン有効期限、リフレッシュ戦略などを補完することが推奨されます。フロントエンドはVue 3とTailwind CSSで実装され、即時性の高いダッシュボード表示やグルーピング表示(サブネット毎の集約)に向いています。
Dockerfileが用意されているため、コンテナ化による一括デプロイが可能です。実運用ではコンテナ内でのICMP送信やネットワークアクセス権限(CAP_NET_RAW等)の確認、ホストネットワークモードの検討が必要です。また、JSONストレージのバックアップやメトリクス収集を別途用意すると可用性が向上します。拡張点としては、スキャン方式(ICMP/ARP/TCP SYN等)の選択肢追加、結果の履歴保存やアラート機能、認証の外部連携(LDAP/SSO)などが考えられます。
プロジェクトの構成
主要なファイルとディレクトリ:
- .gitignore: file
- Dockerfile: file
- PROJECT_STRUCTURE.md: file
- QUICKSTART.md: file
- README.md: file
…他 8 ファイル
まとめ
小〜中規模ネットワーク向けに素早く導入できる、非同期スキャン対応の軽量IP監視ツールです。
リポジトリ情報:
- 名前: scan-my-subnet
- 説明: 一个基于Python3 + Vue3 打造的IP地址资源扫描器,通过添加指定网段扫描该网段内的IP占用情况。按照不同IP段进行分组扫描和展示。
- スター数: 3
- 言語: HTML
- URL: https://github.com/bystart/scan-my-subnet
- オーナー: bystart
- アバター: https://avatars.githubusercontent.com/u/38885210?v=4
READMEの抜粋:
IP网络资源使用情况监控系统
一个基于Python 3.11和FastAPI开发的Web服务,用于监控和展示内网IP使用情况。支持多网段管理,实时扫描IP在线状态。
欢迎关注我的公众号:青檬小栈

功能特性
- 🔐 用户认证 - JWT令牌认证,密码bcrypt加密,安全可靠
- 📊 多网段管理 - 支持添加、删除多个内网网段
- 🔍 IP扫描 - 自动扫描网段内所有IP的在线状态
- 📈 实时统计 - 实时显示网段、IP总数及在线/离线统计
- 🎨 精美界面 - 使用Vue 3 + Tailwind CSS打造现代化UI
- 💾 JSON存储 - 无需数据库,使用JSON文件持久化数据
- 🐳 Docker支持 - 一键Docker部署
- ⚡ 高性能 - 异步并发扫描,支持大规模网段
技术栈
- 后端: FastAPI + Python 3…