Erreurs DNSmasq + tailscale/headscale

Bonjour

Jai une instance qui était fonctionnelle ou presque… avec headscale server installé dessus.
Petit problème… à chaque redémarrage, headscale refuse de démarrer. Pas très grave dans la mesure où en cliquant sur le démarrage du service, cela accepte de fonctionner… mais bizarre quand même.
Par contre dnsmasq plante désormais et refuse complètement de se lancer

Voici les logs, merci pour votre aide !
https://paste.yunohost.org/ososiyewum

Bonjour,
Comme tu as viré l’ensemble du template de nouveau topic, je vais supposer que tu tourne sur un windows server 2.4 et que ce problème est totalement normal :jack_o_lantern:

1 Like

Ah oui, j’ai pas été très carré dsl et merci pour le signalement… si j’ai droit à une deuxième chance… voici

Bonjour bonjour

Mon serveur YunoHost

**Matériel: Machine virtuelle gratuite sur oracle cloud. ARM (Ampere1) 24Go RAM 100Go disque
Version de YunoHost: 11.2.5 stable.
J’ai accès à mon serveur : En SSH + Par la webadmin | …
Êtes-vous dans un contexte particulier ou avez-vous effectué des modificiations particulières sur votre instance ? : non

Description du problème

Certains services ne démarrent pas automatiquement :

  • headscale server plante au démarrage du serveur si je fais un reboot, mais il suffit de cliquer sur démarrer le service pour qu’il se lance sans broncher, et ensuite cela fonctionne
    -dnsmasq refuse de démarrer et plante si j’essaie de le lancer manuellement

Pas sûr du tout, mais je me demande si j’ai fait une erreur en essayant d’installer AdGuard sur mon système alors qu’il y avait déjà tailscale (peut être que ça fait trop de services qui touchent au dns?)

Merci!

https://paste.yunohost.org/ososiyewum

1 Like

DNSmasq ne trouve pas l’interface réseau qui doit être créée par Headscale.

Headscale refuse de démarrer. Peux-tu partager ses logs pour comprendre pourquoi ?

1 Like

Je viens de faire un reboot.

Le service headscale fait une erreur au démarrage: hastebin

Le service dsnmasq fait également une erreur au démarrage : hastebin

Si je lance manuellement headscale, il accepte de démarrer : hastebin

Si je tente de lancer dnsmasq une fois que headscale a démarré (et fonctionne), dnsmasq refuse toujours de démarrer : hastebin

EDIT: anonymisation des adresses ip dans les logs

Parfaite investigation, merci.

Problème 1: Je vois que DNSmasq ne trouve pas l’interface tailscale0 même après avoir démarré le service de Headscale.

Que retourne la commande ip -br a après t’être assuré que Headscale tourne ?

Problème 2: J’ai l’impression que parfois la base de donnée n’est pas “lancée” (erreurs avant le redémarrage de 8:13), or la BDD est un simple fichier SQLite, donc ça serait un problème de disque ?
En outre à 8:15 c’est une autre erreur avec la communication avec l’adresse .well-known de Dex.

Mettons de côté la BDD SQLite pour l’instant. Je pense que Headscale essaie parfois de se lancer avant NGINX (qui fait le relais avec Dex). Je n’ai jamais rencontré ce soucis, étrange.

Jouons sur le fichier du service de Headscale.

sudo nano /etc/systemd/system/headscale.service

et modifie le début du fichier pour qu’il ressemble à ça:

[Unit]
Description=Control server for the WireGuard-based VPN
After=network.target
After=dex.service
After=nginx.service

(etc.)

Puis sudo systemctl daemon-reload et redémarre ton serveur pour voir ce que ça donne.

merci!

1- ip -br ? Ca ne donne rien, il me retourne le manuel d’utilisation de la commande ip et les options possibles

2- modification du fichier headscale.service puis reboot : headscale a démarré tout seul ! :slight_smile:

3- dnsmasq ne démarre toujours pas par contre. Même en cliquant manuellement sur démarrer le service : hastebin

ip -br a :wink:

lo UNKNOWN 127.0.0.1/8 ::1/128
enp0s3 UP 10.0.0.179/24 fe80::17ff:fe00:1311/64

Oh, tu dois enregistrer le serveur en tant que client sur Headscale. :slight_smile:

Headscale est juste le coordinateur, ça ne veut pas dire que le serveur qui héberge Headscale se connecte lui-même en tant que client. :sweat:

Suis les étapes standards pour Tailscale, notamment tailscale up --login-server https://<domaine de headscale> etc.

ça me fait penser que

est donc incorrect. :sweat_smile: Headscale coordonne, et le client habituel tailscale fait son job de créer l’interface tailscale0.

Je m’étais posé la question… mais je pensais que le server yuno pouvait justement servir à avoir un rôle de coordination pure, sans lui même être un client.

Et par ailleurs, il n’y a pas d’app tailscale yunohost, cela veut dire qu’il faut installer tailscale depuis Setting up Tailscale on Debian Bullseye · Tailscale Docs ? J’avais une réticence à installer des choses en dehors de yunohost de peur que cela casse des réglages notamment réseau

Je pense que j’ai fait une erreur fondamentale dans le packaging de Headscale en fait. Je ne peux pas te dire “installe et fais tourner tailscale up” avec l’installation d’une config pour DNSmasq par headscale_ynh, tout en disant “c’est optionel, le serveur peut ne pas se connecter au VPN lui-même”.

La solution est en fait plus simple, supprime le fichier /etc/dnsmasq.d/headscale et redémarre dnsmasq.

1 Like

Merveilleux !

J’ai supprimé le fichier en question.
Je viens de faire un reboot, headscale a démarré, dnsmasq a démarré.

Merci pour l’aide super efficace !
Pour info, puisque tu as l’air expérimenté sur headscale/tailscale et pour garder ce fil propre, j’ai créé un nouveau sujet un peu incident Yunohost en tant que client tailscale avec option exit-node

1 Like

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.