NoPaste

Netzwerk mit systemd

von KP97

SNIPPET_TEXT:
  1. Netzwerk managen mit systemd.
  2.  
  3.  
  4. Diese Konfiguration läuft bei mir auf einem Desktop Debian Sid mit Xfce 4.13.
  5. Ich kann also nur von meinen Gegebenheiten ausgehen.
  6.  
  7. System:    Host: MB Kernel: 4.19.6 x86_64 bits: 64 Desktop: Xfce 4.13.1git-UNKNOWN Distro: Debian GNU/Linux buster/sid
  8. Machine:   Type: Desktop Mobo: ASRock model: KBL-NUC serial: N/A UEFI: American Megatrends v: P1.40B date: 12/15/2016
  9. CPU:       Topology: Dual Core model: Intel Core i3-7100U bits: 64 type: MT MCP L2 cache: 3072 KiB
  10.            Speed: 400 MHz min/max: 400/2400 MHz Core speeds (MHz): 1: 400 2: 400 3: 400 4: 401
  11. Graphics:  Device-1: Intel HD Graphics 620 driver: i915 v: kernel
  12.            Display: server: X.Org 1.20.3 driver: i915 resolution: 1920x1080~60Hz
  13.            OpenGL: renderer: Mesa DRI Intel HD Graphics 620 (Kaby Lake GT2) v: 4.5 Mesa 18.2.6
  14. Network:   Device-1: Intel Ethernet I219-V driver: e1000e
  15.            IF: eth0 state: up speed: 1000 Mbps duplex: full mac: dc:fe:07:e1:77:22
  16.            Device-2: Intel Wireless 3160 driver: iwlwifi
  17.            IF: wlp3s0 state: down mac: b4:6d:83:a2:d8:11
  18. Router:    Ist eine Connectbox von Unitymedia  
  19.        
  20.  
  21. 1. Vorbereiten bzw. prüfen:
  22.  
  23. Vor wichtigen Systemänderungen ist ein Backup Pflicht.
  24. Das Paket wpasupplicant ist installiert.
  25. In der /etc/resolve.conf darf nur das Gateway des Routers stehen:  192.168.0.1
  26. Die /etc/network/interfaces darf keinen Inhalt haben.
  27. Da DHCP über systemd läuft, braucht auch kein Paket dhcpcd5 oder ähnliches installiert sein.
  28. In den folgenden Beispielen muß die SSID und das Paßwort mit den eigenen Angaben ersetzt werden.
  29. Für Wlan bin ich vom Standardnamen wlp3s0 ausgegangen, es gibt aber auch andere, komplizierte Namen.
  30. Für Ethernet heißt es wohl enp3s....
  31.  
  32.  
  33. 2. Dateien und Service anlegen.
  34.  
  35. a) In /etc/wpa_supplicant/ eine Datei wpa_supplicant-wlp3s0.conf anlegen.
  36.  
  37. Der PSK-Schlüssel wird erstellt mit wpa_passphrase MBxxx und Paßwort.
  38. Meiner ist 64-stellig, kann also recht lang sein. SSID und PSK ersetzen, sonst alles genauso übernehmen.
  39.  
  40.  
  41. network={
  42.         ssid="MBxxx"
  43.         psk=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
  44. }
  45.  
  46. ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=wheel
  47.  
  48. eapol_version=1
  49. ap_scan=1
  50. network={
  51.        ssid="MBxxx"
  52.        scan_ssid=1
  53.        proto=WPA RSN
  54.        key_mgmt=WPA-PSK
  55.        pairwise=CCMP TKIP
  56.        group=CCMP TKIP
  57.        psk=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
  58. }
  59.  
  60.  
  61. b) In /etc/systemd/network eine Datei 80-wlan.network erstellen:
  62.  
  63. [Match]
  64. Name=w*
  65.  
  66. [Network]
  67. DHCP=yes
  68.  
  69. w* deswegen, damit auch andere Standardnamen passen.
  70.  
  71.  
  72. c) In /etc/systemd/system eine Datei wpa_supplicant@wlp3s0.service erstellen:
  73.  
  74. [Unit]
  75. Description=Wlan-Verbindung
  76. Wants=network.target
  77. Before=network.target
  78. BindsTo=sys-subsystem-net-devices-%i.device
  79. After=sys-subsystem-net-devices-%i.device
  80.  
  81. [Service]
  82. Type=oneshot
  83. RemainAfterExit=yes
  84. ExecStart=/sbin/ip link set dev %i up
  85. ExecStart=/sbin/wpa_supplicant -B -i %i -c /etc/wpa_supplicant/wpa_supplicant-%i.conf
  86. ExecStop=/sbin/ip link set dev %i down
  87.  
  88. [Install]
  89. WantedBy=multi-user.target
  90.  
  91.  
  92. 3. Nun die Kabelverbindung.
  93.  
  94. a) In /etc/systemd/network eine Datei 70-kabel.network erstellen:
  95.  
  96. [Match]
  97. Name=e*
  98.  
  99. [Network]
  100. DHCP=yes
  101.  
  102. e* deswegen, damit auch andere Standardnamen passen.
  103.  
  104.  
  105. 4. Service starten:
  106.  
  107. systemctl enable wpa_supplicant@wlp3s0.service
  108. systemd-networkd läuft bereits (prüfen)
  109.  
  110. Ich gehe davon aus, daß in /etc/init.d keine Netzwerkscripte liegen und daher auch der
  111. Service networking.service disabled ist. Hier muß systemd-networkd laufen, damit auch die Abfragen
  112. mit networkctl funktionieren.
  113.  
  114.  
  115. 5. Wer nun noch die guten alten Namen wie eth0 und wlan0 zurückhaben will, legt noch zwei Dateien in /etc/systemd/network an.
  116. Die MAC-Adressen sind mit den eigenen zu ersetzen.
  117. Wichtig:
  118. Wer das Wlan umgetauft hat, muß unbedingt die Namen anpassen!
  119. Also ändern nach wpa_supplicant@wlan0.service und wpa_supplicant-wlan0.conf.  
  120. Am Inhalt ändert sich nichts.  
  121.  
  122. a) 70-kabel.link
  123.  
  124. [Match]
  125. MACAddress=dc:fe:07:e1:77:22
  126.  
  127. Name=eth0
  128.  
  129. b) 80-wlan.link
  130.  
  131. [Match]
  132. MACAddress=b4:6d:83:a2:d8:11
  133.  
  134. Name=wlan0
  135.  
  136.  
  137. 6. Wenn man alles richtig eingetragen hat, müßte nach einem Neustart alles mit systemd laufen.
  138.  
  139. Ich habe bei mir Wlan deaktiviert, da ich nur Kabel nutze und ich das nicht parallel laufen lassen will.
  140. Also den wpa-Service disabled und die beiden Dateien zum wlan umbenannt. Sollte ich wlan nutzen wollen, brauche ich nur den
  141. Service wieder enablen und die Dateien umbenennen.
  142. So sieht es dann bei mir aus:
  143.  
  144. root@MB:/home/MB# systemctl status systemd-networkd
  145. ● systemd-networkd.service - Network Service
  146.    Loaded: loaded (/lib/systemd/system/systemd-networkd.service; enabled; vendor preset: enabled)
  147.    Active: active (running) since Thu 2018-12-06 20:09:04 CET; 23s ago
  148.      Docs: man:systemd-networkd.service(8)
  149.  Main PID: 360 (systemd-network)
  150.    Status: "Processing requests..."
  151.     Tasks: 1 (limit: 4915)
  152.    Memory: 2.7M
  153.    CGroup: /system.slice/systemd-networkd.service
  154.            └─360 /lib/systemd/systemd-networkd
  155.  
  156. Dez 06 20:09:04 MB systemd-networkd[360]: Enumeration completed
  157. Dez 06 20:09:04 MB systemd-networkd[360]: wlp3s0: Interface name change detected, wlp3s0 has been renamed to wlan0.
  158. Dez 06 20:09:04 MB systemd-networkd[360]: wlan0: Interface name change detected, wlan0 has been renamed to wlp3s0.
  159. Dez 06 20:09:04 MB systemd-networkd[360]: wlp3s0: Link is not managed by us
  160. Dez 06 20:09:04 MB systemd-networkd[360]: lo: Link is not managed by us
  161. Dez 06 20:09:04 MB systemd[1]: Started Network Service.
  162. Dez 06 20:09:07 MB systemd-networkd[360]: eth0: Gained carrier
  163. Dez 06 20:09:09 MB systemd-networkd[360]: eth0: Gained IPv6LL
  164. Dez 06 20:09:09 MB systemd-networkd[360]: eth0: DHCPv4 address 192.168.0.87/24 via 192.168.0.1
  165. Dez 06 20:09:21 MB systemd-networkd[360]: eth0: Configured
  166.  
  167. root@MB:/home/MB# networkctl status eth0
  168. 2: eth0
  169.        Link File: /etc/systemd/network/70-kabel.link
  170.     Network File: /etc/systemd/network/70-kabel.network
  171.             Type: ether
  172.            State: routable (configured)
  173.             Path: pci-0000:00:1f.6
  174.           Driver: e1000e
  175.           Vendor: Intel Corporation
  176.            Model: Ethernet Connection I219-V
  177.       HW Address: dc:fe:07:e1:77:22 (PEGATRON CORPORATION)
  178.          Address: 192.168.0.87
  179.                   fe80::defe:7ff:fee1:7722
  180.          Gateway: 192.168.0.1
  181.              DNS: 80.69.96.12
  182.                   81.210.129.4
  183.  
  184. root@MB:/home/MB# networkctl status wlan0
  185. Failed to request link: No such device
  186.  
  187. root@MB:/home/MB# networkctl status wlp3s0
  188. 3: wlp3s0
  189.        Link File: /lib/systemd/network/99-default.link
  190.     Network File: n/a
  191.             Type: wlan
  192.            State: off (unmanaged)
  193.             Path: pci-0000:03:00.0
  194.           Driver: iwlwifi
  195.           Vendor: Intel Corporation
  196.            Model: Wireless 3160 (Dual Band Wireless AC 3160)
  197.       HW Address: b4:6d:83:a2:d8:11 (Intel Corporate)
  198. root@MB:/home/MB#

Quellcode

Hier kannst du den Code kopieren und ihn in deinen bevorzugten Editor einfügen. PASTEBIN_DOWNLOAD_SNIPPET_EXPLAIN