位置づけ

routerd は、設定から理解でき、実行時の状態から説明できるルーターを作るためのローカル制御プレーンです。
routerd は、ネットワーク OS 全体の置き換えではありません。多数のルーターを外側から所有するクラウドコントローラーでもありません。各ルーターのホスト上で動き、型付きの YAML リソースを、ホストのネットワーク、サービス、経路、トンネル、ファイアウォール、ログ、状態へ変換します。
重視すること
routerd は、次のような運用を重視します。
- git で管理できる宣言型のルーター設定
- ホスト型コントローラーに依存しないローカル運用
- 生成したホスト成果物の、明示的な所有関係
- 隠れたデーモン状態ではなく、イベントで説明できる状態
- 危険な変更の前に行う、管理経路の確認
- 経路・トンネル・ファイアウォールの判断理由を追える観測性
主な対象は、ホームラボ、小規模オフィス、Proxmox VE や KVM を使う開発者、そして手書きの Linux ルータースクリプトを再現可能な仕組みに置き換えたい人です。
カバーする範囲
| 領域 | 例 |
|---|---|
| WAN 接続 | DHCPv4、DHCPv6-PD、DHCPv6 情報要求、PPPoE |
| IPv4 移行 | DS-Lite、NAT44、多段 WAN フォールバック |
| LAN サービス | DHCPv4、DHCPv6、RA、DNS、NTP |
| 経路 | 静的経路、ポリシー経路、EgressRoutePolicy、ヘルスチェック |
| セキュリティ | 3 ロールのファイアウォール、ゲストモード、拒否ログ |
| オーバーレイ | WireGuard、Tailscale 連携、VXLAN の土台、VRF |
| 運用 | Web 管理画面、routerctl、OpenTelemetry、ログストア |
| 初期構築 | パッケージ、sysctl プロファイル、systemd ユニット、ライブ ISO |
routerd が扱う範囲は、両端がかなり離れています。
- 仮想 SDN / VNET 間のルーティング: Proxmox VE SDN、WireGuard オーバーレイ、VRF、VXLAN 実験、ラボ用のポリシー経路をつなぐルーター VM です。
- ディスクレス PC ルーター: 小型 x86 mini PC がライブ ISO から起動し、USB から
router.yamlを復元し、ログを RAM に保持し、物理 LAN を提供します。
この両端を同じ設定問題として扱うルータープロジェクトは多くありません。routerd は、ここを同じ問題として扱います。違いは主に生成されるホスト成果物であって、意図のモデルではありません。
範囲が広いことには意味があります。ルーターの障害は、機能どうしの境界で起きやすいからです。DNS の選択が DHCPv6 の情報オプションに依存することもあれば、DS-Lite トンネルが特定の上流でしか解決できない AFTR レコードに依存することもあります。経路は、ヘルスチェックが成功してからプライマリになるべきです。routerd は、こうした関係を 1 つのリソースグラフに置きます。
シェルスクリプトとの違い
シェルスクリプトは始めやすい一方で、後から監査しにくくなります。「どのコマンドを実行したか」は分かっても、「いま存在すべき状態」が残らないためです。
routerd は、望ましい状態を YAML に置き、観測した状態を保存し、イベントを発行します。結果は API・CLI・Web 管理画面から確認でき、差分、世代、実トラフィックの調査を進めやすくなります。
アプライアンスファームウェアとの違い
アプライアンスのファームウェアは、用途が UI に合う場合は便利です。一方で、DS-Lite、PPPoE フォールバック、ローカル DNS、独自のファイアウォール、OpenTelemetry、ラボ用オーバーレイなどを細かく組み合わせると難しくなります。
routerd は、それらをリソースとして扱います。UI は読み取りと調査のためにあり、設定変更は CLI と YAML を正とします。
Kubernetes 型コントローラーとの違い
routerd は、リソースとコントローラーの考え方を借りています。ただし、クラスターは必要ありません。境界はホストであり、調整(リコンサイル)の対象はカーネル、ローカルデーモン、ローカルファイルです。
この形により、家庭用ルーターとして扱える小ささを保ちながら、DHCP、DNS、トンネル、ヘルスチェック、経路、ファイアウォールログ、テレメトリをイベント駆動で連携できます。
非目標
routerd は、現時点では次を目指しません。
- ホスト型 SDN コントローラー
- リモートプラグインのマーケットプレイス
- 汎用のファイアウォール言語
- すべてのエンタープライズルーター機能の置き換え
- GUI 優先の設定システム
routerd は、広いクリック式の管理画面よりも、明示的な YAML、ローカル制御、質の高い運用情報を重視します。