Das richtige Rounting im Netzwerk
Immer wieder kommt es zu Threads wo der PI als AP oder als VPN Server verwendet werden soll.
Immer wieder die selben Fehler.
Hier soll nun mal kurz erklärt werden wie das Netzwerk funktioniert und wie Pakete ihren Weg finden.
Angenommen wird folgendes Zenario :
Ein bestehendes Heimnetz mit einer Fritzbox, Standart IP 192.168.178.1.
Einen PI der im Fritzbox Netzwerk erreichbar ist, hier mit der statischen IP 192.168.178.20
Jetzt soll aus dem PI ein AP werden welcher mittels hostapd das Netzwerk 10.10.10.0/24 verteilt. Dazu bekommt das WLAN Interface des PI eine statische IP 10.10.10.1
Die Clients in dem PI Wlan die Adressen 10.10.10.2 - 254
Und nun gehen die Probleme los :
1. Ich komme von meinem Notebook ( 10.10.10.2 ) nicht in das Internet.
2. Ich kann von 10.10.10.2 auf 192.168.178.22 zugreifen komme aber nicht ins Internet
OBERSTE REGEL IM NETZWERK :
Es gibt nur ein Default Gateway.
Das Default Gateway wird auch als "Gateway of last resort" bezeichnet, also der letzte Versuch bevor ich aufgebe.
Warum, erklären wir gleich.
Problem 1:
Auf dem Notebook wollen wir das Forum öffnen.
Es geht nicht.
Schauen wir uns an welchen Weg die Pakete nehmen müssen :
10.10.10.2 kennt die Zieladresse 104.28.31.119 nicht, die steht nicht in seinen Routingtabellen.
Erster Fehler: Das routing ist nicht aktiviert, das Paket wird verworfen
Kein Fehler: 10.10.10.1 kennt die Zieladresse 104.28.31.119 nicht, die steht nicht in seinen Routingtabellen. Er hat aber ein Default Gateway ( Defaulkt Route ) konfiguriert. Also nimmt er das Paket und schickt es via eth0 zu 192.168.178.1
192.168.178.1 kennt die Zieladresse 104.28.31.119 nicht, die steht nicht in seinen Routingtabellen. Er hat aber ein Default Gateway ( Defaulkt Route ) konfiguriert. Also nimmt er das Paket und schickt es zu dem Gateway des Provider.
Von hier aus nimmt es seinen Lauf im Internet und das Paket erreicht das Forum.
jetzt macht sich das Paket auf den Rückweg.
Es kommt an der Fritzbox an und sagt :
Hey, ich komme von 104.28.31.119 und will zu 10.10.10.2
Die Fritzbox kratzt sich kurz am Kopf schaut in ihre Routingtabelle und
Zweiter Fehler: findet keine Route zu 10.10.10.0/24
kein Fehler: findet eine Route in der steht : 10.10.100/24 findest du hinter 192.168.178.20
Sie schickt das Paket nun an die 192.168.178.20.
Das Paket kommt nun am PI an. der schaut in seine Routingtabelle und sieht :
Ah 10.10.10.2, das gehört zum 10.10.10.0, da hab ich ein bein drin, ich schick das von eth0 zu wlan0
wlan0 kennt die Zieladresse und stellt das Paket nun zu.
Genau so verhält es sich wenn der PC 192.168.178.21 auf das Notebook 10.10.10.2 zugreifen möchte.
Das Paket wandert zum Gateway, die Fritzbox schaut in Ihre Routingtabelle.
Fehler : Die Fritzbox hat keinen Eintrag für das 10.10.10.0, sie schickt das Paket also an ihr Default Gateway, den Router des ISP. Der sieht das es eine Private Adresse ist und verwirft das Paket.
Kein Fehler Die Fritzbox findet einen Eintrag in der Routingtabelle und schickt das Paket an die dort angegebene Zieladresse 192.168.178.20.
Das Paket landet nun auf dem PI an eth0
Dort geht es wieder los, blick in Routingtabelle.
Treffer ?
JA Das Paket geht von eth0 an wlan0 ( 10.10.10.1 )
Und jetzt kommt der tödliche Fehler :
NEIN Das Paket geht an das default Gatway ( 192.168.178.1 ), kommt da an,
die Fritzbox schaut in Ihre Routingtabelle.
Kein Fehler Die Fritzbox findet einen Eintrag in der Routingtabelle und schickt das Paket an die dort angegebene Zieladresse 192.168.178.20.
Das geht jetzt solange hin und her bis der TTL abgelaufen ist.
PI->FB->PI->FB->PI->FB->PI->FB->PI->FB->PI->FB->PI->FB->PI->FB->PI->FB->PI->FB
Das ganze wird durch NAT, was die FB zum Internet hin macht, etwas komplexer, ändert aber erst mal nix an der Problematik.
Ich hoffe das war verständlich und hilft Fehler zu beseitigen.
Wer Rechtschreibfehler findet darf sie behalten.