Netzwerk: Unterschied zwischen den Versionen

Aus Linupedia.org
Wechseln zu: Navigation, Suche
K (Kaputte Links gelöscht - betrifft wegmigrierte externe Links auf das Forum und auf leere interne Seiten, für die ich Löschanträge gestellt habe.)
 
(45 dazwischenliegende Versionen von 9 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
 
== Grundlagen ==
 
== Grundlagen ==
 
+
* [[TCP/IP und Routing Grundwissen]] Beschreibt Aufzucht und Hege von TCP/IP-Subnetzen. Wer einen Router konfigurieren will, sollte wissen, was ein Subnetz ist.
* [[TCP/IP und Routing Grundwissen]]
+
* [[Kinternet]] – Wie wählt man sich ins Internet ein Anleitung für Newbies
Beschreibt Aufzucht und Hege von TCP/IP-Subnetzen. Wer einen Router konfigurieren will, sollte wissen, was ein Subnetz ist.
 
 
 
* [[Wie wählt man sich ins Internet ein]]
 
Anleitung für Newbies
 
  
 
== Netzwerkgeräte ==
 
== Netzwerkgeräte ==
 
 
* [[Netzwerkkarte]]
 
* [[Netzwerkkarte]]
 
* [[DSL]]
 
* [[DSL]]
 +
* [[Handy mit USB-Kabel als Modem]]
 +
* [[Handy mit Bluetooth als Modem]]
  
 
== Router ==
 
== Router ==
 
+
* [[Internetzugang mit Linux-Rechner als Router]] Beschreibt wie man Linux konfiguriert sodass mehrere Rechner die Internetverbindung eines Linux-Rechners nutzen können.
* [[Internetzugang mit Linux-Rechner als Router]] Beschreibt wie man Linux konfiguriert sodass mehrere Rechner die Internetverbindung eines Linux-Rechners nutzen können.
+
* [[Internet-Zugang ueber Router|Internet-Zugang über Router]] Beschreibt wie man Linux konfiguriert, um über einen Router ins Internet zu gehen.
* [[Internet-Zugang über Router]] Beschreibt wie man Linux konfiguriert, um über einen Router ins Internet zu gehen.
+
* [[Linux-Firewall hinter Hardware-Router]] Beschreibt wie man Linux konfiguriert sodass mehrere Rechner die Internetverbindung eines Linux-Rechners nutzen können. Dabei geht der Linux-Rechner selbst via Router ins Internet, d.h. es sind zwei Router hintereinandergeschaltet.
* [[Linux-Firewall hinter Hardware-Router]] Beschreibt wie man Linux konfiguriert sodass mehrere Rechner die Internetverbindung eines Linux-Rechners nutzen können. Dabei geht der Linux-Rechner selbst via Router ins Internet, d.h. es sind zwei Router hintereinandergeschaltet.
 
  
 
== Probleme ==
 
== Probleme ==
=== [[Tests bei Problemen mit der Internetverbindung]] ===
+
* [[Tests bei Problemen mit der Internetverbindung]] Beschreibt wie man bei Problemen mit der Internetverbindung jene einkreisen kann.
Beschreibt wie man bei Problemen mit der Internetverbindung jene einkreisen kann.
+
* [[Internetverbindungsprobleme_-_IPv6_MTU_DNS | Internetverbindungsprobleme - IPv6 MTU DNS]] Hier werden die üblichen Verdächtigen beschrieben. (ipv6, MTU, DNS-Weiterleitung)
 
+
* [[Probleme bei WLAN mit zweiter Netzwerkkarte]] Wenn man zwei Netzwerkkarten hat, kann man bestimmte Probleme bekommen (z.B. dass eine davon nicht angeschlossen ist, Linux aber versucht darüber zu kommunizieren).
=== [[Internetverbindungsprobleme - IPv6 MTU DNS]] ===
 
Auch wenn man eigentlich alles richtig gemacht hat, klappt's manchmal einfach nicht mit dem Internet. Hier werden die üblichen Verdächtigen beschrieben:
 
* ipv6 ist aktiviert, wird aber sonst nicht verwendet
 
* die MTU ist zu groß
 
* DNS-Weiterleitung im Router funktioniert nicht richtig
 
 
 
=== [[Probleme bei WLAN mit zweiter Netzwerkkarte]] ===
 
 
 
Wenn man zwei Netzwerkkarten hat, kann man bestimmte Probleme bekommen (z.B. dass eine davon nicht angeschlossen ist, Linux aber versucht darüber zu kommunizieren).
 
 
 
=== [[DNS Problem SuSE 9.1 und mit .local Domänen / MDNS]] ===
 
[http://www.linux-club.de/ftopic6067.html DNS Problem SuSE 9.1+ mit .local Domänen / MDNS]
 
 
 
Seit SuSE Linux 9.1 ist standardmäßig Multicast DNS aktiviert was zu Problemen mit der <code>*.local</code> DNS-Zone führt. Leider schlägt Microsoft diese bei der Einrichtung von Active Directory gerne vor.
 
 
 
=== [[Zugangsdaten für verschiedene Internet-Provider]] ===
 
  
 
== Allgemeine Tips ==
 
== Allgemeine Tips ==
 
+
* [[Windows-Tools zur Kommunikation mit Linux]]
=== [[Nützliche Links zum Thema]] ===
+
* [[Wie etwas posten wenn's Netz nicht geht|Wie etwas posten wenn's Netz nicht geht?]]
 
 
=== [[Windows-Tools zur Kommunikation mit Linux]] ===
 
 
 
=== [[Wie etwas posten wenn's Netz nicht geht|Wie etwas posten wenn's Netz nicht geht?]] ===
 
  
 
== Spezielle Hardware und Treiber ==
 
== Spezielle Hardware und Treiber ==
 
+
* [[Infos zu Win Modems]]
=== [[T-Sinusdata unter Linux]] ===
+
* [[pppoe]] – DSL über die Konsole
http://www.linux-club.de/ftopic40729.html
+
* [[O2 Surf Stick]]
 
+
* [[T-Sinus154data]]
=== [[USB-Modem, CDC-Ethernet und SuSE . Problem]] ===
 
http://www.linux-club.de/ftopic45256.html
 
 
 
=== [[Infos zu Win Modems]] ===
 
 
 
=== [[Installation des dsl-Zugangsprogram rp-pppoe]] ===
 
http://www.linux-club.de/ftopic19565.html
 
 
 
=== [[Verbindungsabbrüche bei diversen Webseiten]] ===
 
http://www.linux-club.de/ftopic28540.html
 
beschreibt ein Problem mit 'TCP window scaling and broken routers'
 
 
 
Alternativ empfiehlt es sich, bei Problemen mal zu versuchen, TCP S-ACK (nicht das gleiche wie Window Scaling) auszuschalten
 
 
 
echo 0 >/proc/sys/net/ipv4/tcp_sack
 
  
 
== Firewall im Eigenbau ==
 
== Firewall im Eigenbau ==
 
+
* [[Firewall-Eigenbau-Mini-Howto]]
=== [[Firewall-Eigenbau-Mini-Howto]] ===
+
* [[IP-Tables Skripte fuer Single Host, SMB-Server und Router|IP-Tables Skripte für Single Host, SMB-Server und Router]]
 
 
[[IP-Tables Skripte für Single Host, SMB-Server und Router]]
 
 
 
 
 
Der Paketfilter iptables ist ein sehr komplexer Paketfilter der viele Möglichkeiten bietet.
 
Ein Paketfilter wie iptables arbeitet grundsätzlich auf der 3. und 4. OSI-Schicht, die auch als Vermittlunsschicht (auch Netzwerkschicht, englisch network layer) und der Transportschicht (eng. transport layer) arbeitet.
 
 
 
Was kann man mit diesen Informationen anfangen? Nun zum einen muss man wissen, dass der gesamte Internetverkehr wie wir ihn kennen über Datenpakete organisiert wird. Ein solches Datenpaket ist einfach ein Folge von Bits die hintereinander gesendet werden und bevor die eigentlichen Daten folgen Steuerindormationen in einem Header besitzt. Auf Grund der Komplexität der im Internet eingestzten Technologien werden dabei diese Datenpakete ineinander geschachtelt wie die russischen Matruschkas, die ineinander verschachtelten Puppen. Das bedeutet einfach das in einem Datenpaket das man empfängt Datenpakete ineinander verschachtelt liegen, in einem typischen Fall sind das von außen nach innen Ethernet-Frame, IP-Datagramm, TCP-Segment, HTTP-Request.
 
Der Paketfilter untersucht also ein IP-Datagramm (oder auch ein ICMP-Datagramm) und das dazugehörige UDP-Datagramme oder TCP-Segment in denen Informationen wie Ziel- und Quell IP-Adresse, die Portnummern und der Zustand einer TCP-Verbindung.
 
 
 
Die Portnummer sagen einem Rechner an welchen lauschenden Dienst er ein TCP-Segment schicken soll, so bedeutet beispielsweise der Port 80 dass eine Anfrage an einen Webserver gestellt wurde. Bevor wir uns aber genau anschauen wie IP-Tables arbeitet müssen wir uns noch den Drei-Wege Handshake betrachten. Wirr wollen dabei nicht zu sehr in die technischen Einzelheiten gehen, das kann man sich in entsprechenden Wickepediaartikeln selbst durchlesen, wichtig ist, das zunöchst eine Anfrage für einen Verbindungsaufbau erfolgt, das entsprechende Bit im TCP-Header ist das syn Bit. Wenn der anderer Rechner diesen Port freigeschaltet hat und ein Dienst an ihm horcht dann sendet dieser Rechner ein TCP-Segment mit einer Bestätigung zurück das sogenannte ack-Bit ist gesetzt (ack=Acknowledgement=Bestätigung). Emfängt der erste Rechner diese Bestätigung beginnt er mit der Übertragung. Das ist ganze ist noch etwas komplexer aber für unsere Zwecke reichen diese Informationen.
 
 
 
Man erkennt, dass für einen Dienst wie http also der Transport in zwei Richtungen notwendig ist. Von einem Client zu einem Server und vom Server zurpck zum Client. In den IP-Headern stehen Quell- und Zieladresse in den UDP- bzw. TCP-Headern die Portnummern und zwar auch 2. Die eine, die Zielportnummer ist meist eine sogenannte well-known Nummer die einen konkreten Dienst wie http, pop3 oder smtp anspricht. Die andere ist mit einem konkreten Prozeß auf dem Client verbunden, zum Beispiel einen Webbrowser.
 
 
 
Es gehören also 4 relevante Informationen zu einem Paket, die Rechner und Prozess adressieren, die Quell-IP, die Ziel-IP, die Quellportnummer und die Zielportnummer. Dabei sind diese Informationen davon abhängig ob das Paket vom Client zum Server oder vom Server zum Client geschickt wird. Betrachten wir das in einem Beispiel. Ein Webbrowser verbindet sich mit einem Webserver um eine Website abzurufen. In dem Paket vom Client mit dem Webbrowser ist die Quell-IP die IP des Client, die Ziel-IP die des Webservers (DNS löst dabei die URL in eine IP auf), die Quell-Portnummer irgendeine Nummer zwischen 1023 und 65525, zum Beispiel 15222 und die Zielportnummer 80. Umgekehrt enthalten dann die Pakete vom Webserver zum Browser als Quell-IP die IP des Webservers, als Ziel-IP die des Webbrowsers, als Quellport den Port 80 und als Zielportnummer in unserem Fall die 15222.
 
Zusätzlich enthält der TCP-Header den Status der Verbindung, ist es eine Anfrage, eine Bestätigung oder ein normales Paket das zu einer aufgebauten Verbindung gehört.
 
 
 
Mit diesen Kerninformationen arbeitet der Paketfilter iptables. Durch Regeln (rules) kann der Anwender definieren welche Pakete durchgelassen werden. Wie man diese Regeln erstellt, das schreibt iptables nicht vor, es bietet einfach eine Reihe von Möglichkeiten an. Dabei gibt es verschiedene Strategien, die  nebeneinander existieren. Der Vorläufer von iptables, das ipchain untersuchte nur die IP-Adressen und Portnummern. Man musste also stets in beiden Richtungen sperren, um in inserem Beispiel zu bleiben, sowohl die Pakete vom Client zum Server als auch visa verce.
 
 
 
Mit iptables lassen sich aber auch die Zustände von Verbindungen betrachten. Durch die gesetzten Bits kann man nämlich Neuanfragen von Paketen die zu bestehenden Verbindungen gehören unterscheiden. Diese Fähigkeit wird als stateful inspection (Betrachtung des Zustandes) bezeichnet. Dadurch ist es möglich alle rückwärtigen Pakete, die also zu bestehenden Verbindungen gehören zu erlauben und den Paketfilter so zu betreiben, indem man sich auf die Pakete konzentriert, die einen Verbindungsaufbau initieren. Dieser einfachen Strategie steht auch eine komplexere Strategie gegenüber die auch die zu einer bestehenden Verbindung gehörenden Pakete nicht generell sondern gezielt erlaubt. Diese etwas sichere aber aufwendige Strategie erwartet pro Dienst zwei Regelsätze, die einfache Strategie ein Regelsatz.
 
 
 
Wir betrachten zunächst das einfache Konzept am Bespiel von http. Irgendwo müssen wir die zu bestehenden Verbindungen gehörende Pakete erlauben
 
 
 
 
 
<nowiki>$IPTABLES -A FORWARD -d $LOCAL_NET -p tcp state --state ESTABLISHED,RELATED -j ACCEPT</nowiki>
 
 
 
Hier steht also: Erlaube (<nowiki>-j accept</nowiki>) alle Paketen den Transport, die über diese Firewall laufen (<nowiki>FORWARD</nowiki>) und ins lokale Netz wollen (<nowiki>-s $LOCAL_NET</nowiki>) und zu bestehenden Verbindungen gehören (<nowiki>--state STABLISHED,RELATED</nowiki>)
 
 
 
 
 
Die rückwärtigen Verbindungen alleine erlauben jedoch noch keine Verbindung. Jetzt muss auch noch der Verbindungsaufbau und die Verbindungen vom Client zum Server zugelassen werden:
 
 
 
<nowiki>$IPTABLES -A FORWARD -s $LOCAL_NET -p tcp --sport $PORTS_HIGH --dport http -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT</nowiki>
 
 
 
Hier steht also: Erlaube (<nowiki>-j Accept</nowiki>)  alle Pakete den Transport, die aus dem lokalen Netz stammen (<nowiki>-s $LOCAL_NET</nowiki>) die einem neuen Verbundungsaufbau einleiten oder zu einer Verbindung gehören (<nowiki> --state NEW,ESTABLISHED,RELATED</nowiki>) und einen Webserver kontaktieren (<nowiki>--dport http</nowiki> ) und deren Quellportnummern über 1024 liegen (<nowiki> --sport $PORTS_HIGH</nowiki>).
 
 
 
Dagegen sieht die doppelte Strategie so aus, wobei natürlich klar ist das zu jedem erlaubten Port zwei Regeln notwendig sind:
 
 
 
Verbindungen vom Client zum Server:
 
<nowiki>$IPTABLES -A FORWARD -s $LOCAL_NET -p tcp --sport $PORTS_HIGH --dport http -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT</nowiki>
 
 
 
Verbindungen vom Server zum Client:
 
<nowiki>$IPTABLES -A FORWARD -d $LOCAL_NET -p tcp --dport $PORTS_HIGH --sport http -m state --state ESTABLISHED,RELATED -j ACCEPT</nowiki>
 
 
 
 
 
In der zweiten Regel werden also explizit nur die Pakete erlaubt die zu bestehenden http Verbindungen gehören, während bei der ersten Methode alle zu bestehenden Verbindungen gehörende Pakete erlaubt sind.
 
 
 
Für heute mache ich Schluss, den Rest erläutere ich später.
 
  
 
== Diverses ==
 
== Diverses ==
 +
* [[Kanalbuendelung ISDN - permanent!|Kanalbündelung ISDN – permanent!]]
 +
* [[Eth0 und eth1 Tauschen|eth0 und eth1 tauschen]] – Siehe <code>/etc/udev/rules.d/30-net_persistent_names.rules</code>
 +
* [[Netzwerkprotokoll]]
 +
* [[Policy Based Routing]]
 +
* [[Wake On LAN]] – PCs (z.B. Server, Clients) im stromsparenden Betrieb
 +
* [[MjpegStreamer]] - Ein einfaches Hilfsprogramm zum Streamen von Bildern oder Video per HTTP.
 +
* [http://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames/ Predictable Network Interface Names (freedesktop.org)] {{englisch}}: Änderung des Benennungsschemas für Netzwerk-Karten durch [[systemd]]/[[udev]]. Seit dem werden die klassischen Namen wie ''eth0'' oder ''wlan0'' nicht mehr als Standard verwendet. Stattdessen werden nun Namen wie beispielsweise ''enp3s0'' (LAN) oder ''wlp2s0'' (WLAN) verwendet.
  
=== [[Internet routen zu Windowsrechner]] ===
+
== Active FTP vs. Passive FTP, a Definitive Explanation ==
http://www.linux-club.de/viewtopic.php?t=9460 zusammenfassen
+
* http://slacksite.com/other/ftp.html
 
+
* [[UDP]] Das User Datagram Protocol (Abk. UDP) ist ein minimales, verbindungsloses Netzprotokoll, das zur Transportschicht der Internetprotokollfamilie gehört.  
=== [[Kanalbündelung ISDN - permanent!]] ===
 
http://www.linux-club.de/viewtopic.php?t=39732 zusammenfassen
 
 
 
=== [[eth0 und eth1 Tauschen]] ===
 
Siehe <code>/etc/udev/rules.d/30-net_persistent_names.rules</code>
 
 
 
=== [[Router und 9.1]] ===
 
http://www.linux-club.de/viewtopic.php?t=9440 zusammenfassen
 
 
 
=== Active FTP vs. Passive FTP, a Definitive Explanation ===
 
http://slacksite.com/other/ftp.html
 
 
 
 
 
=== [[UDP]] ===
 
Das User Datagram Protocol (Abk. UDP) ist ein minimales, verbindungsloses Netzprotokoll, das zur Transportschicht der Internetprotokollfamilie gehört.  
 
 
----
 
----
[[Netzwerkprotokoll|Zurück zu Netzwerkprotokol]]
+
[[Hauptseite|Zurück zur Hauptseite]]
 
[[Kategorie:Netzwerkgrundlagen]]
 
[[Kategorie:Netzwerkgrundlagen]]
 
[[Category:TCP/IP]]
 
[[Category:TCP/IP]]
 
[[Kategorie:Übersicht]]
 
[[Kategorie:Übersicht]]
 +
<!--Jetzt müsste hier der größte Teil der Links wieder funktionieren-->

Aktuelle Version vom 1. Januar 2014, 16:31 Uhr

Grundlagen

  • TCP/IP und Routing Grundwissen – Beschreibt Aufzucht und Hege von TCP/IP-Subnetzen. Wer einen Router konfigurieren will, sollte wissen, was ein Subnetz ist.
  • Kinternet – Wie wählt man sich ins Internet ein – Anleitung für Newbies

Netzwerkgeräte

Router

  • Internetzugang mit Linux-Rechner als Router – Beschreibt wie man Linux konfiguriert sodass mehrere Rechner die Internetverbindung eines Linux-Rechners nutzen können.
  • Internet-Zugang über Router – Beschreibt wie man Linux konfiguriert, um über einen Router ins Internet zu gehen.
  • Linux-Firewall hinter Hardware-Router – Beschreibt wie man Linux konfiguriert sodass mehrere Rechner die Internetverbindung eines Linux-Rechners nutzen können. Dabei geht der Linux-Rechner selbst via Router ins Internet, d.h. es sind zwei Router hintereinandergeschaltet.

Probleme

Allgemeine Tips

Spezielle Hardware und Treiber

Firewall im Eigenbau

Diverses

Active FTP vs. Passive FTP, a Definitive Explanation

  • http://slacksite.com/other/ftp.html
  • UDP – Das User Datagram Protocol (Abk. UDP) ist ein minimales, verbindungsloses Netzprotokoll, das zur Transportschicht der Internetprotokollfamilie gehört.

Zurück zur Hauptseite