2025年9月のこのスレッドでの主な誤りは、次の解釈でした。 modprobe tun 失敗したことを、ZimaOSにはTUNサポートがまったくない証拠と解釈していました。Zima-Jerryはその前提を訂正しました。ソースビルドではTUNはカーネルに直接コンパイルされていたため、個別の tun.ko ファイルが /lib/modules 用 modprobe ロードするために。
しかし、ユーザーが指定したDockerサブネットルーターのワークフローでは、Tailscaleが想定するデバイスおよびモジュールの動作が依然として必要でした。そのためIceWhaleは、ZimaOS 1.5.0でTUNがロード可能なカーネルモジュールになるようパッケージ構成を変更しました。元の投稿者は9月29日に再テストし、動作するようになったと返信しました。
ユーザーは拠点間Tailscaleサブネットルーターを必要としていました
ソースに記載された設計では、メキシコとウルグアイの2つの物理拠点を接続し、各拠点のすべてのエンドポイントにTailscaleをインストールせずに、各拠点のローカルデバイスがTailscale経由で通信できるようにすることを目指していました。
これは単なる「ZimaOSダッシュボードへのリモートアクセス」ではなく、サブネットルーターの用途です。サブネットルーターは、tailnetと別のIPサブネットの間でパケットを転送する必要があります。
modprobeでtunモジュールファイルが見つからないと報告された
ユーザーは特権付きのTailscaleコンテナを実行し、次の結果を確認しました。
modprobe: FATAL: Module tun not found in directory /lib/modules/6.12.25
また、 tun.ko ファイルを確認しましたが、モジュール一覧の確認結果にTUNのエントリはありませんでした。
IceWhaleはTUNがカーネルに直接コンパイルされていると説明しました
Zima-Jerryの最初の公式回答は明確でした。TUN機能はカーネルに直接組み込まれているため、通常のモジュールファイルとしては表示されません /lib/modules/6.12.25.
これはLinuxカーネルの違いです。組み込みとして構成された機能は、次の一覧に表示されなくても利用できます lsmod またはロード可能であること modprobe.
組み込みサポートだけでは、ソースに記載されたコンテナのワークフローを完全には解決できませんでした
元の投稿者は、コンテナが依然としてユーザー空間モードになり、必要としていたホストと同等のサブネットルーター動作を提供できないと返信しました。特に、TUNをモジュール方式で公開できるかどうかを尋ねました。
Zima-Jerryは、これは次のバージョンで調整できると述べました。
ZimaOS 1.5.0でTUNがロード可能なモジュールに変更された
9月28日、Zima-Jerryは新しい1.5.0リリースで、 tun.ko カーネルモジュールになったため、ユーザーに再テストを依頼しました。
元の投稿者は翌日、「ありがとうございます。これで動作しました」と返信しました。
これはソースで確認された解決策であり、このスレッドで最も重要な結論です。
Tailscaleのユーザー空間ネットワークは別の動作モードです
現在のTailscaleドキュメントでは、ユーザー空間ネットワークを使用すれば、TUNデバイスなしでコンテナを実行できると説明されています。そのモードでは、 tailscaled 通常のLinuxトンネルインターフェースとして動作するのではなく、ユーザー空間のネットワークスタック/プロキシを介して動作します。
カーネルTUNが実際に必要かどうかを判断する際は、Tailscaleの現在のユーザー空間ネットワークモデルを使用してください。
現在のTailscaleはカーネルモードまたはユーザー空間モードでサブネットをルーティングできます
Tailscaleの現在のドキュメントでは、カーネルモードとユーザー空間/netstackモードの両方によるサブネットルーティングについて説明しています。Linuxのカーネルモードでは通常のパケット転送動作が維持され、一般にパフォーマンスも向上します。ユーザー空間モードでもルーティングできますが、独自のネットワークスタック内で対応するトラフィックを終端して再生成します。
Dockerの場合、現在のTailscaleのドキュメントにも記載されています。 TS_USERSPACE はデフォルトで有効ですが、カーネルモードでは /dev/net/tun 必要なケイパビリティ。
動作するTUNデバイスだけではサブネットルーターの設定全体を満たしません
Linuxのサブネットルーターには、IPフォワーディング、広告するルート、Tailscale管理コンソールでのルート承認、適切なtailnetアクセスルールも必要です。コンテナが正常に作成しても tailscale0 それだけでは、リモートLANデバイスがその経由でルーティングできることを意味しません。
ZimaOSのカーネル/デバイス層が機能した後は、現在のTailscaleサブネットルーターの手順に従ってください。
1.4.xの「tun.koがない」という診断を現在のZimaOSに適用しないでください
ソース自体がバージョンの境界を示しています。このファイルが存在しなかったのは1.4.xのカーネルのビルド方法が原因であり、ZimaOS 1.5.0ではTUN機能がモジュールに変更されました。現在のZimaOSはそのリリースをはるかに超えています。
現在の障害については、2025年のカーネルパッケージ問題が再発したと決めつけるのではなく、現在のコンテナ設定、TUNデバイスの利用可能性、ユーザー空間モード/カーネルモード、IPフォワーディング、ルートの承認を確認してください。
Tailscale TUN FAQ
modprobe tunの失敗は、ZimaOSにTUNサポートがないことの証明になりましたか?
いいえ。IceWhaleによると、TUNは独立したモジュールとして提供されるのではなく、ソースカーネルに直接組み込まれました。
ZimaOS 1.5.0では何が変更されましたか?
Zima-Jerryの発言 tun.ko ロード可能なカーネルモジュールになりました。
元の投稿者は、新しいバージョンが動作したことを確認しましたか?
はい。1.5.0への変更後に再テストし、動作していると述べました。
