Tutoriel de configuration du réseau Netplan pour les débutants
- 4794
- 930
- Clara Nguyen
Netplan est un utilitaire développé par Canonical, la société derrière Ubuntu. Il fournit une abstraction de configuration du réseau sur le système «backend» actuellement pris en charge (ou «rendu» dans la terminologie NetPlan): réseau et Gestionnaire de réseau. À l'aide de NetPlan, les interfaces réseau physiques et virtuelles sont configurées via yaml Fichiers qui sont traduits en configurations compatibles avec le backend sélectionné.
Sur Ubuntu 20.04 NetPlan remplace la méthode traditionnelle de configuration des interfaces réseau à l'aide du / etc / réseau / interfaces
déposer; Il vise à rendre les choses plus faciles et plus centralisées (l'ancienne façon de configurer les interfaces peut encore être utilisée: consultez notre article sur la façon de changer de réseau vers / etc / réseau / interfaces sur Ubuntu 20.04 Focal Fossa Linux). Dans cet article, nous apprendrons les principes de base derrière l'utilitaire et, comme exemple, comment nous pouvons l'utiliser pour configurer une adresse IPv4 statique pour une interface réseau.
Dans ce tutoriel, vous apprendrez:
- La structure de base des fichiers de configuration YAML utilisés par NetPlan
- Comment créer une règle simple pour affecter une IP statique à une interface réseau
- Comment appliquer des configurations en utilisant générer, essayer et appliquer sous-commande
Exigences et conventions logicielles utilisées
Catégorie | Exigences, conventions ou version logicielle utilisée |
---|---|
Système | Ubuntu 20.04 (Focal Fossa) |
Logiciel | Netplan (installé par défaut) |
Autre | Autorisations racinaires pour modifier les fichiers de configuration |
Conventions | # - nécessite que les commandes Linux sont exécutées avec des privilèges racine soit directement en tant qu'utilisateur racine, soit par l'utilisation de Sudo commande$ - Exige que les commandes Linux sont exécutées en tant qu'utilisateur non privilégié régulier |
Fichiers de configuration NetPlan
Il existe trois emplacements dans lesquels des fichiers de configuration NetPlan peuvent être placés; Par ordre de priorité, ils sont:
/ run / netplan
/ etc / netplan
/ lib / netplan
À l'intérieur de chacun de ces répertoires, les configurations sont créées à l'aide de fichiers avec le .yaml extension qui sont traitées dans lexicographique Ordre, quel que soit le répertoire dans lequel ils se trouvent.
La priorité du répertoire n'a un rôle que lorsque les fichiers avec le même nom existent: dans ces cas, seul le fichier contenu dans le répertoire avec la priorité plus élevée est analysé.
Si un booléen ou scalaire Le paramètre est défini dans plusieurs fichiers de configuration, il supposera la valeur définie dans le dernier fichier qui est analysé; Si les valeurs sont séquences, Au lieu de cela, ils sont concaténés.
Les utilisateurs sont censés placer leurs configurations à l'intérieur du / etc / netplan
annuaire; Par défaut, le seul fichier présent sur un nouveau Ubuntu 20 installé.04 Le système est / etc / netplan / 01-network-manager-all.yaml
. Dans la section suivante, nous verrons les instructions qu'il contient, et quelle est leur signification.
Le / etc / netplan / 01-network-manage-all.fichier yaml
Le seul fichier de configuration existant / etc / netplan /
Répertoire sur un nouveau Ubuntu installé 20.04 Le système est 01-network-manage-all.yaml
. Jetons un coup d'œil à son contenu:
# Laissez NetworkManager gérer tous les appareils sur ce réseau système: Version: 2 Rendu: NetworkManager
Comme le suggère le commentaire dans le fichier, la configuration est censée définir toutes les interfaces réseau sur le système à gérer par le Gestionnaire de réseau
rendu. Nous pouvons observer que les directives sont en retrait à l'intérieur du nœud principal, réseau
. Puisque nous avons affaire à des fichiers YAML, l'indentation est cruciale.
Deux autres mots clés que nous pouvons trouver dans le fichier sont version
et rendu
: le premier spécifie la version syntaxue utilisée, ce dernier le système backend (réseau contre Gestionnaire de réseau).
Dans la section suivante de ce tutoriel, nous créerons un exemple de configuration légèrement plus complexe, et nous l'utiliserons pour attribuer une adresse IPv4 statique à une interface réseau.
Un exemple de configuration - Définition d'une adresse IPv4 statique
Le fichier de configuration que nous avons vu ci-dessus est assez basique; Essayons quelque chose d'un peu plus complexe et voyons comment pouvons-nous configurer une adresse IPv4 statique à l'aide de NetPlan.
La première chose que nous devons faire est de créer un nouveau fichier de configuration, à analyser après la par défaut: appelons-le / etc / netplan / 02-static-ip.yaml
. À l'intérieur du fichier, nous créons une règle pour correspondre aux interfactions réseau que nous voulons configurer: nous pouvons accomplir la tâche en utilisant le correspondre
strophe.
À l'intérieur de correspondre
Section, nous pouvons sélectionner une série d'interfaces physiques sur la base de la valeur des propriétés spécifiées. Pour que les paramètres soient appliqués, toutes les propriétés doivent être appariées par la règle.
Dans le fichier de configuration, nous écrivons:
# Définir l'adresse IP statique pour le réseau d'interface ENP1S0: Version: 2 Rendu: NetworkManager Ethernets: ID0: Match: Nom: ENP1S0 DHCP4: Faux Adresses: - 192.168.122.250/24 Nameservers: Adresses: - 192.168.122.1 passerelle 4: 192.168.122.1
Voyons de plus près les nouvelles instructions que nous avons utilisées dans la configuration. À l'intérieur du principal réseau
Node, les appareils peuvent être regroupés par leur type:
Ethernets
Wifis
des ponts
Étant donné que dans notre exemple, nous traitons d'un appareil Ethernet que nous avons utilisé Ethernets
strophe. À l'intérieur de correspondre
strophe, nous avons référencé l'interface par son nom
: ENP1S0
. Les règles de correspondance peuvent également être basées sur Adresse Mac
Et, seulement lorsque vous utilisez réseau
En tant que rendu, sur conducteur
qui est le nom du pilote du noyau Linux utilisé pour le ou les périphériques.
Pour atteindre notre configuration souhaitée, nous avons utilisé une série de directives. Puisque nous voulons attribuer une adresse statique, nous avons handicapé dhcp4
et utilisé le adresses
mot-clé pour associer une adresse IPv4 à l'interface. Une adresse multiple peut être spécifiée: ils doivent être fournis avec le masque de sous-réseau.
Nous avons également défini les adresses du serveurs de noms
dans la strophe avec le même nom. Enfin, nous définissons l'adresse IPv4 de la passerelle que l'interface doit utiliser avec le passerelle4
mot-clé.
Simplifier la configuration
La configuration que nous avons utilisée dans l'exemple ci-dessus peut être légèrement simplifiée. Pour référencer l'interface, nous voulons attribuer l'adresse statique à nous avons utilisé le correspondre
la strophe, cependant, nous aurions pu l'omettre. Étant donné que nous voulons que nos paramètres soient appliqués à un seul appareil spécifique, nous pouvons le référencer directement en utilisant son nom prévisible (ENP1S0
) comme identifiant:
Réseau: Version: 2 Rendu: NetworkManager Ethernets: ENP1S0: DHCP4: Faux Adresses: - 192.168.122.250/24 Nameservers: Adresses: - 192.168.122.1 passerelle 4: 192.168.122.1
Quand le correspondre
la strophe est utilisée, la identifiant (id0
Dans l'exemple précédent) est arbitraire et il est utilisé pour référencer le ou les périphériques configurés à partir d'autres sections du fichier de configuration. Quand le correspondre
la strophe est omise, au lieu de cela identifiant doit correspondre au nom prévisible de l'appareil. Lorsque vous travaillez avec des dispositifs virtuels tels que des ponts ou des obligations, le identifiant n'est pas utilisé pour référencer une interface existante, mais représente le nom qui doit être utilisé lorsque l'interface est créée.
À ce stade, notre configuration est prête; Tout ce que nous devons faire, c'est le sauver et le tester.
Tester et appliquer une configuration netplan
Dans la section précédente, nous avons vu comment créer une configuration NetPlan simple pour fournir une adresse IPv4 statique pour une interface réseau. Il est maintenant temps de tester la configuration, de voir si cela fonctionne correctement. Pour atteindre notre objectif, nous pouvons utiliser le netplan
utilité et le essayer
sous-commande.
Le essayer
sous-commande du netplan
L'utilitaire, comme son nom l'indique, est utilisé pour essayer une configuration et le faire éventuellement en arrière si l'utilisateur ne le confirme pas après un certain temps. Le délai de temps par défaut est de 120
secondes mais il peut être modifié en utilisant le --temps libre
option.
Comme vous pouvez le voir sur la sortie du adresse IP
commande, l'adresse IPv4 actuelle pour le ENP1S0
L'interface est 192.168.122.200
:
$ Adresse IP | Grep ENP1S0 2: ENP1S0: MTU 1500 QDISC FQ_CODEL State Up Group par défaut Qlen 1000 INET 192.168.122.200/24 BRD 192.168.122.255 Scope Global Dynamic NoprefixRoute ENP1S0
Appliquons la configuration:
$ sudo netplan essai
Une fois que nous exécutons la commande, l'invite suivante apparaît à l'écran:
Voulez-vous garder ces paramètres? Appuyez sur Entrée avant le délai d'expiration pour accepter les nouvelles modifications de configuration reviendront en 120 secondes
Nous avons suffisamment de temps pour très si l'adresse IP de l'interface a changé:
$ Adresse IP | Grep ENP1S0 2: ENP1S0: MTU 1500 QDISC FQ_CODEL State Up Group par défaut Qlen 1000 INET 192.168.122.250/24 BRD 192.168.122.255 Scope Global Dynamic NoprefixRoute ENP1S0
Comme nous pouvons le voir, l'adresse IPv4 a changé comme prévu. Dans ce cas, cependant après l'expiration du délai d'expiration, la commande n'a pas réussi à retourner la configuration. Il s'agit d'un problème connu, signalé également dans la page manuelle de l'utilitaire. Dans de tels cas, pour revenir pleinement à l'état initial, un redémarrage devrait être suffisant.
Deux autres commandes peuvent être utilisées:
Netplan Générer
netplan appliquer
Le Netplan Générer
La commande convertit les paramètres des fichiers YAML en configurations appropriées au rendu utilisé, mais ne les applique pas. Dans la grande majorité des cas, il n'est pas censé être appelé directement: il est invoqué, par exemple, par netplan appliquer
qui applique en outre les modifications sans délai d'expiration «retourne».
Conclusions
Dans ce tutoriel, nous avons approché Netplan, un service public développé par Canonical, qui est actif par défaut sur Ubuntu 20.04 FOCAL FOSSA. Le but de cet utilitaire est de résumer les configurations pour les interfaces réseau à l'aide d'un fichier de configuration YAML.
Ces configurations sont ensuite traduites en configurations pour le rendu spécifié, tel que NetworkManager ou NetworkD. Dans ce didacticiel, nous avons vu comment écrire une règle simple pour définir une adresse IP statique pour une interface réseau, nous avons appris certains des nœuds qui peuvent être utilisés dans les fichiers de configuration, et nous avons vu comment appliquer les modifications via le Netplan essai
et netplan appliquer
commandes. Ici, nous avons à peine gratté la surface de ce qui peut être accompli en utilisant Netplan si vous voulez en savoir plus, jetez un œil au site Web de Netplan et à la page de l'homme utilitaire.
Tutoriels Linux connexes:
- Comment empêcher la vérification de la connectivité NetworkManager
- Une introduction à l'automatisation Linux, des outils et des techniques
- Choses à installer sur Ubuntu 20.04
- Introduction à Yaml avec des exemples
- Masterring Bash Script Loops
- Comment utiliser le réseautage ponté avec Libvirt et KVM
- Ubuntu 20.04 astuces et choses que vous ne savez peut-être pas
- Choisir un addon de réseautage Kubernetes
- Mint 20: Mieux que Ubuntu et Microsoft Windows?
- Choses à faire après l'installation d'Ubuntu 20.04 Focal Fossa Linux
- « Exemples de liner complexe Linux Bash
- Comment vérifier une santé du disque dur à partir de la ligne de commande à l'aide de SmartCTL »