Systemd (e chi lo ha concepito) deve morire, e immagino di non essere il solo a pensarlo. Evidentemente qualcuno un bel giorno si è svegliato male e ha deciso di condividere il dolore con altri utenti, decidendo di sostituire un servizio semplice, stabile e consolidato da anni (ifupdown), con qualcosa apparentemente innovativo (netplan). A ma fa solo venire voglia di ripristinare le torture medievali. Come si può notare dal file /etc/network/interfaces, già qualcuno ha previsto che netplan potesse essere odiato, tanto che le prime righe di commento sono:
- # ifupdown has been replaced by netplan(5) on this system. See
- # /etc/netplan for current configuration.
- # To re-enable ifupdown on this system, you can run:
- # sudo apt install ifupdown
Dopo questa chiarissima introduzione, passiamo ai comandi (da eseguire tramite sudo, o da root) per capire come disabilitare netplan e ripristinare ifupdown:
- # apt-get update
- # apt-get install ifupdown
- # systemctl stop systemd-networkd.socket systemd-networkd networkd-dispatcher systemd-networkd-wait-online
- # systemctl disable systemd-networkd.socket systemd-networkd networkd-dispatcher systemd-networkd-wait-online
- # systemctl mask systemd-networkd.socket systemd-networkd networkd-dispatcher systemd-networkd-wait-online
- # apt-get --assume-yes purge nplan netplan.io
A questo punto aprire /etc/network/interfaces ed inserire la configurazione di rete, come ad esempio quella che segue:
- #allow-hotplug eth0
- auto eth0
- iface eth0 inet static
- address 192.168.1.100
- netmask 255.255.255.0
- #broadcast 192.168.1.255
- gateway 192.168.5.1
- #dns-nameservers 8.8.8.8
oppure nel caso di dhcp
- #allow-hotplug eth0
- auto eth0
- iface eth0 inet dhcp
Per quanto riguarda la configurazione ipv6, la sintassi è la stessa ma bisogna cambiare inet con inet6.
Come si può vedere, la riga dns-nameservers (che in realtà sarebbe utilissima), purtroppo funziona solo con resolvconf (o similari), altro servizio che detesto. Esiste un bellissimo file in /etc/resolv.conf, ma per poterlo usare bisogna fare anche qui un pò di pulizia:
- apt autoremove --purge resolvconf
- cd /etc/
- mv resolv.conf resolv.conf.orig
- nano /etc/resolv.conf
e scrivere il seguente contenuto (o altri dns secondo esigenze). Non entro nel merito dei parametri search dominio.tld in quanto non oggetto di interesse di questo post.
- #search dominio.tld
- nameserver 8.8.8.8
- nameserver 1.1.1.1
Un bel CTRL+o (per salvare), INVIO, e CTRL+x (per uscire) e il gioco è fatto.
Nel caso non vi serva il wi-fi, aggiungerei anche la pulizia di network-manager, altro servizio che spesso non riconosce (o gestisce male) la connessione in uso.
Con l’occasione segnalo un comodo tool per analizzare le caratteristiche della scheda di rete in uso e lo stato della connessione:
- apt install ethtool
- ethtool eth0
Ora incrocia le dita, riavvia il pc e goditi una connessione stabile.