OpenVPN et résolu par systemd


9

Comment utilise-t-on le DNS poussé via un serveur openvpn avec résolu par systemd?

Avant de décider de «mettre à niveau» vers systemd-networkd. Je pourrais utiliser une variante du script openvpn-resolv-conf pour appeler resolvconf pour gérer les entrées dans /etc/resolv.conf lors de l'établissement réussi d'un tunnel vpn.

Cela me permettrait de résoudre les noms sur l'extrémité distante du tunnel vpn.

Maintenant que systemd-resolution gère /run/systemd/resolved/resolv.conf, est-il possible d'ajouter automatiquement DNS poussé via une connexion openvpn à la liste des serveurs de noms utilisés pour la résolution?

Réponses:



2

Edit : à ce jour, cette solution est pour la plupart obsolète. Les utilisateurs de versions plus récentes de systemd doivent se référer à la solution proposée par Piotr Dobrogost.

L'astuce consiste à créer un fichier de configuration réseau temporaire avec des paramètres DNS, puis à redémarrer systemd-networkpour qu'il applique les paramètres DNS globaux.

J'ai écrit un script modifié qui fait exactement cela. Vous pouvez le vérifier ici: update-systemd-network.sh


Je trouve qu'il y a une condition de concurrence avec la création de routes poussées via la configuration openvpn au redémarrage de systemd-networkd. Cependant, au lieu de créer une nouvelle configuration réseau et de redémarrer, systemd-networkil est possible de créer un fichier très similaire /run/systemd/resolved-conf.d/, puis de redémarrer, systemd-resolvedce qui semble fonctionner
sw1nn

On dirait que les fonctionnalités ci-dessus dans SystemD-Resolution ont été ajoutées en 229 après ma question d'origine.
sw1nn

Selon @grawity de #systemd - la bonne façon de le faire fonctionner est d'appeler org.freedesktop.resolve1.Manager.SetLinkDNS()via DBus
Piotr Dobrogost
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.