logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).


L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT → ODT PDF Export

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
doc:reseau:systemd:network [29/01/2016 10:17]
Severian [Liens utiles]
doc:reseau:systemd:network [01/10/2023 12:14] (Version actuelle)
captnfab
Ligne 1: Ligne 1:
-====== ​Configurer un réseau filaire via systemd-networkd ======+====== systemd-networkd ​reseau filaire ​======
  
   * Objet : Configurer un réseau filaire en utilisant systemd-networkd (/​etc/​systemd/​network/​*)   * Objet : Configurer un réseau filaire en utilisant systemd-networkd (/​etc/​systemd/​network/​*)
   * Niveau requis : {{tag>​avisé}}   * Niveau requis : {{tag>​avisé}}
   * Commentaires : Écrire la configuration de connexion de votre réseau.   * Commentaires : Écrire la configuration de connexion de votre réseau.
-  * Suivi : {{tag>en-chantier à-compléter}} - FIXME Pour choisir, voir les autres Tags possibles dans [[:​atelier:#​tags|l'​Atelier]].+  * Suivi : {{tag>obsolète}}
     * Création par [[user>​Severian]] 08/11/2015     * Création par [[user>​Severian]] 08/11/2015
     * Testé par <...> le <​...> ​     * Testé par <...> le <​...> ​
Ligne 14: Ligne 14:
  
 ===== Introduction ===== ===== Introduction =====
 +<note warning>​les configurations fonctionnent pour Jessie, à éviter d'​utiliser pour l'​instant avec Stretch</​note>​
  
 Avec GNU/Linux Debian Jessie et l'​arrivée de Systemd, il existe une nouvelle façon de configurer l'​interface réseau sans passer par des "​démons"​ ([[doc:​reseau:​network-manager|NetworkManager]] ou Wicd) et sans utiliser la modification du fichier ''/​etc/​network/​interfaces''​. Avec GNU/Linux Debian Jessie et l'​arrivée de Systemd, il existe une nouvelle façon de configurer l'​interface réseau sans passer par des "​démons"​ ([[doc:​reseau:​network-manager|NetworkManager]] ou Wicd) et sans utiliser la modification du fichier ''/​etc/​network/​interfaces''​.
Ligne 51: Ligne 52:
   * les fichiers avec des noms identiques se remplacent les uns les autres.   * les fichiers avec des noms identiques se remplacent les uns les autres.
  
-== Création ​des fichiers ​de configurations == +Configuration ​des fichiers ​.network\\ 
-<code root>​nano /etc/systemd/network/*nom-du-fichier*</​code>​+[[doc:​reseau:​systemd:network:fichier-.link|Configuration des fichiers .link]]\\ 
 +[[doc:​reseau:​systemd:​network:​fichier-.netdev|Configuration des fichiers .netdev]]\\
  
-voir [[doc:​editeurs:​nano:​nano-tp-par-l-exemple|TP : nano par l'​exemple]] 
-  * /​etc/​systemd/​network/​50-eth0.network 
-  * /​etc/​systemd/​network/​50-eth0.link 
- 
-===/​etc/​systemd/​network/​50-eth0.network=== 
- 
-<code root>​nano /​etc/​systemd/​network/​50-eth0.network</​code>​ 
-<file config 50-eth0.network>​[Match] 
-Name=eth0 
- 
-[Network] 
-DHCP=no 
-Address=xxx.xxx.xxx.xxx/​24 
-Gateway=xxx.xxx.xxx.xxx</​file>​ 
- 
-== Section [Match] == 
- 
-La section [Match] détermine si un fichier de configuration donné peut être appliqué à une interface donnée. 
- 
-Le premier fichier (dans l'​ordre lexical) qui correspond à une interface donnée est appliqué. Tous les fichiers suivants seront ignorés, même s'ils correspondent également à l'​interface. 
-  * MACAddress → adresse Mac de la carte (correspond à ATTR{address} dans [[configurer-un-reseau-filaire-via-systemd#​persistent-netrule-du-repertoire-etc-udev-rulesd|70-persistent-net.rules]]) 
-  * Path : correspond à  ID_PATH des [[configurer-un-reseau-filaire-via-systemd#​proprietes-udev|proprietes UDEV]] 
-  * Driver : ​ correspond à DRIVER des [[configurer-un-reseau-filaire-via-systemd#​proprietes-udev|proprietes UDEV]], ou **driver** de la commande [[configurer-un-reseau-filaire-via-systemd#​ethtool|ethtool]] 
-  * Type : DEVTYPE des [[configurer-un-reseau-filaire-via-systemd#​proprietes-udev|proprietes UDEV]] (**Type n'est pas utilisé car les cartes réseaux font partie du sous-system = net(dans le monde magique d'​UDEV) et n'a pas de propriété devtype**) 
-exemple : <​code=root>​ udevadm info /​sys/​net/​class/​net/​eth0</​code>​ 
-  * Name : INTERFACE des [[configurer-un-reseau-filaire-via-systemd#​proprietes-udev|proprietes UDEV]] ou NAME de [[configurer-un-reseau-filaire-via-systemd#​persistent-netrule-du-repertoire-etc-udev-rulesd|70-persistent-net.rules]] 
-  * Host : correspond à //​hostname//​ ou à l'ID de la machine (voir [[configurer-un-reseau-filaire-via-systemd#​ConditionHost|ConditionHost]]) 
-  * Virtualization : teste si la session est exécutée sur machine virtuelle ou non (Virtualization=no / Virtualization=yes) 
-  * KernelCommandLine : teste si une commande spécifique est passée au noyau. 
-  * Architecture : teste sous quelle architecture (x86, x86-64, ppc, ppc-le, ppc64, ppc64-le, ia64, parisc, parisc64, s390, s390x, sparc, sparc64, mips, mips-le, mips64, mips64-le, alpha, arm, arm-be, arm64, arm64-be, sh, sh64, m86k, tilegx, cris) se trouve le pc. 
-  
-== Section [Network] == 
- 
-La section [Network] précise la configuration de l'​interface. 
-  * Description : Description de l'​interface,​ utilisé uniquement à des fins de présentation. 
-  * DHCP : DHCPv4 et / ou DHCPv6 support client. Accepte **yes** ​ **no** ​ **ipv4** ou **ipv6**. 
-  * Address : une adresse fixe IPv4 or IPv6 et son préfixe séparé par "/"​. Spécifiez cette clé plus d'une fois pour configurer plusieurs adresses. 
-  * Gateway : l'​adresse de la passerelle, cette option peut être spécifiée plus d'une fois. 
-  * DNS : l'​adresse du serveur DNS, cette option peut être spécifiée plus d'une fois. 
-  * Domains : Les domaines utilisés pour la résolution DNS. 
-  * NTP : L'​adresse du serveur NTP. Cette option peut être spécifiée plus d'une fois. 
-  * IPForward : En voila une très intéressante puisqu'​elle vous permet de partager une connexion internet, Accepte **yes** **no** **ipv4** **ipv6** **kernel** (kernel veut dire, lire la conf actuelle du noyau) 
- 
-<note important>​Concernant le partage de connexion internet, il faut aussi ajouter les règles IPTABLES suivantes 
-<​code>​ 
-dans le cas ou ma machine Gateway a pour eth0(WAN) et eth1(LAN) 
-# iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE 
-# iptables -A FORWARD -m conntrack --ctstate RELATED,​ESTABLISHED -j ACCEPT 
-# iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT 
-</​code>​ 
-Pour faire tout ça automatiquement il faut créer un fichier /​etc/​iptables/​rules.v4 avec la bonne conf 
-<code root>​apt-get install iptables-persistent</​code>​ 
-<code root>​iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADEiptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE</​code>​ 
-<code root>​iptables -A FORWARD -m conntrack --ctstate RELATED,​ESTABLISHED -j ACCEPT</​code>​ 
-<code root>​iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT</​code>​ 
-<code root>​iptables-save > /​etc/​iptables/​rules.v4</​code>​ 
-</​note>​ 
- 
-==Section [DHCP]== 
-<note important>​Dans le cas d'un ordinateur avec plusieurs carte réseaux sur le même réseau (la même box par exemple), ne pas oublier de définir 2 champs "​[DHCP]RouteMetric=*"​ de valeur différentes. cela permettra de switcher de l'une à l'​autre sans bidouiller les tables de routage 
-exemple : 
-<​code>​ 
-[Match] 
-Name=eth0 
-[Network] 
-DHCP=ipv4 
-[DHCP] 
-RouteMetric=10 
-</​code>​ 
-</​note>​ 
- 
-<​note>​ 
-Un certain nombre d'​options de configuration dépassant mon niveau de connaissances,​ je préfère ne pas en parler.\\ 
-Vous pourrez trouver de plus amples informations sur : 
-   * [[http://​www.freedesktop.org/​software/​systemd/​man/​systemd.network.html|systemd.network — Network configuration]] 
-</​note>​ 
- 
-== DNS via le client DHCP == 
- 
-Concernant le systemd-resolved il est utilisé uniquement dans le cas ou on spécifie des entrées DNS dans les fichiers de conf(.network). \\ 
-Or si l'on veut obtenir les DNS via le client DHCP de systemd-networkd on tape : 
-<code root>​nano /​etc/​systemd/​network/​eth0.network</​code>​ 
-Et on rédige par exemple : 
-<file config Exemple d'​extrait de eth0.network>​ 
-[Match] 
-Name=eth0 
-[Network] 
-DNS=192.168.1.1 
-Address=192.168.1.40/​24 
-Gateway=192.168.1.1 
-</​file>​ 
- 
- 
----- 
- 
-=== /​etc/​systemd/​network/​50-eth0.link === 
- 
-<code root>​nano /​etc/​systemd/​network/​50-eth0.link</​code>​ 
-<file config 50-eth0.link>​[Match] 
-MACAddress=xx:​xx:​xx:​xx:​xx:​xx 
-Path=pci-xxxx:​xx:​xx.x 
-Virtualization=no 
- 
-[Link] 
-Name=eth0 
-MTUBytes=1464 
-MACAddressPolicy=persistent 
-WakeOnLan=off</​file>​ 
- 
-== Section [Match] == 
- 
-La section [Match] détermine si un fichier de configuration donné peut être appliqué à une interface donnée. \\ 
-Le premier fichier (dans l'​ordre lexical) qui correspond à une interface donnée est appliqué. Tous les fichiers suivants seront ignorés, même s'ils correspondent également à l'​interface. 
-  * MACAddress → adresse Mac de la carte (correspond à ATTR{address} dans [[configurer-un-reseau-filaire-via-systemd#​persistent-netrule-du-repertoire-etc-udev-rulesd|70-persistent-net.rules]]) 
-  * Path : correspond à  ID_PATH des [[configurer-un-reseau-filaire-via-systemd#​proprietes-udev|proprietes UDEV]] 
-  * Driver :  correspond à DRIVER des [[configurer-un-reseau-filaire-via-systemd#​proprietes-udev|proprietes UDEV]], ou **driver** de la commande [[configurer-un-reseau-filaire-via-systemd#​ethtool|ethtool]] 
-  * Type : DEVTYPE des [[configurer-un-reseau-filaire-via-systemd#​proprietes-udev|proprietes UDEV]] FIXME //-> pas trouvé d'info sur DEVTYPE// 
-  * OriginalName : INTERFACE des [[configurer-un-reseau-filaire-via-systemd#​proprietes-udev|proprietes UDEV]] ou NAME de [[configurer-un-reseau-filaire-via-systemd#​persistent-netrule-du-repertoire-etc-udev-rulesd|70-persistent-net.rules]] 
-  * Host : correspond à //​hostname//​ ou à l'ID de la machine (voir [[configurer-un-reseau-filaire-via-systemd#​ConditionHost|ConditionHost]]) 
-  * Virtualization : teste si la session est exécutée sur machine virtuelle ou non (Virtualization=no / Virtualization=yes) 
-  * KernelCommandLine : teste si une commande spécifique est passée au noyau. 
-  * Architecture : teste sous quelle architecture (x86, x86-64, ppc, ppc-le, ppc64, ppc64-le, ia64, parisc, parisc64, s390, s390x, sparc, sparc64, mips, mips-le, mips64, mips64-le, alpha, arm, arm-be, arm64, arm64-be, sh, sh64, m86k, tilegx, cris) se trouve le pc. 
-  
-== Section [Link] == 
- 
-La section [Link] précise la configuration de l'​interface. 
-  * Description : Description de l'​interface,​ utilisée uniquement à des fins de présentation 
-  * MACAddressPolicy : La politique de réglage de l'​adresse MAC. Les politiques disponibles sont : 
-     * "​persistent"​ FIXME If the hardware has a persistent MAC address, as most hardware should, and if it is used by the kernel, nothing is done. Otherwise, a new MAC address is generated which is guaranteed to be the same on every boot for the given machine and the given device, but which is otherwise random. This feature depends on ID_NET_NAME_* properties existing for the link, on hardware where these properties are not set the generation of a persistent MAC address will fail. 
-     * "​random"​ FIXME If the kernel is using a random MAC address, nothing is done. Otherwise, a new address is randomly generated each time the device appears, typically at boot. Either way the random address will have the "​unicast"​ and "​locally administered"​ bits set. 
-     * "​none"​ FIXME Keeps the MAC address assigned by the kernel. 
-  * MACAddress : L'​adresse MAC à utiliser, si aucun **MACAddressPolicy** est spécifiée. 
-  * NamePolicy : FIXME An ordered, space-separated list of policies by which the interface name should be set. "​NamePolicy"​ may be disabled by specifying "​net.ifnames=0"​ on the kernel command line. Each of the policies may fail, and the first successful one is used. The name is not set directly, but is exported to udev as the property "​ID_NET_NAME",​ which is, by default, used by a udev rule to set "​NAME"​. If the name has already been set by userspace, no renaming is performed. The available policies are : 
-     * "​kernel" ​    If the kernel claims that the name it has set for a device is predictable,​ then no renaming is performed. 
-     * "​database" ​    The name is set based on entries in the udev's Hardware Database with the key "​ID_NET_NAME_FROM_DATABASE"​. ​ 
-     * "​onboard" ​    The name is set based on information given by the firmware for on-board devices, as exported by the udev property "​ID_NET_NAME_ONBOARD"​. ​ 
-     * "​slot" ​    The name is set based on information given by the firmware for hot-plug devices, as exported by the udev property "​ID_NET_NAME_SLOT"​. ​ 
-     * "​path" ​    The name is set based on the device'​s physical location, as exported by the udev property "​ID_NET_NAME_PATH"​. 
-     * "​mac" ​    The name is set based on the device'​s persistent MAC address, as exported by the udev property "​ID_NET_NAME_MAC"​. 
-  * Name : Le nom à utiliser pour l'​interface si toutes les politiques spécifiées dans **NamePolicy** échouent, ou si **NamePolicy** est manquant ou désactivé. 
-  * MTUBytes : indication de la MTU (par défaut 1500). 
-  * BitsPerSecond : le débit défini pour l'​interface,​ la valeur est arrondie aux Mbps les plus proches vers le bas. Les suffixes habituels K, M, G, sont pris en charge et sont compris à la base 1000. 
-  * Duplex : le mode duplex défini pour l'​interface. Les valeurs acceptées sont half et full. 
-  * WakeOnLan : politique du WOL [[https://​fr.wikipedia.org/​wiki/​Wake-on-LAN|Wake-on-LAN (wikipedia)]] ​ 
-     * "​phy" ​ réveil sur une activité physique. 
-     * "​magic"​ réveil sur la réception d'un paquet magique. ​ 
-     * "​off"​ pas de réveil. 
- 
-plus de détails -> [[http://​www.freedesktop.org/​software/​systemd/​man/​systemd.link.html|systemd.link — Network device configuration]] 
- 
----- 
- 
-==== Résolution DNS - resolv.conf ==== 
- 
-Maintenant que la configuration du réseau est faite, il faut s'​occuper de la résolution DNS.\\ 
-Rien de plus simple, il suffit d'​activer le service : 
-<code root>​systemctl enable systemd-resolved.service</​code>​ 
- 
-effacer l'​ancien fichier **resolv.conf** : 
-<code root>rm /​etc/​resolv.conf</​code>​ 
- 
-le remplacer par un lien symbolique : 
-<code root>ln -s /​run/​systemd/​resolve/​resolv.conf /​etc/​resolv.conf</​code>​ 
- 
-et lancer le service : 
-<code root>​systemctl start systemd-resolved.service</​code>​ 
- 
-Si vous désirez configurer ''​resolv.conf'',​ il suffit d'​éditer le fichier **/​etc/​systemd/​resolved.conf** : 
-<code root>​nano /​etc/​systemd/​resolved.conf</​code>​ 
-<file config resolved.conf>​ 
-#  This file is part of systemd. 
-# 
-#  systemd is free software; you can redistribute it and/or modify it 
-#  under the terms of the GNU Lesser General Public License as published by 
-#  the Free Software Foundation; either version 2.1 of the License, or 
-#  (at your option) any later version. 
-# 
-# See resolved.conf(5) for details 
- 
-[Resolve] 
-DNS=4.2.2.4 4.2.2.2 209.244.0.4 209.244.0.3 
-</​file>​ 
- 
-et de redémarrer le service : 
-<code root>​systemctl restart systemd-resolved.service</​code>​ 
- 
-<note tip> 
-Différentes possibilités de DNS\\ 
-  * 4.2.2.4 | vnsc-pri-dsl.genuity.net | Level 3 Communications 
-  * 4.2.2.2 | vnsc-bak.sys.gtei.net | Level 3 Communications 
-  * 209.244.0.4 Verizon Level 3 
-  * 209.244.0.3 Verizon Level 3 
-  * 208.67.220.220 | resolver2.opendns.com | OpenDNS, LLC 
-  * 208.67.222.222 | resolver1.opendns.com | OpenDNS, LLC 
-  * 8.8.8.8 google IPv4 
-  * 8.8.4.4 google IPv4 
-  * 2001:​4860:​4860::​8888 google IPv6 
-  * 2001:​4860:​4860::​8844 google IPv6 
-  * ... 
-</​note>​ 
- 
----- 
- 
-==== Activation du service systemd-networkd ==== 
- 
-Il ne reste plus qu'à activer le service : 
-<code root>​systemctl enable systemd-networkd</​code>​ 
- 
-et le démarrer : 
-<code root>​systemctl start systemd-networkd</​code>​ 
- 
-Pour vérifier son statut (ça permet aussi de vérifier si les fichiers de configuration n'ont pas d'​erreurs) 
-<code root>​systemctl status systemd-networkd</​code>​ 
- 
-En cas de modification des fichiers de configuration : 
-<code root>​systemctl restart systemd-networkd</​code>​ 
- 
-Pour arrêter le service : 
-<code root>​systemctl stop systemd-networkd</​code>​ 
- 
-Pour désactiver le service : 
-<code root>​systemctl disable systemd-networkd</​code>​ 
 ===== Commandes terminal utilisées ===== ===== Commandes terminal utilisées =====
- 
-=== systemctl === 
- 
-<code root>​systemctl enable systemd-networkd</​code>​ 
-<code root>​systemctl restart systemd-networkd</​code>​ 
-<code root>​systemctl status systemd-networkd</​code>​ 
-<code root>​systemctl stop systemd-networkd</​code>​ 
-<code root>​systemctl disable systemd-networkd</​code>​ 
- 
-<code root>​systemctl enable systemd-resolved.service</​code>​ 
-<code root>​systemctl start systemd-resolved.service</​code>​ 
-<code root>​systemctl status systemd-resolved.service</​code>​ 
-<code root>​systemctl stop systemd-resolved.service</​code>​ 
  
 === ethtool === === ethtool ===
Ligne 318: Ligne 85:
 ===== Liens utiles ===== ===== Liens utiles =====
 ===Internes=== ===Internes===
-  * [[atelier:chantier:systemd-networkd-fichier-.network|systemd-networkd : Le fichier .network]] +  * [[doc:reseau:systemd:network|Accueil :Configurer un réseau filaire via systemd-networkd]] 
-  * [[atelier:chantier:systemd-networkd-fichier-.link|systemd-networkd : Le fichier .link]] +  * systemd-networkd : Le fichier .network 
-  * [[atelier:chantier:systemd-networkd-fichier-.netdev|systemd-networkd : Le fichier .netdev]] +  * [[doc:reseau:systemd:network:fichier-.link|systemd-networkd : Le fichier .link]] 
-  * [[atelier:chantier:systemd-networkd-dns|systemd-networkd : DNS]]  +  * [[doc:reseau:systemd:network:fichier-.netdev|systemd-networkd : Le fichier .netdev]] 
-  * [[atelier:chantier:systemd-networkd-iptable|systemd-networkd : iptable]]+  * [[doc:reseau:systemd:network:networkd-dns|systemd-networkd : DNS]]  
 +  * [[doc:reseau:systemd:network:networkd-iptable|systemd-networkd : iptable]]
  
 ===Externes=== ===Externes===
Ligne 330: Ligne 98:
   * https://​www.debinux.de/​2014/​12/​debian-basics-mit-systemd/​   * https://​www.debinux.de/​2014/​12/​debian-basics-mit-systemd/​
   * https://​debian-facile.org/​doc:​reseau:​interfaces   * https://​debian-facile.org/​doc:​reseau:​interfaces
- 
 =====Discussions au forum relatives à ce tuto ===== =====Discussions au forum relatives à ce tuto =====
  
   * https://​debian-facile.org/​viewtopic.php?​pid=143591#​p143591   * https://​debian-facile.org/​viewtopic.php?​pid=143591#​p143591
doc/reseau/systemd/network.1454059067.txt.gz · Dernière modification: 29/01/2016 10:17 par Severian

Pied de page des forums

Propulsé par FluxBB