Kapitel 12. Netzwerke

12.1. Woher kann ich Informationen über “Diskless Booting” bekommen?
12.2. Kann eine FreeBSD-Maschine als Netzwerkrouter genutzt werden?
12.3. Kann ich meine Windows®-Maschine über FreeBSD ans Internet anbinden?
12.4. Unterstützt FreeBSD SLIP und PPP?
12.5. Unterstützt FreeBSD NAT oder Masquerading?
12.6. Wie verbinde ich zwei FreeBSD-Maschinen mit PLIP über die parallele Schnittstelle?
12.7. Wie kann ich Ethernet-Aliase einrichten?
12.8. Wie bringe ich meine 3C503 dazu, den anderen Anschluss zu benutzen?
12.9. Warum habe ich Probleme mit NFS und FreeBSD?
12.10. Warum kann ich per NFS nicht von einer Linux®-Maschine mounten?
12.11. Warum kann ich per NFS nicht von einer Sun™-Maschine mounten?
12.12. Warum meldet mir mountd auf meinem FreeBSD NFS-Server ständig “can't change attributes” und “bad exports list”?
12.13. Warum habe ich Probleme, per PPP mit NeXTStep-Maschinen zu kommunizieren?
12.14. Wie aktiviere ich die Unterstützung für IP-Multicast?
12.15. Welche Netzwerkkarten basieren auf dem DEC-PCI-Chipsatz?
12.16. Warum muss ich für Hosts auf meiner Site den FQDN benutzen?
12.17. Wieso erhalte ich bei allen Netzwerkoperationen die Meldung “Permission denied”?
12.18. Warum kann ich bei ipfw(8) einen Dienst nicht mit “fwd” auf eine andere Maschine umlenken?
12.19. Wie kann ich Service-Requests von einer Maschine auf eine andere umleiten?
12.20. Woher kann ich ein Bandbreiten-Managementtool bekommen?
12.21. Warum erhalte ich die Meldung “/dev/bpf0: device not configured”?
12.22. Habe ich, analog zum smbmount von Linux, eine Möglichkeit, auf ein freigegebenes Laufwerk einer Windows-Maschine in meinem Netzwerk zuzugreifen?
12.23. Was bedeutet die Meldung “Limiting icmp/open port/closed port response” in meinen Logfiles?
12.24. Was bedeutet die Meldung “arp: unknown hardware address format”?
12.25. Warum sehe ich ständig Nachrichten wie: “192.168.0.10 is on fxp1 but got reply from 00:15:17:67:cf:82 on rl0” und wie stelle ich das ab?

12.1. Woher kann ich Informationen über “Diskless Booting” bekommen?

“Diskless Booting” bedeutet, dass die FreeBSD-Maschine über ein Netzwerk gebootet wird und die notwendigen Dateien von einem Server anstatt von der Festplatte liest. Vollständige Details finden Sie im Handbucheintrag über den plattenlosen Betrieb.

12.2. Kann eine FreeBSD-Maschine als Netzwerkrouter genutzt werden?

Ja. Genaue Informationen zu diesem Thema finden Sie im Abschnitt Gateways und Routen des Handbuchkapitels Weiterführende Netzwerkthemen.

12.3. Kann ich meine Windows®-Maschine über FreeBSD ans Internet anbinden?

Personen, die diese Frage stellen, haben typischerweise zwei PCs zu Hause: einen mit FreeBSD und einen mit einer Windows-Variante. Die Idee ist, die FreeBSD-Maschine an das Internet anzubinden, um in der Lage zu sein, von der Windows-Maschine über die FreeBSD-Maschine auf das Internet zuzugreifen. Das ist tatsächlich nur ein Spezialfall der vorherigen Frage.

Das User-Mode ppp(8) von FreeBSD kennt die Option -nat. Wenn Sie ppp(8) mit der Option -nat starten, in /etc/rc.conf die Variable gateway_enable auf YES setzen und Ihre Windows-Maschine korrekt konfigurieren, sollte das hervorragend funktionieren. Weitere Informationen erhalten Sie in der Hilfeseite ppp(8) oder im Abschnitt User-PPP des Handbuchs.

Wenn Sie Kernel-Mode PPP verwenden oder ihre Verbindung zum Internet über Ethernet erstellt wurde, müssen Sie natd(8) verwenden. Weitere Informationen dazu finden Sie im natd-Abschnitt des Handbuchs.

12.4. Unterstützt FreeBSD SLIP und PPP?

Ja. Lesen Sie die Manualpages slattach(8), sliplogin(8), pppd(8) und ppp(8). ppp(8) und pppd(8) liefern Unterstützung sowohl für eingehende, als auch ausgehende Verbindungen. sliplogin(8) behandelt ausschließlich eingehende Verbindungen und slattach(8) behandelt ausschließlich ausgehende Verbindungen.

Diese Programme werden im Abschnitt PPP und SLIP des Handbuchs beschrieben.

Falls Sie nur durch einen “Shell-Account” Zugang zum Internet haben, sehen Sie sich einmal das Package net/slirp an. Es kann Ihnen (eingeschränkten) Zugang zu Diensten wie ftp und http direkt von Ihrer lokalen Maschine aus ermöglichen.

12.5. Unterstützt FreeBSD NAT oder Masquerading?

Ja. Wenn Sie NAT über eine User-PPP-Verbindung einsetzen wollen, lesen Sie bitte den User-PPP Abschnitt des Handbuchs. Wollen Sie NAT über eine andere Verbindung einsetzen, lesen Sie bitte den NATD-Abschnitt des Handbuchs.

12.6. Wie verbinde ich zwei FreeBSD-Maschinen mit PLIP über die parallele Schnittstelle?

Dieses Thema wird im Handbuch-Kapitel PLIP behandelt.

12.7. Wie kann ich Ethernet-Aliase einrichten?

Wenn sich die zweite Adresse im gleichen Subnetz befindet wie eine der Adressen, die bereits auf dem Interface konfiguriert sind, benutzen Sie netmask 0xffffffff in Ihrer ifconfig(8) Befehlszeile, wie z.B.:

# ifconfig ed0 alias 192.0.2.2 netmask 0xffffffff

Andernfalls geben sie die Adresse und die Netzmaske so an, wie sie es bei einem normalen Interface auch tun würden:

# ifconfig ed0 alias 172.16.141.5 netmask 0xffffff00

Sie können mehr darüber im FreeBSD Handbuch nachlesen.

12.8. Wie bringe ich meine 3C503 dazu, den anderen Anschluss zu benutzen?

Wenn Sie die anderen Anschlüsse benutzen möchten, müssen Sie einen zusätzlichen Parameter in der ifconfig(8)-Befehlszeile spezifizieren. Der Standard-Anschluss ist link0. Um den AUI-Anschluss anstelle des BNC-Anschlusses zu verwenden, benutzen Sie link2. Diese Angaben sollten durch Benutzung der Variablen ifconfig_* in der Datei /etc/rc.conf spezifiziert werden.

12.9. Warum habe ich Probleme mit NFS und FreeBSD?

Gewisse PC-Netzwerkkarten sind (um es gelinde auszudrücken) besser als andere und können manchmal Probleme mit netzwerkintensiven Anwendungen wie NFS verursachen.

Weitere Informationen zu diesem Thema finden Sie im Handbucheintrag zu NFS.

12.10. Warum kann ich per NFS nicht von einer Linux®-Maschine mounten?

Einige Versionen des NFS-Codes von Linux akzeptieren Mount-Requests nur von einem privilegierten Port. Versuchen Sie den folgenden Befehl:

# mount -o -P linuxbox:/blah /mnt

12.11. Warum kann ich per NFS nicht von einer Sun™-Maschine mounten?

Sun Workstations mit SunOS™ 4.X akzeptieren Mount-Requests nur von einem privilegierten Port. Versuchen Sie dieses Kommando:

# mount -o -P sunbox:/blah /mnt

12.12. Warum meldet mir mountd auf meinem FreeBSD NFS-Server ständig “can't change attributes” und “bad exports list”?

Die häufigste Ursache für dieses Problem ist, dass Sie den Aufbau der exports(5) nicht oder nicht richtig verstanden haben. Überprüfen Sie Ihre exports(5) und lesen das Kapitel NFS im Handbuch, speziell den Abschnitt Konfiguration.

12.13. Warum habe ich Probleme, per PPP mit NeXTStep-Maschinen zu kommunizieren?

Versuchen Sie, die TCP-Erweiterung in /etc/rc.conf zu deaktivieren, indem Sie die folgende Variable auf NO setzen:

tcp_extensions=NO

Xylogic's Annex-Maschinen arbeiten hier auch fehlerhaft und Sie müssen die obige Änderung benutzen, um über Sie Verbindungen herzustellen.

12.14. Wie aktiviere ich die Unterstützung für IP-Multicast?

Multicast-Host-Funktionen werden standardmäßig von FreeBSD unterstützt. Wenn Sie Ihre Maschine als Multicast-Router betreiben wollen, müssen Sie Ihren Kernel mit der Option MROUTING neu kompilieren und mrouted(8) starten. Wenn Sie die Variable mrouted_enable in der Datei /etc/rc.conf auf YES setzen, wird mrouted(8) während des FreeBSD-Systemstarts automatisch gestartet.

Anmerkung: In aktuellen Versionen von FreeBSD sind die Programme mrouted(8), der Multicast Routing Dienst, map-mbone(8) und mrinfo(8) nicht mehr im Basissystem enthalten. In der FreeBSD Ports-Sammlung sind diese Programme unter net/mrouted erhältlich.

MBONE-Tools sind in ihrer eigenen Ports-Kategorie mbone verfügbar. Schauen Sie dort nach, wenn Sie die Konferenztools vic und vat suchen!

12.15. Welche Netzwerkkarten basieren auf dem DEC-PCI-Chipsatz?

Hier ist eine von Glen Foster zusammengetragene Liste mit einigen aktuellen Ergänzungen:

Tabelle 12-1. Netzwerkkarten mit DEC-PCI-Chipsatz

Vendor Model
ASUS PCI-L101-TB
Accton ENI1203
Cogent EM960PCI
Compex ENET32-PCI
D-Link DE-530
Dayna DP1203, DP2100
DEC DE435, DE450
Danpex EN-9400P3
JCIS Condor JC1260
Linksys EtherPCI
Mylex LNP101
SMC EtherPower 10/100 (Modell 9332)
SMC EtherPower (Model 8432)
TopWare TE-3500P
Znyx (2.2.X) ZX312, ZX314, ZX342, ZX345, ZX346, ZX348
Znyx (3.X) ZX345Q, ZX346Q, ZX348Q, ZX412Q, ZX414, ZX442, ZX444, ZX474, ZX478, ZX212, ZX214 (10mbps/hd)

12.16. Warum muss ich für Hosts auf meiner Site den FQDN benutzen?

Lesen Sie die Antwort im FreeBSD Handbook.

12.17. Wieso erhalte ich bei allen Netzwerkoperationen die Meldung “Permission denied”?

Dieses Problem kann auftreten, wenn Sie einen Kernel mit der Option IPFIREWALL erstellt haben. In der Voreinstellung werden alle Pakete, die nicht explizit erlaubt wurden, blockiert.

Falls sie Ihr System unbeabsichtigt als Firewall konfiguriert haben, können Sie die Netzwerkfunktionalität wiederherstellen, indem Sie als root folgendes eingeben:

# ipfw add 65534 allow all from any to any

Sie können in /etc/rc.conf auch firewall_type="open" setzen.

Weitere Informationen über die Konfiguration einer FreeBSD-Firewall finden Sie im Kapitel Firewalls des Handbuchs.

12.18. Warum kann ich bei ipfw(8) einen Dienst nicht mit “fwd” auf eine andere Maschine umlenken?

Der wahrscheinlichste Grund ist, dass Sie Network Address Translation (NAT) brauchen und nicht die einfache Weiterleitung von Pakete. Die “fwd” Anweisung macht genau das, was da steht: Sie leitet Pakete weiter; die Daten in den Paketen werden aber nicht verändert. Ein Beispiel:

01000 fwd 10.0.0.1 from any to foo 21

Wenn ein Paket mit dem Ziel foo die Maschine mit dieser Regel erreicht, wird das Paket an 10.0.0.1 weitergeleitet; die Zieladresse im Paket lautet aber immer noch foo! Die Zieladresse wird nicht in 10.0.0.1 geändert. Die meisten Rechner werden allerdings Pakete verwerfen, wenn die Zieladresse des Paketes nicht mit der Adresse des Rechners übereinstimmt. Das ist der Grund, warum eine “fwd” Regel oft nicht den Effekt hat, den der Benutzer wollte. Dieses Verhalten ist aber kein Fehler, sondern erwünscht.

Wenn Sie einen Dienst auf eine andere Maschine umleiten wollen, sollten Sie sich den FAQ-Eintrag über die Umleitung von Diensten oder die Online-Hilfe zu natd(8) durchlesen. Auch in der Ports Sammlung sind diverse Hilfsprogramme für diesen Zweck enthalten.

12.19. Wie kann ich Service-Requests von einer Maschine auf eine andere umleiten?

Sie können FTP-Requests (und andere Dienste) mit dem Port sysutils/socket umleiten. Ersetzen sie die Befehlszeile für den Dienst einfach so, dass stattdessen socket aufgerufen wird, zum Beispiel so:

ftp stream tcp nowait nobody /usr/local/bin/socket socket ftp.example.com ftp

wobei ftp.example.com und ftp entsprechend der Host und der Port sind, wohin umgeleitet werden soll.

12.20. Woher kann ich ein Bandbreiten-Managementtool bekommen?

Für FreeBSD gibt es drei Bandbreiten-Managementtools. dummynet(4) ist als Teil von ipfw(4) in FreeBSD integriert. ALTQ ist in FreeBSD Bestandteil von pf(4). Bei Bandwidth Manager von Emerging Technologies handelt es sich hingegen um ein kommerzielles Produkt.

12.21. Warum erhalte ich die Meldung “/dev/bpf0: device not configured”?

Der Berkeley-Paket-Filter (bpf(4)) muss in den Kernel eingebunden werden, bevor er von einem Programme aus genutzt werden kann. Fügen Sie folgendes zu Ihrer Kernelkonfigurationsdatei hinzu und erstellen Sie einen neuen Kernel:

device bpf     # Berkeley Packet Filter

12.22. Habe ich, analog zum smbmount von Linux, eine Möglichkeit, auf ein freigegebenes Laufwerk einer Windows-Maschine in meinem Netzwerk zuzugreifen?

Benutzen Sie die Kernel-Erweiterungen und Benutzerprogramme aus dem Programmpaket SMBFS. Das Paket und weitergehende Informationen sind unter mount_smbfs(8) im Basissystem verfügbar.

12.23. Was bedeutet die Meldung “Limiting icmp/open port/closed port response” in meinen Logfiles?

Mit dieser Meldung teilt Ihnen der Kernel mit, dass irgend jemand versucht, ihn zur Generierung von zu vielen ICMP oder TCP reset (RST) Antworten zu provozieren. ICMP Antworten sind oft das Ergebnis von Verbindungsversuchen zu unbenutzten UDP Ports. TCP Resets werden generiert, wenn jemand versucht, eine Verbindung zu einem ungenutzten TCP Port aufzubauen. Die Meldungen können unter anderem durch die folgenden Ereignisse ausgelöst werden:

  • Denial of Service (DoS) Angriffe mit der Brechstange (und nicht durch Angriffe mit einzelnen Paketen, die gezielt eine Schwachstelle des Systems ausnutzen sollen).

  • Port Scans, bei denen versucht wird, Verbindungen zu einer großen Anzahl von Ports (und nicht nur einigen bekannten Ports) herzustellen.

Die erste Zahl gibt an, wie viele Pakete vom Kernel ohne das Limit versendet worden wären; die zweite Zahl gibt das Limit an. Sie können das Limit mit Hilfe der sysctl-Variable net.inet.icmp.icmplim einstellen. Im Beispiel wird das Limit auf 300 Pakete pro Sekunde gesetzt:

# sysctl -w net.inet.icmp.icmplim=300

Wenn Sie zwar die Begrenzung benutzen möchten, aber die Meldungen nicht in Ihren Logfiles sehen möchten, können Sie die Meldungen mit der sysctl-Variable net.inet.icmp.icmplim_output abschalten:

# sysctl -w net.inet.icmp.icmplim_output=0

Falls Sie die Begrenzung ganz abschalten wollen, können Sie die Sysctl-Variable net.inet.icmp.icmplim auf 0. Wir raten Ihnen aus den oben genannten Gründen dringend von diesem Schritt ab.

12.24. Was bedeutet die Meldung “arp: unknown hardware address format”?

Ein Gerät im lokalen Ethernet verwendet eine MAC-Adresse in einem Format, das FreeBSD nicht kennt. Der wahrscheinlichste Grund ist, dass jemand Experimente mit einer Ethernet-Karte anstellt. Die Meldung tritt sehr häufig in Netzwerken mit Cable Modems auf. Die Meldung ist harmlos und sollte die Performance Ihres Systems nicht negativ beeinflussen.

12.25. Warum sehe ich ständig Nachrichten wie: “192.168.0.10 is on fxp1 but got reply from 00:15:17:67:cf:82 on rl0” und wie stelle ich das ab?

Weil ein Paket unerwartet von ausserhalb des Netzwerks empfangen wurde. Um die Nachrichten abzustellen, ändern Sie net.link.ether.inet.log_arp_wrong_iface auf 0.

Wenn Sie Fragen zu FreeBSD haben, schicken Sie eine E-Mail an <de-bsd-questions@de.FreeBSD.org>.
Wenn Sie Fragen zu dieser Dokumentation haben, schicken Sie eine E-Mail an <de-bsd-translators@de.FreeBSD.org>.