tun
ArchLinux ボックスにモジュールをロードできません。OpenVPN で接続しようとしていますが、ログには次のように表示されます。
nm-openvpn[6662]: Note: Cannot open TUN/TAP dev /dev/net/tun: No such device (errno=19)
lsmod | grep tun
何も返しません:
実行した場合:
sudo modprobe tun
失敗が返されますが、エラー メッセージは表示されず、lsmod にはまだ がありません。にtun
があるため、モジュールは存在しているようです。tun.ko.gz
/lib/modules/
他に何を試したらいいのか本当に分かりません。
答え1
この回答は少し遅いかもしれませんが、私自身もまさに説明どおりの問題に遭遇しました。
OpenVPN を実行すると次の結果が生成されます。
Note: Cannot open TUN/TAP dev /dev/net/tun: No such file or directory (errno=2)
実行するとtunctl
次のようになります:
Failed to open '/dev/net/tun' : No such file or directory
このコマンドには出力がありませんでした:
lsmod | grep tun
次の方法でモジュールを追加しようとする場合tun
:
modprobe tun
modprobe
失敗エラーコード (1) で終了し、何も変わりません。
tun モジュールをアクティブ化する別の方法を見つけましたinsmod
。まず、次のコマンドでモジュールを見つけます。
find /lib/modules/ -iname 'tun.ko.gz'
次に、返されたパスで insmod を使用します (一致するものは 1 つだけです)。次に例を示します。
insmod /lib/modules/3.6.9-1-ARCH/kernel/drivers/net/tun.ko.gz
私の場合、そのコマンドを実行するとうまくいき、tunctl
その後 OpenVPN は正常に動作しました。
答え2
OVH Cloud VPS で openvpn を実行しようとしたときに、同様の問題が発生しました。openvpn は、TUN インターフェイスが見つからないというエラーを表示します。
modprobe は常にモジュールが見つからないことを返します:
$ sudo modprobe tun
FATAL: Module tun not found.
最後に、tun はモジュールではなくカーネルに組み込まれていることがわかったので、解決するために、不足している dir と nod を作成しました。
$ sudo mkdir /dev/net
$ sudo mknod /dev/net/tun c 10 200
そして、openvpn は tun デバイスを見つけて使用できるようになります。
注意すべき点は、tun はモジュールではないため、modprobe は引き続きエラーを返すということです。
$ sudo modprobe tun
FATAL: Module tun not found.
答え3
Arch Linuxでは、networkmanager-vpnc
またはNetworkManager-vpnc
パッケージをインストールすると問題が解決します。
答え4
/lib/modules/.../modules.alias
私のに行が含まれていないという問題がありました
alias char-major-10-200 tunode_tunnel
したがって、 を実行して のどこかに がmknod /dev/net/tun
あっても、正しい呪文がない限り読み込まれません。tun.ko
/lib/modules/...
modules.alias