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
Prochaine révision Les deux révisions suivantes
doc:reseau:systemd:network [26/01/2016 10:46]
milou [Introduction]
doc:reseau:systemd:network [29/01/2016 10:17]
Severian [Liens utiles]
Ligne 4: Ligne 4:
   * 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.
-  ​* Débutant, à savoir : [[:​doc:​systeme:​commandes:​le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-) +  * Suivi : {{tag>​en-chantier ​à-compléter}} - FIXME Pour choisir, voir les autres Tags possibles dans [[:​atelier:#​tags|l'​Atelier]].
-  ​* Suivi : {{tag>​en-chantier}} - FIXME Pour choisir, voir les autres Tags possibles dans [[:​atelier:#​tags|l'​Atelier]].+
     * Création par [[user>​Severian]] 08/11/2015     * Création par [[user>​Severian]] 08/11/2015
-    * Testé par <...> le <​...> ​FIXME+    * Testé par <...> le <​...> ​
   * Commentaires sur le forum : [[https://​debian-facile.org/​viewtopic.php?​id=12584 | Lien vers le forum concernant ce tuto]] ((N'​hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !)) FIXME   * Commentaires sur le forum : [[https://​debian-facile.org/​viewtopic.php?​id=12584 | Lien vers le forum concernant ce tuto]] ((N'​hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !)) FIXME
  
Ligne 22: Ligne 21:
  
 <note important>​ <note important>​
-Afin d'​éviter tout conflit, les outils graphiques ou la configuration par le fichier **/​etc/​network/​interfaces** doivent être désactivées+Afin d'​éviter tout conflit, les outils graphiques ou la configuration par le fichier **/​etc/​network/​interfaces** doivent être désactivés
 </​note>​ </​note>​
  
-<code root>​systemctl disable network +<code root>​systemctl disable network</​code>​ 
-systemctl disable NetworkManager</​code>​+<code root>systemctl disable NetworkManager</​code>​
  
 ==== Les fichiers de configuration /​etc/​systemd/​network/​ ==== ==== Les fichiers de configuration /​etc/​systemd/​network/​ ====
Ligne 43: Ligne 42:
   * les fichiers ''​.network''​ . Ils vont appliquer une configuration réseau à l'​interface correspondante   * les fichiers ''​.network''​ . Ils vont appliquer une configuration réseau à l'​interface correspondante
   * les fichiers ''​.netdev''​. Ils vont créer un dispositif de réseau virtuel pour l'​environnement donné   * les fichiers ''​.netdev''​. Ils vont créer un dispositif de réseau virtuel pour l'​environnement donné
-  * les fichiers ''​.link''​. ​Quand un dispositif de réseau apparaît, **udev** va chercher le premier fichier ''​.link''​ correspondant ​+  * les fichiers ''​.link''​. ​quand un dispositif de réseau apparaît, **udev** va chercher le premier fichier ''​.link''​ correspondant ​
  
 Ils suivent tous les mêmes règles : Ils suivent tous les mêmes règles :
Ligne 49: Ligne 48:
   * Si une section [Match] est vide, le profil sera applicable dans tous les cas (peut être comparé à * joker)   * Si une section [Match] est vide, le profil sera applicable dans tous les cas (peut être comparé à * joker)
   * Chaque entrée est une clé avec la syntaxe **NOM=VALEUR**   * Chaque entrée est une clé avec la syntaxe **NOM=VALEUR**
-  * Tous les fichiers de configuration sont collectivement triés et traités par ordre alphanumérique,​ quels que soient les répertoires dans lesquel ​ils se trouvent.+  * Tous les fichiers de configuration sont collectivement triés et traités par ordre alphanumérique,​ quels que soient les répertoires dans lesquels ​ils se trouvent.
   * 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 == == Création des fichiers de configurations ==
- 
 <code root>​nano /​etc/​systemd/​network/​*nom-du-fichier*</​code>​ <code root>​nano /​etc/​systemd/​network/​*nom-du-fichier*</​code>​
  
Ligne 63: Ligne 61:
  
 <code root>​nano /​etc/​systemd/​network/​50-eth0.network</​code>​ <code root>​nano /​etc/​systemd/​network/​50-eth0.network</​code>​
-<code batch 50-eth0.network>​[Match]+<file config ​50-eth0.network>​[Match]
 Name=eth0 Name=eth0
  
Ligne 69: Ligne 67:
 DHCP=no DHCP=no
 Address=xxx.xxx.xxx.xxx/​24 Address=xxx.xxx.xxx.xxx/​24
-Gateway=xxx.xxx.xxx.xxx</​code>+Gateway=xxx.xxx.xxx.xxx</​file>
  
 == Section [Match] == == Section [Match] ==
Ligne 79: Ligne 77:
   * Path : correspond à  ID_PATH des [[configurer-un-reseau-filaire-via-systemd#​proprietes-udev|proprietes UDEV]]   * 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]]   * 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//+  * 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]]   * 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]])   * 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écute ​sur machine virtuelle ou non (Virtualization=no / Virtualization=yes)+  * 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.   * 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.   * 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] == == Section [Network] ==
  
Ligne 96: Ligne 95:
   * Domains : Les domaines utilisés pour la résolution DNS.   * 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.   * 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>​ <​note>​
-Un certain nombre d'​options de configuration dépassant mon niveau de connaissance, je préfère ne pas en parler.\\+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 : Vous pourrez trouver de plus amples informations sur :
    * [[http://​www.freedesktop.org/​software/​systemd/​man/​systemd.network.html|systemd.network — Network configuration]]    * [[http://​www.freedesktop.org/​software/​systemd/​man/​systemd.network.html|systemd.network — Network configuration]]
Ligne 105: Ligne 133:
 == DNS via le client DHCP == == DNS via le client DHCP ==
  
-Concernant le systemd-resolved il est utilisé uniquement dans le cas ou on spécifie des entrés ​DNS dans les fichiers de conf(.network). \\+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 : 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>​ <code root>​nano /​etc/​systemd/​network/​eth0.network</​code>​
 Et on rédige par exemple : Et on rédige par exemple :
-<code>[Match]+<file config Exemple d'​extrait de eth0.network> 
 +[Match]
 Name=eth0 Name=eth0
 [Network] [Network]
Ligne 115: Ligne 144:
 Address=192.168.1.40/​24 Address=192.168.1.40/​24
 Gateway=192.168.1.1 Gateway=192.168.1.1
-</code>+</file> 
  
 ---- ----
Ligne 122: Ligne 152:
  
 <code root>​nano /​etc/​systemd/​network/​50-eth0.link</​code>​ <code root>​nano /​etc/​systemd/​network/​50-eth0.link</​code>​
-<code batch 50-eth0.link>​[Match]+<file config ​50-eth0.link>​[Match]
 MACAddress=xx:​xx:​xx:​xx:​xx:​xx MACAddress=xx:​xx:​xx:​xx:​xx:​xx
 Path=pci-xxxx:​xx:​xx.x Path=pci-xxxx:​xx:​xx.x
Ligne 131: Ligne 161:
 MTUBytes=1464 MTUBytes=1464
 MACAddressPolicy=persistent MACAddressPolicy=persistent
-WakeOnLan=off</​code>+WakeOnLan=off</​file>
  
 == Section [Match] == == Section [Match] ==
  
 La section [Match] détermine si un fichier de configuration donné peut être appliqué à une interface donnée. \\ 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ée. Tous les fichiers suivants seront ignorés, même s'ils correspondent également à l'​interface.+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]])   * 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]]   * Path : correspond à  ID_PATH des [[configurer-un-reseau-filaire-via-systemd#​proprietes-udev|proprietes UDEV]]
Ligne 146: Ligne 176:
   * KernelCommandLine : teste si une commande spécifique est passée au noyau.   * 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.   * 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] == == Section [Link] ==
  
Ligne 155: Ligne 185:
      * "​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.      * "​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.      * "​none"​ FIXME Keeps the MAC address assigned by the kernel.
-  * MACAddress : L'​adresse MAC à utiliser, si aucun **MACAddressPolicy** est spécifié.+  * 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 :   * 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.      * "​kernel" ​    If the kernel claims that the name it has set for a device is predictable,​ then no renaming is performed.
Ligne 193: Ligne 223:
 Si vous désirez configurer ''​resolv.conf'',​ il suffit d'​éditer le fichier **/​etc/​systemd/​resolved.conf** : 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>​ <code root>​nano /​etc/​systemd/​resolved.conf</​code>​
-<code>+<file config resolved.conf>
 #  This file is part of systemd. #  This file is part of systemd.
 # #
Ligne 205: Ligne 235:
 [Resolve] [Resolve]
 DNS=4.2.2.4 4.2.2.2 209.244.0.4 209.244.0.3 DNS=4.2.2.4 4.2.2.2 209.244.0.4 209.244.0.3
-</code>+</file>
  
 et de redémarrer le service : et de redémarrer le service :
Ligne 235: Ligne 265:
 <code root>​systemctl start systemd-networkd</​code>​ <code root>​systemctl start systemd-networkd</​code>​
  
-Pour vérifier son status ​(ça permet aussi de vérifier si les fichiers de configuration n'ont pas d'​erreurs)+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>​ <code root>​systemctl status systemd-networkd</​code>​
  
Ligne 246: Ligne 276:
 Pour désactiver le service : Pour désactiver le service :
 <code root>​systemctl disable systemd-networkd</​code>​ <code root>​systemctl disable systemd-networkd</​code>​
- 
 ===== Commandes terminal utilisées ===== ===== Commandes terminal utilisées =====
  
 === systemctl === === systemctl ===
  
-<code root>​systemctl enable systemd-networkd +<code root>​systemctl enable systemd-networkd</​code>​ 
-systemctl restart systemd-networkd +<code root>systemctl restart systemd-networkd</​code>​ 
-systemctl status systemd-networkd +<code root>systemctl status systemd-networkd</​code>​ 
-systemctl stop systemd-networkd +<code root>systemctl stop systemd-networkd</​code>​ 
-systemctl disable systemd-networkd+<code root>systemctl disable systemd-networkd</​code>​
  
-systemctl enable systemd-resolved.service +<code root>systemctl enable systemd-resolved.service</​code>​ 
-systemctl start systemd-resolved.service +<code root>systemctl start systemd-resolved.service</​code>​ 
-systemctl status systemd-resolved.service +<code root>systemctl status systemd-resolved.service</​code>​ 
-systemctl stop systemd-resolved.service</​code>​+<code root>systemctl stop systemd-resolved.service</​code>​
  
 === ethtool === === ethtool ===
Ligne 288: Ligne 317:
  
 ===== Liens utiles ===== ===== Liens utiles =====
 +===Internes===
 +  * [[atelier:​chantier:​systemd-networkd-fichier-.network|systemd-networkd : Le fichier .network]]
 +  * [[atelier:​chantier:​systemd-networkd-fichier-.link|systemd-networkd : Le fichier .link]]
 +  * [[atelier:​chantier:​systemd-networkd-fichier-.netdev|systemd-networkd : Le fichier .netdev]]
 +  * [[atelier:​chantier:​systemd-networkd-dns|systemd-networkd : DNS]] 
 +  * [[atelier:​chantier:​systemd-networkd-iptable|systemd-networkd : iptable]]
  
 +===Externes===
   * http://​www.freedesktop.org/​software/​systemd/​man/​systemd-networkd.service.html   * http://​www.freedesktop.org/​software/​systemd/​man/​systemd-networkd.service.html
-  * https://​debian-facile.org/​viewtopic.php?​pid=143591#​p143591 
   * https://​wiki.archlinux.fr/​Systemd-networkd   * https://​wiki.archlinux.fr/​Systemd-networkd
   * https://​wiki.archlinux.org/​index.php/​systemd-networkd   * https://​wiki.archlinux.org/​index.php/​systemd-networkd
   * 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 =====
 +
 +  * https://​debian-facile.org/​viewtopic.php?​pid=143591#​p143591
doc/reseau/systemd/network.txt · Dernière modification: 01/10/2023 12:14 par captnfab

Pied de page des forums

Propulsé par FluxBB