Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu dieser Vergleichsansicht

tux:interface [2012/10/04 15:58]
wikisysop
tux:interface [2013/05/25 12:28] (aktuell)
wikisysop [Die Netzwerkumgebung in (Debian) Linux]
Zeile 2: Zeile 2:
 =====Die "​Netzwerkumgebung"​ in (Debian) Linux===== =====Die "​Netzwerkumgebung"​ in (Debian) Linux=====
  
-Die Datei >><​fc #​008000>/​etc/​network/​interfaces</​fc><<​ ist die zentrale Konfigurationsdatei der Netzwerkschnittstellen und am ehesten mit den Eigenschaften der Netzwerkumgebung unter Windows oder mit dem Netzwerk-SnapIn in den Systemeigenschaften unter Mac OSX vergleichbar. Sind die beiden letztgenannten GUI Varianten ist die >><​fc #​008000>​interfaces</​fc><<​ Datei ganz Unix-like rein Text basiert.+Die Datei >><​fc #​008000>/​etc/​network/​interfaces</​fc><<​((http://​man.he.net/​man5/​interfaces)) ​ist die zentrale Konfigurationsdatei der Netzwerkschnittstellen und am ehesten mit den Eigenschaften der Netzwerkumgebung unter Windows oder mit dem Netzwerk-SnapIn in den Systemeigenschaften unter Mac OSX vergleichbar. Sind die beiden letztgenannten GUI Varianten ​und konfigurieren im Hintergrund Registryeinträge oder Konfigurationsdateien,​ so ist die >><​fc #​008000>​interfaces</​fc><<​ Datei ganz Unix-like rein Text basiert.
  
 Hier können Sie Ihre Netzwerkschnittstellen entweder manuell oder automatisch per DHCP konfigurieren,​ aber auch zB statische Routen eintragen. Der Zweck dieser Datei dient dazu, diese Einstellungen ggf auch nach einem Neustart noch zur Verfügung zu haben. Dazu wird die >><​fc #​008000>​interfaces</​fc><<​-Datei beim Systemstart ausgewertet. Detaillierte Informationen bzgl. der Konfigurationsmöglichkeiten entnehmen Sie bitte der Manpage von interfaces (<fc #​008000>>>​man interfaces<<</​fc>​) Hier können Sie Ihre Netzwerkschnittstellen entweder manuell oder automatisch per DHCP konfigurieren,​ aber auch zB statische Routen eintragen. Der Zweck dieser Datei dient dazu, diese Einstellungen ggf auch nach einem Neustart noch zur Verfügung zu haben. Dazu wird die >><​fc #​008000>​interfaces</​fc><<​-Datei beim Systemstart ausgewertet. Detaillierte Informationen bzgl. der Konfigurationsmöglichkeiten entnehmen Sie bitte der Manpage von interfaces (<fc #​008000>>>​man interfaces<<</​fc>​)
  
 In diesem Tutorial möchte ich einige rudimentäre aber durchaus übliche Einstellungen dokumentieren:​ In diesem Tutorial möchte ich einige rudimentäre aber durchaus übliche Einstellungen dokumentieren:​
 +
 +//<fs x-small>​**<​fc #​800000>​Note</​fc>:​** Dieser Artikel ersetzt und ergänzt den älteren Artikel [[:​tux:​persistant_route|How To -> Permanente Route konfigurieren]].</​fs>//​
  
 ====Grundsätzliches zum Ablauf==== ====Grundsätzliches zum Ablauf====
-Beim Systemstart wird das Init-Skript >><​fc #​008000>​etc/​init.d/​networking</​fc><<​ ausgeführt,​ welches uA die beiden High-level Systemwerkzeuge >><​fc #​008000>​ifup</​fc><<​ und >><​fc #​008000>​ifdown</​fc><<​ aufruft, je nachdem ob das System gerade startet (>><​fc #​008000>​ifup</​fc><<​) oder herunter gefahren wird (>><​fc #​008000>​ifdown</​fc><<​). Genauer gesagt werden diese Programme mit der Option >><​fc #​008000>​-a</​fc><<​ aufgerufen. Die Datei >><​fc #​008000>/​etc/​network/​interfaces</​fc><<​ ist die Konfigurationsdatei für diese beiden High-Level Systemtools. Hier werden die Schnittstellen,​ welche beim Systemstart konfiguriert werden sollen mit >><​fc #​008000>​auto</​fc><<​ gekennzeichnet,​ was mit dem zuvor genannten >><​fc #​008000>​ifup/​ifdown</​fc><< ​Prpgrammparameter ​>><​fc #​008000>​-a</​fc><<​ korreliert. >><​fc #​008000>​ifup/​ifdown</​fc><<​ konfigurieren aber die Schnittstellen nicht direkt, sondern bedienen sich den beiden Low-Level Konfigurationstools >><​fc #​008000>​ifconfig</​fc><<​ und >><​fc #​008000>​route</​fc><<​.+Beim Systemstart wird das Init-Skript >><​fc #​008000>​etc/​init.d/​networking</​fc><<​ ausgeführt,​ welches uA die beiden High-level Systemwerkzeuge >><​fc #​008000>​ifup</​fc><<​((http://​man.flashnux.com/​en/​debian/​6/​6.0.1/​man8/​ifup.8.html)) ​und >><​fc #​008000>​ifdown</​fc><<​((http://​www.digipedia.pl/​man/​doc/​view/​ifdown.8/​)) ​aufruft, je nachdem ob das System gerade startet (>><​fc #​008000>​ifup</​fc><<​) oder herunter gefahren wird (>><​fc #​008000>​ifdown</​fc><<​). Genauer gesagt werden diese Programme mit der Option >><​fc #​008000>​-a</​fc><<​ aufgerufen. Die Datei >><​fc #​008000>/​etc/​network/​interfaces</​fc><<​ ist die Konfigurationsdatei für diese beiden High-Level Systemtools. Hier werden die Schnittstellen,​ welche beim Systemstart konfiguriert werden sollen mit >><​fc #​008000>​auto</​fc><<​ gekennzeichnet,​ was mit dem zuvor genannten >><​fc #​008000>​ifup/​ifdown</​fc><< ​Programmparameter ​>><​fc #​008000>​-a</​fc><<​ korreliert. >><​fc #​008000>​ifup/​ifdown</​fc><<​ konfigurieren aber die Schnittstellen nicht direkt, sondern bedienen sich den beiden Low-Level Konfigurationstools >><​fc #​008000>​ifconfig</​fc><<​((http://​www.manpagez.com/​man/​8/​ifconfig/​)) ​und >><​fc #​008000>​route</​fc><<​((http://​www.manpagez.com/​man/​8/​route/​)).
  
 Ein Beispiel: Ein Beispiel:
  
-  * >><​fc #​008000>​init</​fc><<​ Systemstart+  * >><​fc #​008000>​init</​fc><<​ Systemstart((http://​linux.die.net/​man/​8/​init))
   * >><​fc #​008000>/​etc/​init.d/​networking start</​fc><<​ wird aufgerufen   * >><​fc #​008000>/​etc/​init.d/​networking start</​fc><<​ wird aufgerufen
   * >><​fc #​008000>​networking start</​fc><<​ ruft >><​fc #​008000>​ifup -a</​fc><<​ auf   * >><​fc #​008000>​networking start</​fc><<​ ruft >><​fc #​008000>​ifup -a</​fc><<​ auf
Zeile 52: Zeile 54:
 # The primary network interface eth0 # The primary network interface eth0
 iface eth0 inet static iface eth0 inet static
-        iface eth0 inet static 
         address ​  ​192.168.167.200         address ​  ​192.168.167.200
         netmask ​  ​255.255.255.0         netmask ​  ​255.255.255.0
         network ​  ​192.168.167.0         network ​  ​192.168.167.0
         broadcast 192.168.167.255         broadcast 192.168.167.255
-        gateway ​  ​192.168.167.2</​code>​Weggelassen habe ich zudem den Eintrag >><​fc #​008000>​allow-hotplug eth0</​fc><<​ und durch das Hinzufügen des Interfaces >><​fc #​008000>​eth0</​fc><<​ in der Zeile >><​fc #​008000>​auto</​fc><<​ ergänzt. Hier können zB auch weitere Interfaces angegeben werden. Die Zeile könnte durchaus auch so aussehen:<​code>​auto lo eth0 eth1 eth2</​code>​Zum Überprüfen ob die oz Einstellungen im System übernommen werden, starten Sie Ihr System neu und überprüfen die Einstellungen:<​xterm>#​ <fc #​008000>​ifconfig eth0</​fc>​+        gateway ​  ​192.168.167.2</​code>​Weggelassen habe ich zudem den Eintrag >><​fc #​008000>​allow-hotplug eth0</​fc><<​ und durch das Hinzufügen des Interfaces >><​fc #​008000>​eth0</​fc><<​ in der Zeile >><​fc #​008000>​auto</​fc><<​ ergänzt. Hier können zB auch weitere Interfaces angegeben werden. Die Zeile könnte durchaus auch so aussehen: 
 +         
 +<​code>​auto lo eth0 eth1 eth2</​code>​Zum Überprüfen ob die oz Einstellungen im System übernommen werden, starten Sie Ihr System neu und überprüfen die Einstellungen:<​xterm>#​ <fc #​008000>​ifconfig eth0</​fc>​
 eth0      Link encap:​Ethernet ​ Hardware Adresse 00:​0c:​29:​23:​7e:​2e  ​ eth0      Link encap:​Ethernet ​ Hardware Adresse 00:​0c:​29:​23:​7e:​2e  ​
           inet Adresse:<​fc #​800000>​192.168.167.200</​fc> ​ Bcast:<​fc #​800000>​192.168.167.255</​fc> ​ Maske:<​fc #​800000>​255.255.255.0</​fc>​           inet Adresse:<​fc #​800000>​192.168.167.200</​fc> ​ Bcast:<​fc #​800000>​192.168.167.255</​fc> ​ Maske:<​fc #​800000>​255.255.255.0</​fc>​
Zeile 74: Zeile 77:
  
 ====DNS Server einstellen==== ====DNS Server einstellen====
-Normalerweise wird die DNS-Server Adresse unter Linux in der Datei >><​fc #​008000>/​etc/​resolv.conf</​fc><<​ eingestellt. Dort befindet sich dann zB folgender Eintrag, wenn man als DNS Server zB die Adresse >><​fc #​008000>​192.168.167.2</​fc><<​ verwenden möchte:<​code bash|/​etc/​resolv.conf>​domain localdomain+Normalerweise wird die DNS-Server Adresse unter Linux in der Datei >><​fc #​008000>/​etc/​resolv.conf</​fc><<​((http://​linux.die.net/​man/​5/​resolv.conf)) ​eingestellt. Dort befindet sich dann zB folgender Eintrag, wenn man als DNS Server zB die Adresse >><​fc #​008000>​192.168.167.2</​fc><<​ verwenden möchte:<​code bash|/​etc/​resolv.conf>​domain localdomain
 search localdomain search localdomain
 nameserver 192.168.167.2</​code>​ nameserver 192.168.167.2</​code>​
  
-Diesen Eintrag kann man auch über die >><​fc #​008000>​interfaces</​fc><<​-Konfigurationsdatei setzen. Dazu muss das Paket >><​fc #​008000>​resolvconf</​fc><<​ installiert sein:+Diesen Eintrag kann man auch über die >><​fc #​008000>​interfaces</​fc><<​-Konfigurationsdatei setzen. Dazu muss das Paket >><​fc #​008000>​resolvconf</​fc><<​((http://​www.linuxcertif.com/​man/​8/​resolvconf/​)) ​installiert sein:
 <​xterm>#​ <fc #​008000>​aptitude install resolvconf</​fc></​xterm>​Dieses Paket erweitert aber nur den oben genannten Ablauf durch Aufruf der Low-Level Programme >><​fc #​008000>​ifconfig</​fc><<​ und >><​fc #​008000>​route</​fc><<​ um ein weiteres Low-level Programm >><​fc #​008000>​resolvconf</​fc><<​. <​xterm>#​ <fc #​008000>​aptitude install resolvconf</​fc></​xterm>​Dieses Paket erweitert aber nur den oben genannten Ablauf durch Aufruf der Low-Level Programme >><​fc #​008000>​ifconfig</​fc><<​ und >><​fc #​008000>​route</​fc><<​ um ein weiteres Low-level Programm >><​fc #​008000>​resolvconf</​fc><<​.
  
-Danach können Sie einfach die Einträge >><​fc #​008000>​dns-nameservers //<IP Adresse>//</​fc><<,​ sowie die >><​fc #​008000>​dns-search //<​Domain>//</​fc><<​ und >><​fc #​008000>​dns-domain //<​Domain>//</​fc><< ​ zu Ihrer Konfiguration hinzufügen:<​code bash|/​etc/​network/​intrefaces># This file describes the network interfaces available on your system+Danach können Sie einfach die Einträge >><​fc #​008000>​dns-nameservers //<IP Adresse>//</​fc><<,​ sowie die >><​fc #​008000>​dns-search //<​Domain>//</​fc><<​ und >><​fc #​008000>​dns-domain //<​Domain>//</​fc><< ​ zu Ihrer Konfiguration hinzufügen:<​code bash|/​etc/​network/​interfaces># This file describes the network interfaces available on your system
 # and how to activate them. For more information,​ see interfaces(5). # and how to activate them. For more information,​ see interfaces(5).
  
Zeile 99: Zeile 102:
         dns-nameservers 192.168.167.2         dns-nameservers 192.168.167.2
         dns-search local         dns-search local
-        dns-domain local.domain</​code>​In dieser Liste dürfen dann auch mehr DNS Server stehen, schreiben Sie diese mit einem Leerzeichen getrennt dahinter (zB: <fc #​008000>​dns-nameservers 192.168.167.2 192.168.167.3</​fc>​). Die nun von >>​resolvconf<<​ generierte Datei >><​fc #​008000>/​etc/​resolv.conf</​fc><<​ warnt nun schon eindringlich,​ dass diese Datei zukünftig nicht mehr mit der Hand editiert werden sollte:<​code bash|/​etc/​resolv.conf>#​ Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)+        dns-domain local.domain</​code>​In dieser Liste dürfen dann auch mehr DNS Server stehen, schreiben Sie diese mit einem Leerzeichen getrennt dahinter (zB: <fc #​008000>​dns-nameservers 192.168.167.2 192.168.167.3</​fc>​). Die nun von >><fc #008000>​resolvconf</fc><< generierte Datei >><​fc #​008000>/​etc/​resolv.conf</​fc><<​ warnt nun schon eindringlich,​ dass diese Datei zukünftig nicht mehr mit der Hand editiert werden sollte:<​code bash|/​etc/​resolv.conf>#​ Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
 #     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN #     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
 nameserver 192.168.167.2 nameserver 192.168.167.2
Zeile 105: Zeile 108:
  
 ====Statische Route anlegen==== ====Statische Route anlegen====
-Wenn Routen gebraucht werden, welche nicht durch das Default Gateway abgedeckt werden, können diese per Hand direkt mit dem >>​route add<< Kommando angelegt werden:<​xterm>#​ <fc #​008000>​route add -net 192.168.110.0 netmask 255.255.255.0 gw 192.168.167.151</​fc></​xterm>​Diese Variante funktioniert auch wunderbar aber leider nur bis zu einem Neustart, denn auch diese Einstellung bleibt nicht permanent. Sie können diese Einstellung aber auch durch die >><​fc #​008000>/​etc/​network/​interface</​fc><<​ automatisch einstellen lassen. Erweitern Sie hierfür Ihre Konfiguration um die folgenden zwei Zeilen:<​code>​up route add -net 192.168.110.0 netmask 255.255.255.0 gw 192.168.167.151 +Wenn Routen gebraucht werden, welche nicht durch das Default Gateway abgedeckt werden, können diese per Hand direkt mit dem >>​route add<< Kommando angelegt werden:<​xterm>#​ <fc #​008000>​route add -net 192.168.110.0 netmask 255.255.255.0 gw 192.168.167.151</​fc></​xterm>​Diese Variante funktioniert auch wunderbar aber leider nur bis zu einem Neustart, denn auch diese Einstellung bleibt nicht permanent. Sie können diese Einstellung aber auch durch die >><​fc #​008000>/​etc/​network/​interface</​fc><<​ automatisch einstellen lassen. Erweitern Sie hierfür Ihre Konfiguration um die folgenden zwei Zeilen: 
- down route delete -net 192.168.110.0 netmask 255.255.255.0 gw 192.168.167.151</​code>​Beachten Sie hierbei diese Einstellung einem Interface zuzuordnen. Bei einem System mit mehr als einen Netzwerkinterface (zB einem Router) muss man die Route dann an ein Interface binden:<code bash|/​etc/​network/​interface>#​ This file describes the network interfaces available on your system+ 
 +<​code>​up route add -net 192.168.110.0 netmask 255.255.255.0 gw 192.168.167.151 
 +down route delete -net 192.168.110.0 netmask 255.255.255.0 gw 192.168.167.151</​code>​ 
 +<code bash|/​etc/​network/​interface>#​ This file describes the network interfaces available on your system
 # and how to activate them. For more information,​ see interfaces(5). # and how to activate them. For more information,​ see interfaces(5).
  
Zeile 120: Zeile 126:
         broadcast 192.168.167.255         broadcast 192.168.167.255
         gateway ​  ​192.168.167.2         gateway ​  ​192.168.167.2
- 
         ### own custom routes ###         ### own custom routes ###
- 
         up route add -net 192.168.110.0 netmask 255.255.255.0 gw 192.168.167.151         up route add -net 192.168.110.0 netmask 255.255.255.0 gw 192.168.167.151
         down route delete -net 192.168.110.0 netmask 255.255.255.0 gw 192.168.167.151         down route delete -net 192.168.110.0 netmask 255.255.255.0 gw 192.168.167.151
Zeile 145: Zeile 149:
         broadcast 192.168.167.255         broadcast 192.168.167.255
         gateway ​  ​192.168.167.2         gateway ​  ​192.168.167.2
- 
         ### own custom routes ###         ### own custom routes ###
- 
         up route add -net 192.168.110.0 netmask 255.255.255.0 gw 192.168.167.151         up route add -net 192.168.110.0 netmask 255.255.255.0 gw 192.168.167.151
         down route delete -net 192.168.110.0 netmask 255.255.255.0 gw 192.168.167.151         down route delete -net 192.168.110.0 netmask 255.255.255.0 gw 192.168.167.151
Zeile 163: Zeile 165:
         dns-search local         dns-search local
         dns-domain local.domain         dns-domain local.domain
-</​code>​Beachten Sie hierbei die Ergänzung in der Zeile >>​auto<<​ (erste Zeile) und beachten Sie auch dem zweiten Interface kein Gateway zuzuweisen. Bedenken Sie, es kann nur ein Standardgateway geben und das ist auch nur an genau ein Interface gebunden.+</​code>​Beachten Sie hierbei die Ergänzung in der Zeile >>​auto<<​ (erste Zeile) und beachten Sie auch dem zweiten Interface kein Gateway zuzuweisen. Bedenken Sie, es kann nur ein Standardgateway geben und das ist auch nur an genau ein Interface gebunden. ​Ihre Routingtabelle sieht dann wie folgt aus:<​xterm>#​ <fc #​008000>​netstat -r</​fc>​ 
 +Kernel-IP-Routentabelle 
 +Ziel            Router ​         Genmask ​        ​Flags ​  MSS Fenster irtt Iface 
 +192.168.167.0 ​  ​* ​              ​255.255.255.0 ​  ​U ​        0 0          0 eth0 
 +192.168.180.0 ​  ​* ​              ​255.255.255.0 ​  ​U ​        0 0          0 <fc #​FF0000>​eth1</​fc>​ 
 +192.168.110.0 ​  ​192.168.167.151 255.255.255.0 ​  ​UG ​       0 0          0 eth0 
 +default ​        ​192.168.167.2 ​  ​0.0.0.0 ​        ​UG ​       0 0          0 eth0</​xterm>​ 
 + 
 +That's it - happy computing 
 + 
 + --- //pronto 2012/10/04 16:00//
  
 {{keywords>​network interfaces linux debian ifup ifdown ifconfig route allow-hotplug auto dhcp static resolvconf resolv.conf persistant permanent}} {{keywords>​network interfaces linux debian ifup ifdown ifconfig route allow-hotplug auto dhcp static resolvconf resolv.conf persistant permanent}}
tux/interface.1349359132.txt.gz (16543 views) · Zuletzt geändert: 2012/10/04 15:58 von wikisysop
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0