Banda Ancha EU

Comunidad de usuarios
de fibra, móvil y ADSL

VPN WireGuard no funciona: Cannot find device "wg0"

Solospam

Llevo todo el día teniendo problemas con mi VPN WireGuard y ahora que llego a casa me encuentro con lo siguiente:

wg-quick@wg0.service - WireGuard via wg-quick(8) for wg0
   Loaded: loaded (/lib/systemd/system/wg-quick@.service; enabled; vendor preset: enabled)
  Drop-In: /etc/systemd/system/wg-quick@.service.d
           └─override.conf
   Active: failed (Result: exit-code) since Tue 2020-10-27 22:02:23 CET; 7min ago
     Docs: man:wg-quick(8)
           man:wg(8)
           https://www.wireguard.com/
           https://www.wireguard.com/quickstart/
           https://git.zx2c4.com/wireguard-tools/about/src/man/wg-quick.8
           https://git.zx2c4.com/wireguard-tools/about/src/man/wg.8
 Main PID: 995 (code=exited, status=1/FAILURE)

Oct 27 22:02:22 b systemd[1]: Starting WireGuard via wg-quick(8) for wg0...
Oct 27 22:02:23 b wg-quick[995]: [#] ip link add wg0 type wireguard
Oct 27 22:02:23 b wg-quick[995]: Error: Unknown device type.
Oct 27 22:02:23 b wg-quick[995]: Unable to access interface: Protocol not supported
Oct 27 22:02:23 b wg-quick[995]: [#] ip link delete dev wg0
Oct 27 22:02:23 b wg-quick[995]: Cannot find device "wg0"
Oct 27 22:02:23 b systemd[1]: wg-quick@wg0.service: Main process exited, code=exited, status=1/FAILURE
Oct 27 22:02:23 b systemd[1]: wg-quick@wg0.service: Failed with result 'exit-code'.
Oct 27 22:02:23 b systemd[1]: Failed to start WireGuard via wg-quick(8) for wg0.

¿Alguna idea de por donde tirar? Está claro que el sistema tiene problemas pero no se detectar las posibles soluciones. He buscado por Google pero ni idea de como levantar nuevamente el wg0.

Cualquier ayuda será bienvenida.

BocaDePez
BocaDePez
1

modprobe wireguard

skgsergio
1

Como dice el BocaDePez si te fijas pone:

Oct 27 22:02:23 b wg-quick[995]: [#] ip link add wg0 type wireguard
Oct 27 22:02:23 b wg-quick[995]: Error: Unknown device type.

no reconoce el tipo de interfaz wireguard, eso es probablemente xq el modulo de kernel no está cargado. Probaría como te dice con sudo modprobe wireguard y si te da error es que:

  1. Has actualizado el kernel, el anterior (el vivo) ha sido borrado y no puede cargar el módulo (la mayoría de las distros conservan kernels anteriores, pero Arch Linux por ejemplo no, mas de una vez he actualizado no he reiniciado y luego conectar un raton USB no ha funcionado)
  2. Has actualizado el kernel, has reiniciado y el modulo de kernel no se ha actualizado (si en tu distro viene por separado y no incluido en el paquete de kernel).
🗨️ 4
Solospam

Si he realiado una actualización desde Open Media Vault que se está ajecutando en el mismo cacharro.

Ejecutado el comando se ve que la he liado parda

$ sudo modprobe wireguard
modprobe: FATAL: Module wireguard not found in directory /lib/modules/5.4.72-v7l+

Existe alguna forma de reparar el desaguisado

Gracias!

🗨️ 3
vukits

Desinstala wireguard y vuelve a reinstalarlo, a ver si salta DKMS y recompila el módulo

fuente

PD: creo que ya es hora de que instales Debian GNU/Linux en tu ordenador y aprendas a compilar el kernel, por lo menos… Te faltan conocimientos basicos de GNU/Linux

🗨️ 1
License2Harm

Como te pasas. No hace falta saber recompilar el kernel, y mucho menos tener que usar una distro concreta, para solucionar el problema. Con reinstalar wireguard, como bien le indicas al principio, se compilará el módulo para su kernel actual y probablemente se arregle todo

skgsergio
1

Hmmm, no tengo experiencia con OMV pero si te lo gestiona el a saber como lo tienen montado… supongo que será una extension o algo, te recomendaría reinstalarla a ver que pasa…

O por el contrario si lo has instalado tu manualmente dentro del cacharro que sea y OMV gestiona su propio kernel lo mismo en el nuevo que han metido no va el modulo de wireguard por lo que sea… es lo que tiene hacer cosas manuales en sistemas pensados para gestionar desde ellos el 100% de las cosas…

Te recomendaria que OMV siendo basado en Debian si mal no recuerdo intentes hacer apt install wireguard-dkms y si ya estaba instalado lo mismo dkms build -m wireguard -k 5.4.72-v7l+ ayuda…

No soy fan de las cosas estilo OMV pero si las usas hay que evitar hacer cosas mauales.

Solospam
1

Problema solucionado desinstalando pivpn pivpn -u y volviendo a instalarla curl -L https://install.pivpn.io | bash

Lo malo es volver a dar de alta todos los usuarios, pero eso es mal menor.

Gracias por la ayuda.

🗨️ 2
vukits

Esto te va a pasar cada vez que actualices el kernel.

Para la próxima vez, aprende a invocar DKMS (como ha dicho skgsergio)

(por eso a mi me gusta que el kernel venga ya con todos los drivers necesarios… para no tirar de DKMS)…

🗨️ 1
Solospam

A ver si mikrotik pone pronto WireGuard (de momento solo en beta) y así sólo dependo del router y no de la raspi para estas cosas y queda exclusivamente para OMV

Solospam

Ahora cada x tiempo me cierra la sesión, perdiendo conexión con la VPN

imagen.webp

A que puede ser debido?

Gracias

🗨️ 4
vukits

pega aqui los logs de wireguard.

seguro que están guardados en algún fichero

🗨️ 3
Solospam

Log según el journalctl

root@b:/home/pi# journalctl -u wg-quick@wg0
-- Logs begin at Wed 2020-10-28 14:49:41 CET, end at Wed 2020-10-28 17:11:26 CET
Oct 28 14:50:03 b systemd[1]: Starting WireGuard via wg-quick(8) for wg0..
Oct 28 14:50:03 b wg-quick[982]: [#] ip link add wg0 type wireguard
Oct 28 14:50:03 b wg-quick[982]: [#] wg setconf wg0 /dev/fd/63
Oct 28 14:50:03 b wg-quick[982]: [#] ip -4 address add 192.168.0.1/24 dev wg0
Oct 28 14:50:04 b wg-quick[982]: [#] ip link set mtu 1420 up dev wg0
Oct 28 14:50:04 b systemd[1]: Started WireGuard via wg-quick(8) for wg0.
Oct 28 16:16:46 b systemd[1]: Stopping WireGuard via wg-quick(8) for wg0..
Oct 28 16:16:46 b wg-quick[8618]: [#] ip link delete dev wg0
Oct 28 16:16:46 b systemd[1]: wg-quick@wg0.service: Succeeded.
Oct 28 16:16:46 b systemd[1]: Stopped WireGuard via wg-quick(8) for wg0.
Oct 28 16:16:46 b systemd[1]: Starting WireGuard via wg-quick(8) for wg0..
Oct 28 16:16:46 b wg-quick[8635]: [#] ip link add wg0 type wireguard
Oct 28 16:16:46 b wg-quick[8635]: [#] wg setconf wg0 /dev/fd/63
Oct 28 16:16:46 b wg-quick[8635]: [#] ip -4 address add 192.168.0.1/24 dev wg
Oct 28 16:16:46 b wg-quick[8635]: [#] ip link set mtu 1420 up dev wg0
Oct 28 16:16:47 b systemd[1]: Started WireGuard via wg-quick(8) for wg0.
Oct 28 16:21:50 b systemd[1]: Stopping WireGuard via wg-quick(8) for wg0..
Oct 28 16:21:51 b wg-quick[9033]: [#] ip link delete dev wg0
Oct 28 16:21:51 b systemd[1]: wg-quick@wg0.service: Succeeded.
Oct 28 16:21:51 b systemd[1]: Stopped WireGuard via wg-quick(8) for wg0.
Oct 28 16:21:51 b systemd[1]: Starting WireGuard via wg-quick(8) for wg0..
Oct 28 16:21:51 b wg-quick[9051]: [#] ip link add wg0 type wireguard
Oct 28 16:21:51 b wg-quick[9051]: [#] wg setconf wg0 /dev/fd/63
Oct 28 16:21:51 b wg-quick[9051]: [#] ip -4 address add 192.168.0.1/24 dev wg
Oct 28 16:21:51 b wg-quick[9051]: [#] ip link set mtu 1420 up dev wg0
Oct 28 16:21:51 b systemd[1]: Started WireGuard via wg-quick(8) for wg0.
Oct 28 16:22:09 b systemd[1]: Stopping WireGuard via wg-quick(8) for wg0..
Oct 28 16:22:09 b wg-quick[9144]: [#] ip link delete dev wg0
Oct 28 16:22:10 b systemd[1]: wg-quick@wg0.service: Succeeded.
Oct 28 16:22:10 b systemd[1]: Stopped WireGuard via wg-quick(8) for wg0.
Oct 28 16:22:10 b systemd[1]: Starting WireGuard via wg-quick(8) for wg0..
Oct 28 16:22:10 b wg-quick[9159]: [#] ip link add wg0 type wireguard
Oct 28 16:22:10 b wg-quick[9159]: [#] wg setconf wg0 /dev/fd/63
Oct 28 16:22:10 b wg-quick[9159]: [#] ip -4 address add 192.168.0.1/24 dev wg
Oct 28 16:22:10 b wg-quick[9159]: [#] ip link set mtu 1420 up dev wg0
Oct 28 16:22:10 b systemd[1]: Started WireGuard via wg-quick(8) for wg0.
Oct 28 16:22:29 b systemd[1]: Stopping WireGuard via wg-quick(8) for wg0..
Oct 28 16:22:29 b wg-quick[9218]: [#] ip link delete dev wg0
Oct 28 16:22:30 b systemd[1]: wg-quick@wg0.service: Succeeded.
Oct 28 14:50:03 b systemd[1]: Starting WireGuard via wg-quick(8) for wg0...
Oct 28 14:50:03 b wg-quick[982]: [#] ip link add wg0 type wireguard
Oct 28 14:50:03 b wg-quick[982]: [#] wg setconf wg0 /dev/fd/63
Oct 28 14:50:03 b wg-quick[982]: [#] ip -4 address add 192.168.0.1/24 dev wg0
Oct 28 14:50:04 b wg-quick[982]: [#] ip link set mtu 1420 up dev wg0
Oct 28 14:50:04 b systemd[1]: Started WireGuard via wg-quick(8) for wg0.
Oct 28 16:16:46 b systemd[1]: Stopping WireGuard via wg-quick(8) for wg0...
Oct 28 16:16:46 b wg-quick[8618]: [#] ip link delete dev wg0
Oct 28 16:16:46 b systemd[1]: wg-quick@wg0.service: Succeeded.
Oct 28 16:16:46 b systemd[1]: Stopped WireGuard via wg-quick(8) for wg0.
Oct 28 16:16:46 b systemd[1]: Starting WireGuard via wg-quick(8) for wg0...
Oct 28 16:16:46 b wg-quick[8635]: [#] ip link add wg0 type wireguard
Oct 28 16:16:46 b wg-quick[8635]: [#] wg setconf wg0 /dev/fd/63
Oct 28 16:16:46 b wg-quick[8635]: [#] ip -4 address add 192.168.0.1/24 dev wg0
Oct 28 16:16:46 b wg-quick[8635]: [#] ip link set mtu 1420 up dev wg0
Oct 28 16:16:47 b systemd[1]: Started WireGuard via wg-quick(8) for wg0.
Oct 28 16:21:50 b systemd[1]: Stopping WireGuard via wg-quick(8) for wg0...
Oct 28 16:21:51 b wg-quick[9033]: [#] ip link delete dev wg0
Oct 28 16:21:51 b systemd[1]: wg-quick@wg0.service: Succeeded.
Oct 28 16:21:51 b systemd[1]: Stopped WireGuard via wg-quick(8) for wg0.
Oct 28 16:21:51 b systemd[1]: Starting WireGuard via wg-quick(8) for wg0...
Oct 28 16:21:51 b wg-quick[9051]: [#] ip link add wg0 type wireguard
Oct 28 16:21:51 b wg-quick[9051]: [#] wg setconf wg0 /dev/fd/63
Oct 28 16:21:51 b wg-quick[9051]: [#] ip -4 address add 192.168.0.1/24 dev wg0
Oct 28 16:21:51 b wg-quick[9051]: [#] ip link set mtu 1420 up dev wg0
Oct 28 16:21:51 b systemd[1]: Started WireGuard via wg-quick(8) for wg0.
Oct 28 16:22:09 b systemd[1]: Stopping WireGuard via wg-quick(8) for wg0...
Oct 28 16:22:09 b wg-quick[9144]: [#] ip link delete dev wg0
Oct 28 16:22:10 b systemd[1]: wg-quick@wg0.service: Succeeded.
Oct 28 16:22:10 b systemd[1]: Stopped WireGuard via wg-quick(8) for wg0.
Oct 28 16:22:10 b systemd[1]: Starting WireGuard via wg-quick(8) for wg0...
Oct 28 16:22:10 b wg-quick[9159]: [#] ip link add wg0 type wireguard
Oct 28 16:22:10 b wg-quick[9159]: [#] wg setconf wg0 /dev/fd/63
Oct 28 16:22:10 b wg-quick[9159]: [#] ip -4 address add 192.168.0.1/24 dev wg0
Oct 28 16:22:10 b wg-quick[9159]: [#] ip link set mtu 1420 up dev wg0
Oct 28 16:22:10 b systemd[1]: Started WireGuard via wg-quick(8) for wg0.
Oct 28 16:22:29 b systemd[1]: Stopping WireGuard via wg-quick(8) for wg0...
Oct 28 16:22:29 b wg-quick[9218]: [#] ip link delete dev wg0
Oct 28 16:22:30 b systemd[1]: wg-quick@wg0.service: Succeeded.
Oct 28 16:22:30 b systemd[1]: Stopped WireGuard via wg-quick(8) for wg0.
Oct 28 16:22:30 b systemd[1]: Starting WireGuard via wg-quick(8) for wg0...
Oct 28 16:22:30 b wg-quick[9239]: [#] ip link add wg0 type wireguard
Oct 28 16:22:30 b wg-quick[9239]: [#] wg setconf wg0 /dev/fd/63
Oct 28 16:22:30 b wg-quick[9239]: [#] ip -4 address add 192.168.0.1/24 dev wg0
Oct 28 16:22:30 b wg-quick[9239]: [#] ip link set mtu 1420 up dev wg0
Oct 28 16:22:30 b systemd[1]: Started WireGuard via wg-quick(8) for wg0.
Oct 28 16:24:23 b systemd[1]: Stopping WireGuard via wg-quick(8) for wg0...
Oct 28 16:24:23 b wg-quick[9461]: [#] ip link delete dev wg0
Oct 28 16:24:23 b systemd[1]: wg-quick@wg0.service: Succeeded.
Oct 28 16:24:23 b systemd[1]: Stopped WireGuard via wg-quick(8) for wg0.
Oct 28 16:24:23 b systemd[1]: Starting WireGuard via wg-quick(8) for wg0...
Oct 28 16:24:23 b wg-quick[9479]: [#] ip link add wg0 type wireguard
Oct 28 16:24:23 b wg-quick[9479]: [#] wg setconf wg0 /dev/fd/63
Oct 28 16:24:23 b wg-quick[9479]: [#] ip -4 address add 192.168.0.1/24 dev wg0
Oct 28 16:24:23 b wg-quick[9479]: [#] ip link set mtu 1420 up dev wg0
Oct 28 16:24:24 b systemd[1]: Started WireGuard via wg-quick(8) for wg0.
Oct 28 16:26:49 b systemd[1]: Stopping WireGuard via wg-quick(8) for wg0...
Oct 28 16:26:49 b wg-quick[9728]: [#] ip link delete dev wg0
Oct 28 16:26:50 b systemd[1]: wg-quick@wg0.service: Succeeded.
Oct 28 16:26:50 b systemd[1]: Stopped WireGuard via wg-quick(8) for wg0.
Oct 28 16:26:50 b systemd[1]: Starting WireGuard via wg-quick(8) for wg0...
Oct 28 16:26:50 b wg-quick[9745]: [#] ip link add wg0 type wireguard
Oct 28 16:26:50 b wg-quick[9745]: [#] wg setconf wg0 /dev/fd/63
Oct 28 16:26:50 b wg-quick[9745]: [#] ip -4 address add 192.168.0.1/24 dev wg0
Oct 28 16:26:50 b wg-quick[9745]: [#] ip link set mtu 1420 up dev wg0
Oct 28 16:26:50 b systemd[1]: Started WireGuard via wg-quick(8) for wg0.
🗨️ 2
vukits

Ahí, algo dice que Wireguard detecta que la sesión está caída, y la reinicia.

Asegurate de tener bien configurado el intervalo de KeepAlive … si necesario, rebajalo…

SI usas smartphone, ten en cuenta los ajustes de ahorro de energía

🗨️ 1
Solospam

Otra vez con problemas en el servidor Wireguard.

En la raspi tengo internet, ifconfig wg0 parece que responde, modprobe wireguard sale limpio, ping a la IP de wireguard funciona…

No se que más pruebas puedo hacer, aparentemente todo funciona - wireguard hace handshake en iOS pero no navega -.

Alguna idea?

Gracias de antemano