diff --git a/docs/network-diagram.md b/docs/network-diagram.md index 5f0c1ee..6d9ad21 100644 --- a/docs/network-diagram.md +++ b/docs/network-diagram.md @@ -1,29 +1,133 @@ -```markdown -# Network IP Map - -## WAN - -| インターフェース | IP アドレス | 回線 | -|---|---|---| -| WAN1 | `133.27.54.201/32` | Flets(固定IP) | -| WAN2 | `106.128.57.19/28` | LTE/5G(モバイル) | +# 🌐 ネットワーク構成詳細定義書 (2026.03.11 更新) --- -## SRV ネットワーク(10.0.0.0/16) +## 1. 物理ホスト・ネットワーク基盤 -### VLAN 10 — MGMT(`10.0.10.0/24`) +物理デバイスおよびハイパーバイザの定義です。 -| ホスト名 | 機器 | IP アドレス | -|---|---|---| -| `rt-edge-01` | RTX 1300 | `10.0.10.1` | -| `rt-aggr-edge-01` | USW Aggregation | `10.0.10.11` | -| `sw-srv-01` | AT-x510-28GTX | `10.0.10.21` | -| `sw-srv-02` | AT-x510-28GTX | `10.0.10.22` | -| `sw-aggr-srv-01` | USW Aggregation | `10.0.10.31` | +| カテゴリ | デバイス名 | ホスト名・用途 | IPアドレス | 備考 | +| --- | --- | --- | --- | --- | +| **Gateway** | Aterm WG1200 HP4 | Priv GW | `192.168.0.1` | メインルーター | +| **Wireless** | WRC BE26QS | Priv AP | `192.168.0.2` | アクセスポイント | +| **Switch** | AT-x510-28GTX | Core SW | `192.168.0.254` | コアスイッチ | +| **SBC** | sc-rpi4-01 | RPi4 | `192.168.1.150` | Raspberry Pi 4 | +| **PVE Node** | n1-pro-pve | nw-pve node | `192.168.1.10` | Proxmoxノード1 | +| **PVE Node** | x86-01-pve | x86-pve node | `192.168.1.100` | Proxmoxノード2 | + +* **サブネット:** `192.168.0.0/20` (`255.255.240.0`) +* **デフォルトゲートウェイ:** `192.168.0.1` --- -(ファイル内容は元を参照) +## 2. 仮想マシン / コンテナ (VM・LXC) 一覧 -``` +各ノードで稼働するインスタンスのIP割り当てです。 + +| VMID | ホスト名・用途 | IPアドレス | 役割区分 | +| --- | --- | --- | --- | +| **110** | NTP | `192.168.0.10` | 時刻同期インフラ | +| **120** | nexus | `192.168.0.20` | リバースプロキシ (Caddy) | +| **300** | svc-dns | `192.168.0.53` | サービス用DNS | +| **310** | priv-dns | `192.168.10.53` | プライベート用DNS | +| **1010** | zabbix-1 | `192.168.2.10` | 統合監視サーバ | +| **1050** | docker-db-1 | `192.168.2.50` | データベース集約ノード | +| **1080** | docker-app-1 | `192.168.2.80` | アプリケーション実行ノード | +| **1090** | crafty | `192.168.2.90` | Minecraft 管理ノード | +| **1110** | fr24-feed | `192.168.2.110` | FlightRadar24 Feed | + +--- + +## 3. ポートマッピング・通信定義 + +### 🔓 外部公開ポート (Port Forwarding) + +ルーター経由で外部インターネットに公開されているパスです。 + +| 宛先IP | ホスト名 | 外部ポート | 内部ポート | 用途 | +| --- | --- | --- | --- | --- | +| `192.168.0.20` | nexus (Caddy) | `80` | `80` | HTTP Web公開 | +| `192.168.0.20` | nexus (Caddy) | `443` | `443` | HTTPS Web公開 | +| `192.168.2.90` | crafty | `44965` | `25565` | Minecraft (TCP) | + +--- + +### 🔒 内部使用ポート詳細 + +各ホスト内で稼働・公開されている全ポートの定義です。 + +#### ■ インフラ・DNS・監視系 + +| 宛先IP | 名称 | ホスト側 | コンテナ側 | 用途・備考 | +| --- | --- | --- | --- | --- | +| `192.168.0.10` | NTP | `123/UDP` | `123/UDP` | NTPサーバー | +| `192.168.0.20` | nexus | `2019` | `2019` | Caddy Admin API | +| `192.168.0.53` | svc-dns | `53/UDP,TCP` | `53/UDP,TCP` | DNS (svc) | +| `192.168.0.53` | svc-dns | `80` | `80` | Web管理画面 | +| `192.168.10.53` | priv-dns | `53/UDP,TCP` | `53/UDP,TCP` | DNS (priv) | +| `192.168.10.53` | priv-dns | `80` | `80` | Web管理画面 | +| `192.168.2.10` | zabbix-1 | `10051` | `10051` | Zabbix Server | +| `192.168.2.10` | zabbix-1 | `10050` | `10050` | Zabbix Agent | +| `192.168.2.10` | zabbix-1 | `8080, 443` | `8080, 443` | Zabbix Web UI | + +#### ■ Database / Metrics (docker-db-1: `192.168.2.50`) + +| ホスト側 | コンテナ側 | サービス名 | +| --- | --- | --- | +| `3306` | `3306` | MySQL / MariaDB | +| `5432` | `5432` | PostgreSQL | +| `8086, 8083` | `8086, 8083` | InfluxDB | +| `9090` | `9090` | Prometheus | +| `6379` | `6379` | Redis | +| `10050` | `10050` | Zabbix Agent | +| `9001` | `9001` | Portainer Agent | + +#### ■ Applications (docker-app-1: `192.168.2.80`) + +| ホスト側 | コンテナ側 | アプリケーション名 / 用途 | +| --- | --- | --- | +| `3090 / 3091` | `3090 / 3091` | Brackly | +| `9000` | `9000` | Portainer UI | +| `1952` | `1935` | RTMP (MediaMTX) | +| `1955` | `8554` | RTSP (MediaMTX) | +| `8888` | `8888` | HLS (MediaMTX) | +| `8889/TCP+UDP` | `8889/TCP+UDP` | WebRTC (MediaMTX) | +| `1957/UDP` | `8890/UDP` | SRT (MediaMTX) | +| `9997` | `9997` | MediaMTX API | +| `1958` | `6379` | Redis (rtmp用) | +| `1959` | `3000` | MediaMTX Admin UI | +| `4000` | `4000` | Gitea Web UI | +| `2222` | `2222` | Gitea SSH | +| `3069` | `3069` | matchzy-auto-tournament | +| `3000` | `3000` | Grafana UI | +| `3100` | `3100` | Loki | +| `2283` | `2283` | Immich Server | +| `2284` | `80` | Immich Web UI | +| `9100` | `9000` | MinIO | +| `5000` | `3000` | Homepage UI | +| `8000` | `8000` | TubeArchivist UI | +| `(expose)` | `6379` | archivist-redis (内部通信) | +| `(expose)` | `9200` | archivist-es (内部通信) | +| `(expose)` | `8080` | ffmpeg API (内部通信) | +| `5100` | `80` | ffmpeg UI | +| `11080` | `80` | Nextcloud | +| `8081` | `80` | Smokeping UI | +| `4200` | `4200` | Space Program Idle | +| `10050` | `10050` | Zabbix Agent | + +#### ■ Gaming / Special (crafty / fr24) + +| 宛先IP | 名称 | ホスト側 | コンテナ側 | 用途 | +| --- | --- | --- | --- | --- | +| `192.168.2.90` | crafty | `8443` | `8443` | Crafty Web UI (HTTPS) | +| `192.168.2.90` | crafty | `25565` | `25565` | Minecraft (TCP) | +| `192.168.2.90` | crafty | `10050` | `10050` | Zabbix Agent | +| `192.168.2.90` | crafty | `9001` | `9001` | Portainer Agent | +| `192.168.2.110` | fr24-feed | `8754` | `8754` | FR24 Feeder UI | +| `192.168.2.110` | fr24-feed | `10050` | `10050` | Zabbix Agent | + +--- + +> **💡 運用上の注意** +> * `docker-app-1` (`.2.80`) にサービスが集中しています。ポートの競合を避けるため、新規構築時はこの表を参照してください。 +> * 内部セグメントは `/20` 設計のため、物理ホストとVM間のルーティング不要で直接通信可能です。 \ No newline at end of file