Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > c4d5882bc376802b5b959fc2f6ff220f > files > 30

howto-text-de-2006-5mdv2010.0.noarch.rpm

  Bridging mini-HOWTO
  Ralph Wetzel (Ralph.Wetzel@munich.netsurf.de)
  v1.0-2, 22. Oktober 1996

  Dieses mini-HOWTO erklärt in einfachen Worten und ziemlich schnell,
  wie man einen Linux-Rechner als Bridge einrichtet. Es basiert (im
  Moment noch zu 100%) auf dem "Bridging mini-HOWTO v1.03" von Chris
  Cole.


  1.  Installation


  1. Man besorge sich die Bridge Config-Tools:

       shadow.cabi.net:/pub/Linux/BRCFG.tgz



  2. Man besorge sich und lese das Multiple ethernet mini-HOWTO:

       metalab.unc.edu:/pub/Linux/docs/HOWTO/mini/Multiple-Ethernet



  3. Man bringe seinem Rechner bei, mehrere Ethernet-Karten zu
     verwalten, indem man die folgende Zeile in /etc/lilo.conf einfügt,
     und anschließend lilo startet:


       append = "ether=0,0,eth1"




  Ist der zukünftige Bridge-Rechner mit drei Ethernet-Karten bestückt,
  so sollte man diese Zeile verwenden:


       append = "ether=0,0,eth1 ether=0,0,eth2"




  Je mehr ether-Anweisungen man einfügt, desto mehr Karten kann Linux
  finden. Standardmäßig testet ein Linux Kernel nur die Anwesenheit
  einer einzigen Ethernet-Karte, und beendet die Suche, nachdem er sie
  gefunden hat. Die ether-Anweisungen fordern den Kernel auf, die Suche
  zusätzlich auf weitere Karten auszudehnen.

  Als Alternative zur Veränderung der /etc/lilo.conf können die
  Anweisungen als Boot-Parameter übergeben werden:

  linux ether=0,0,eth1




  Oder, bei drei installierten Karten:


       linux ether=0,0,eth1 ether=0,0,eth2





  4. Man erstelle einen Kernel mit bridging-Fähigkeiten. Dazu sind,
     während der Kernel-Konfiguration, auf


  ·  die einzige Option in Code maturity level options.

  ·  Bridging (EXPERIMENTAL) in Networking options.


  5. Eine Bridge sollte keine IP Adresse haben. Sie kann, aber eine
     reine Bridge benötigt keine. Um die IP Adressen der Bridge zu
     entfernen, gehe man zu /etc/sysconfig/network-scripts/ (für ein
     RedHat System) und kopiere ifcfg-lo0 nach ifcfg-eth0 &ifcfg-eth1.
     In diesen Files ändere man die Zeile Soll die Bridge mehr als zwei
     Ethernet-Karten beinhalten, sind die entsprechenden Files auch für
     die restlichen Karten einzurichten.

     Für andere Distributionen, wie z.B. S.u.S.E., muß man hier etwas
     anders vorgehen. Darauf werde ich in zukünftigen Versionen dieses
     HOWTO's näher eingehen. :))


  6. Man reboote den Rechner, so daß nun


  ·  der Kernel bridging-Fähigkeiten besitzt

  ·  die Ethernet-Karten eingerichtet und

  ·  möglichst an keine IP Adresse gebunden sind.


  7. Ist das System wieder zurück, sind die Ethernet-Karten in den
     promiscous-mode zu setzen, so daß sie jedes packet annehmen,
     welches sie erreicht. Dabei ist darauf zu achten, daß jede Karte,
     die an einen Netzwerk-Bereich angeschlossen ist, der über die
     Bridge angebunden werden soll, in diesen Modus zu schalten ist:


       ifconfig promisc eth0 ; ifconfig promisc eth1





  8. Man schalte die Bridge mittels des Programms brcfg EIN:


       brcfg -ena



  9. Der Netzverkehr auf den einzelnen Karten sollte sich unterscheiden.
     Man überprüfe dies mittels:


       tcpdump -i eth0     (in einem Fenster)
       tcpdump -i eth1     (in einem anderen Fenster)





  10.
     Startet man einen sniffer oder tcpdump auf einem anderen Rechner,
     kann man überprüfen, ob die Bridge die einzelnen Teile des
     Netzwerks richtig verwaltet.


  2.  FAQ - Normale Probleme


  ·  Was bedeutet die Fehlermeldung "ioctl(SIOCGIFBR) failed: Package
     not installed"?

     Der verwendete Kernel besitzt keine bridging-Fähigkeit.  Man
     besorge sich den Source-Code für einen Kernel v2.x.x, und
     compiliere ihn entsprechend ``Nr. 4)''.


  ·  Mein Rechner auf der einen Seite der Bridge kann den auf der
     anderen nicht anpingen!


     1. Ist die Bridge eingeschaltet ('brcfg -ena' erledigt das)?  brcfg
        sollte dann mit 'bridging is ENABLED' antworten.

     2. Sind alle Karten im promiscous-mode? Falls unklar, bemühe man
        den Befehl ifconfig. Für jede Karte sollte das PROMISC-Flag
        gesetzt sein.

     3. Verwendet man Ethernet-Karten, die an verschiedene Netzwerktypen
        angeschlossen werden können, stelle man sicher, daß der richtige
        Anschluß aktiviert ist. Im Erstfall hilft sicher das mit der
        Karte mitgelieferte Setup-/Konfigurations- Programm.

  ·  Ich kann von der Bridge aus mit telnet/ftp keinen anderen Rechner
     erreichen!

     Ganz einfach: Die Netzwerkkarten der Bridge besitzen keine IP
     Adressen, da sie gemäß Standard ein transparenter Teil des
     Netzwerkes sind.

  ·  Was muß ich machen um den routing-Pfad festzulegen?

     Gar nichts! Der bridging code im Kernel verwaltet alles Notwendige.
     Um die Ethernet-Adressen zu sehen, die die Bridge erkannt hat, kann
     man den Debug-Modus des brcfg-Programms verwenden:


       brcfg -deb





  ·  Die Bridge scheint zu funktionieren, aber warum zeigt traceroute
     sie nicht als Teil des Netzwerkes?
     Auf Grund der ursprünglichen Definition einer Brigde sollte
     traceroute die Bridge nicht zeigen. Noch einmal: Die Bridge ist ein
     transparenter Baustein des Netzwerkes.


  ·  Muß IP_FORWARD in den Kernel compiliert werden?

     Nein! Der bridging code des Kernels kümmert sich um den Transport
     der packets. IP_FORWARD wird nur für einen Gateway benötigt, dessen
     Netzwerkkarten an IP Adressen gebunden sind.


  ·  Warum sind die physikalischen Ethernet-Adressen für Port 1 und Port
     2, laut brcfg-Programm, identisch? Sollten sie sich nicht
     unterscheiden?

     Nein! Der bridging code weist jedem Port der Bridge dieselbe
     physikalische Ethernet-Adresse zu.


  3.  Ausblicke

  Dies ist die erste und zugegebener Maßen ziemlich dünne Version des
  deutschen Bridging mini-HOWTO. Um das Ganze mit mehr Leben zu füllen,
  sind als Erweiterungen geplant:

  1. Darstellung der Unterschiede der Installation der Bridge bei
     verschiedenen Distributionen. Von mir festgelegte Reihenfolge der
     Dringlichkeit dabei:

       S.u.S.E. - DLD - RedHat - andere


  2. Begriffsbestimmungen.

  3. Erklärung von Fehler-/ Debug-Meldungen.

  4. hmmm.... mal sehen.

     Über

  ·  Anregungen,

  ·  Kritik,

  ·  Mail von jedem, der schon vor einem Problem mit dieser Bridge
     stand, und es gelöst hat,

  ·  Mail von jedem, der vor einem Problem mit dieser Bridge steht und
     es noch nicht gelöst hat

     würde ich mich sehr freuen.