J'ai un petit routeur que je développe sur un bureau Ubuntu 18.04 et lorsque je le démarre sans connexion Ethernet, Netplan ne semble pas attribuer l'IP fixe (du côté LAN). Le côté WAN est connecté avec DHCP. L'interface LAN eth0 est celle sur laquelle isc-dhcp-server fonctionne.
Problème : isc-dhcp-server se plante au démarrage car aucune adresse IP n'existe sur l'interface eth0.
Si je pense manuellement avec un appareil connecté sur eth0, tout fonctionne bien. Donc l'IP statique fonctionne lorsque quelque chose est connecté à eth0.
Comment faire pour que 192.168.10.1 soit assigné à eth0 (enp2s0 sur ce système) même s'il n'est pas branché ?
J'ai un seul fichier .YAML comme suit :
# Let NetworkManager manage all devices on this system
network:
ethernets:
enp2s0:
dhcp4: no
addresses:
- 192.168.10.1/24
nameservers:
addresses:
- 8.8.8.8
- 1.1.1.1
search: []
enp3s0:
dhcp4: yes
version: 2
renderer: NetworkManager
Sinon, existe-t-il un moyen simple de lancer (ou de redémarrer) isc-dhcp-server en fonction d'un déclencheur de connexion de l'interface ?
Il s'agissait d'une question très similaire à celle posée ci-dessous, mais elle n'a pas été fermée ou validée par le PO... et je n'ai pas réussi à trouver un moyen d'y parvenir. Toute aide est la bienvenue.
Question similaire non classée
Mise à jour 8/3/19 : Comme indiqué ci-dessus concernant le redémarrage du serveur, j'ai constaté que l'état du câble peut être trouvé de manière fiable dans /sys/class/net/enp2s0/carrier -- la valeur dans ce fichier étant 0 lorsqu'il est déconnecté et 1 lorsqu'il est connecté.
Il semble donc tout à fait logique d'avoir un script qui testerait cette valeur - si la valeur est zéro ne faites rien, si la valeur change de 0 à 1 alors exécutez une commande, et enfin si la valeur reste à 1 ou change de 1 à 0 ne faites rien. Comment pourrais-je écrire un script bash pour accomplir ceci ?
Mise à jour 8/14/19 : Trouvé une résolution en suivant la réponse ci-dessous - mais assurez-vous que vous avez ifupdown installé - mon système ne l'a pas fait. Je n'ai pas poursuivi l'idée script car la solution pour obtenir l'IP statique semble fiable.