MASQUERADE die 5000.

Einrichten des lokalen Netzes, Verbindung zu anderen Computern und Diensten.
Antworten
SMHRambo
Beiträge: 51
Registriert: 18.02.2008 17:25:57
Wohnort: Hamburg
Kontaktdaten:

MASQUERADE die 5000.

Beitrag von SMHRambo » 01.09.2010 21:34:30

Hallo ich habe Probleme mit meinem IP Tables Skript.
Ich möchte gerne ein MASQUERADE zwischen zwei(vier) Netzwerken realisieren.
Problem:
Ich kann zwar mit der NAS die FritzBox, einen Rechner im 192.168.13.0 Netzwerk und google.de anpingen, kann aber vom 192.168.13.0 Netzwerk die NAS oder die Server nicht anpingen.

In der Fritzbox wurde für jedes Subnetzwerk eine statische Route hinzugefügt,
wobei eth3 des Server1 als GW angegeben wurde.

Netzwerkaufbau:
INet<--->FritzBox(192.168.13.200)

FritzBox(192.168.13.200) <---192.168.13.0---> Server1(192.168.13.100)

Server1(192.168.14.100) <---192.168.14.1---> Server2(192.168.14.101)

Server1(192.168.15.100) <---192.168.15.1---> Server3(192.168.15.101)

Server1(192.168.16.100) <---192.168.16.1---> NAS(192.168.16.111)
IP-Tables Skript:

Code: Alles auswählen

       HOMEETH="eth3"
       SERVER2ETH="eth2"
       SERVER3ETH="eth1"
       NASETH="eth0"

       echo "1" > /proc/sys/net/ipv4/ip_forward

        $IPTABLES -P INPUT ACCEPT
        $IPTABLES -F INPUT 
        $IPTABLES -P OUTPUT ACCEPT
        $IPTABLES -F OUTPUT 
        $IPTABLES -P FORWARD DROP
        $IPTABLES -F FORWARD 
        $IPTABLES -t nat -F

        $IPTABLES -A FORWARD -i $HOMEETH -o $NASETH -j ACCEPT
        $IPTABLES -A FORWARD -i $HOMEETH -o $SERVER2ETH -j ACCEPT
        $IPTABLES -A FORWARD -i $HOMEETH -o $SERVER3ETH -j ACCEPT

        $IPTABLES -A FORWARD -i $NASETH -o $HOMEETH -j ACCEPT
        $IPTABLES -A FORWARD -i $SERVER2ETH -o $HOMEETH -j ACCEPT
        $IPTABLES -A FORWARD -i $SERVER3ETH -o $HOMEETH -j ACCEPT

        $IPTABLES -t nat -A POSTROUTING -o $HOMEETH -j MASQUERADE

        $IPTABLES -t nat -A POSTROUTING -o $NASETH -j MASQUERADE
        $IPTABLES -t nat -A POSTROUTING -o $SERVER2ETH -j MASQUERADE
        $IPTABLES -t nat -A POSTROUTING -o $SERVER3ETH -j MASQUERADE
Server1:
eth3
IP: 192.168.13.100
NM: 255.255.255.0
GW: 192.168.13.200
DNS: 192.168.13.200

eth2
IP: 192.168.14.100
NM: 255.255.255.0

eth1
IP: 192.168.15.100
NM: 255.255.255.0

eth0
IP: 192.168.16.100
NM: 255.255.255.0
Server2:
eth0
IP: 192.168.14.101
NM: 255.255.255.0
GW: 192.168.14.100
DNS: 192.168.13.200
Server3:
eth0
IP: 192.168.15.101
NM: 255.255.255.0
GW: 192.168.15.100
DNS: 192.168.13.200
NAS:
eth0
IP: 192.168.16.111
NM: 255.255.255.0
GW: 192.168.16.100
DNS: 192.168.13.200
Warum MASQUERADE, da der Server1 über ein AP-Client mit der Fritzbox verbunden ist, und dieser AP-Client nur einen Client weiterleitet, das soll hier Server1 sein, alle anfragen an bzw. von den anderen Servern muss über die IP von Server1 gehen.

Danke schon mal jetzt.

MFG
SMHRambo
Zuletzt geändert von SMHRambo am 03.09.2010 20:15:47, insgesamt 1-mal geändert.

Danielx
Beiträge: 6419
Registriert: 14.08.2003 17:52:23

Re: MASQUERADE die 5000.

Beitrag von Danielx » 03.09.2010 15:41:02

SMHRambo hat geschrieben:In der Fritzbox wurde für jedes Subnetzwerk eine statische Route hinzugefügt,
wobei eth3 des Server1 als GW angegeben wurde.
Warum?
Das wird doch hierdurch unwirksam (oder nicht?):
SMHRambo hat geschrieben:Warum MASQUERADE, da der Server1 über ein AP-Client mit der Fritzbox verbunden ist, und dieser AP-Client nur einen Client weiterleitet, das soll hier Server1 sein, alle anfragen an bzw. von den anderen Servern muss über die IP von Server1 gehen.
Der AP hängt also zwischen FritzBox und Server1?
SMHRambo hat geschrieben:kann aber vom 192.168.13.0 Netzwerk die NAS oder die Server nicht anpingen.
Auch nicht von Server1 (192.168.13.100) aus?
Dass du z.B. von der FitzBox (192.168.13.200) oder den Rechnern, welche direkt an dieser angeschlossen sind (außer Server1) wegen des (vermutlichen, durch diesen komischen AP bedingte) NAT die hinter dem NAT versteckten Rechner (von der FritzBox aus gesehen) nicht pingen kannst dürfte klar sein, denn du kannst deswegen die Rechner hinter Server1 nicht direkt ansprechen, sondern nur über die IP-Adresse von Server1 und einer Port-Weiterleitung des jeweils gewünschten Ports zu einem bestimmten Rechner hinter dem NAT, du kannst ja auch nicht vom Internet aus ohne Port-Weiterleitung die internen Rechner hinter dem NAT deiner FritzBox ansprechen.
SMHRambo hat geschrieben:

Code: Alles auswählen

        $IPTABLES -t nat -A POSTROUTING -o $NASETH -j MASQUERADE
        $IPTABLES -t nat -A POSTROUTING -o $SERVER2ETH -j MASQUERADE
        $IPTABLES -t nat -A POSTROUTING -o $SERVER3ETH -j MASQUERADE
Für was denn das?
SMHRambo hat geschrieben:
eth1
IP: 192.168.15.100
NM: 255.255.255.0

eth0
IP: 192.168.15.100
NM: 255.255.255.0
Warum 192.168.15.100 für zwei verschiedene Schnittstellen?

Gruß,
Daniel

SMHRambo
Beiträge: 51
Registriert: 18.02.2008 17:25:57
Wohnort: Hamburg
Kontaktdaten:

Re: MASQUERADE die 5000.

Beitrag von SMHRambo » 03.09.2010 20:15:13

Hallo,Danielx

1. Also die Statischen Routen müssen eingetragen werden, da die Fritzbox ja nicht weiß das es noch andere Subnetzwerke gibt und wohinter sie hängen.

2. Ja der AP ist im Client Mode und verbindet den Server mit der Fritzboc über WLan. Über diese Methode kann ich den Server ohne Kabel verbinden und WOL nutzen.

Ich sag mal so ich hatte es schon mal hin bekommen, aber nach einer kaputten HDD musste ich den Server neu installieren und nun kriege ich es nicht wieder hin.
Die Auflösung geht so, Anfragen ans Web von der NAS z.B. werden in einem Paket vom Server 1 gepackt und dann an die Fritzbox geschickt.
Antworten gehen automatisch an der Server1 da die Fritzbox denkt es kommt vom Server1 aber der Server1 weiß ja das es keine eigene Anfrage wahr und leitet die Antwort unter der richtigen Adresse an die NAS.
Umgekehrt wenn eine Anfrage von außen an die NAS kommt weiß die Fritzbox, das der gesuchte Client hinter Server1 ist durch die Statischen Routen, dem entsprechen sendet er die Anfrage an den Server1 deshalb ist das mit dem AP egal. Theoretische. Antworten, werden in einem Paket von Server 1 wieder an die Fritzbox gesendet die das Paket auspackt und an den Empfänger weitergibt.

Durch die Statischen Routen macht die Fritzbox nichts anderes als der Server1 er packt die Anfragen in ein Paket was an den Server1 gerichtet ist, der das den wieder verarbeitet.

3.Also ich kann mit dem Server 1 die NAS anpingen. Genauso wie Server 2 und Server 3. Ich kann auch mit dem Server 1 alle Geräte aus dem 192.168.13.0 Netzwerk anpingen.

Wenn ich die Paket zur NAS verfolge bricht er die verbindung bei der Fritzbox ab.
Wenn ich aber ein Paket zum Interfaces 192.168.15.100 des Server schicke kann er mir die komplette Route anzeigen.
Portweiterleitung ist etwas anderes als SNAT. MASQUERADE ist SNAT nur mit dem Plus das es automatische nach der IP der Interfaces weiterleitet. Wenn es nur Portweiterleitung gibt wozu dienen dann statische Routen und Gateways.


4.Ich habe schon so einiges ausprobiert und bei jemand anderes schrieb das man das auch in die andere Richtung machen muss.

5. Das mit eth0 und eth1 ist ein Schreibfehler

Muss ich eigentlich auf dem Server 1 noch eine Route ins andere Netzwerk einstellen???

Ich werde auch noch mal den AP austauschen ich hatte damals einen anderen, eigentlich dürfte das aber egal sein.
Und ich werde zur Vereinfachung eth0,1,2 zu eine Bridge zusammenfassen mal gucken was da raus kommt.

MFG SMHRambo

SMHRambo
Beiträge: 51
Registriert: 18.02.2008 17:25:57
Wohnort: Hamburg
Kontaktdaten:

Re: MASQUERADE die 5000.

Beitrag von SMHRambo » 03.09.2010 23:37:44

Problem hat sich praktisch von selbst gelöst!!!

Hatte zum Test den alten AP dran (DLink) mit dem hatte ich dann nach einem Neustart eine Verbindung.
Danach habe ich nochmal den AP von Conrad angeklemmt und es lief immer noch, selbst nach einem neustart.
Habe dann noch aus Sicherheitsgrunden aus meinem Skript folgenden Code gelöscht:

Code: Alles auswählen

        $IPTABLES -t nat -A POSTROUTING -o $NASETH -j MASQUERADE
        $IPTABLES -t nat -A POSTROUTING -o $SERVER2ETH -j MASQUERADE
        $IPTABLES -t nat -A POSTROUTING -o $SERVER3ETH -j MASQUERADE
Da ich den verdacht habe, das dadurch die Server 2 und Server 3 nicht erkennen können von welchem PC die Anfrage kommt, wenn man nur bestimmten Clients den Zugriff erlauben möchte durch eine Firewall, da dadurch alle Anfragen mit der IP des Server 1 rausgehen.

Neuer Code:

Code: Alles auswählen

IPTABLES="/sbin/iptables"
DEPMOD=/sbin/depmod
MODPROBE=/sbin/modprobe

HOMEETH="eth3"
SERVER2ETH="eth2"
SERVER3ETH="eth1"
NASETH="eth0"
        
        echo "   Aktiviere FORWARDING"
        echo "1" > /proc/sys/net/ipv4/ip_forward

        echo "   Lösche alle alten Regeln und setze neue Standard Regeln"
        $IPTABLES -P INPUT ACCEPT
        $IPTABLES -F INPUT 
        $IPTABLES -P OUTPUT ACCEPT
        $IPTABLES -F OUTPUT 
        $IPTABLES -P FORWARD DROP
        $IPTABLES -F FORWARD 
        $IPTABLES -t nat -F

        echo "    FORWARD: Erlaube Verbindungen von INNEN nach AUSSEN"
        $IPTABLES -A FORWARD -i $HOMEETH -o $NASETH -j ACCEPT
        $IPTABLES -A FORWARD -i $HOMEETH -o $SERVER2ETH -j ACCEPT
        $IPTABLES -A FORWARD -i $HOMEETH -o $SERVER3ETH -j ACCEPT

        echo "   FORWARD: Erlaube Verbindungen von AUSSEN nach INNEN"
        $IPTABLES -A FORWARD -i $NASETH -o $HOMEETH -j ACCEPT
        $IPTABLES -A FORWARD -i $SERVER2ETH -o $HOMEETH -j ACCEPT
        $IPTABLES -A FORWARD -i $SERVER3ETH -o $HOMEETH -j ACCEPT

        echo "   FORWARD: Aktiviere FORWARD Log"
        $IPTABLES -A FORWARD -j LOG

        echo "   Aktiviere SNAT (MASQUERADE) von INNEN nach AUSSEN"
        $IPTABLES -t nat -A POSTROUTING -o $HOMEETH -j MASQUERADE

MFG
SMHRambo

SMHRambo
Beiträge: 51
Registriert: 18.02.2008 17:25:57
Wohnort: Hamburg
Kontaktdaten:

Re: MASQUERADE die 5000.

Beitrag von SMHRambo » 04.09.2010 00:57:16

Leider musste ich feststellen, das damit das Problem doch nicht gelöst ist.
Das anklemmen des Conrad AP-Clients hat nach einer halben stunde wieder dazu geführt, das ich nicht auf die NAS zugreifen konnte.

Damit ein erneutes anschließen des DLink APs ermöglichte den zugriff wieder.

Damit steht fest, das es an dem unterschiedlichen APs liegt.
Ich vermute, das es daran liegt, das der Conrad MZK-MF-150 sein eigenes Linux hat das auch eine NAT funktion einsetzt um die Daten vom LAN Interfaces aufs WLAN Interfaces zu übertragen.
Beim DLink hat der AP nur eine MAC Adresse.
Beim Conrad hat der AP drei MAC Adressen, da er ein WAN, LAN und WLAN Interfaces besitzt, die je nach Modus von der Linux Firewall anders verwaltet werden. Es werden dort auch in der Paket Statistik die folgenden Interfaces angegeben: lo,gre0,eth2,ra0eth2.1,eth2.2 und br0.
Keine Ahnung wie diese im Zusammenhang stehen, aber anscheint macht dieser Zusammenhang mein vorhaben nicht möglich.

Falls jemand noch eine Idee hat, wie ich das trotzdem mit den Conrad Teil lösen könnte sage mir bitte beschied. Danke.

Warum ich das teil von DLink nicht weiter nutzen will, da es Alt ist, nur 54MBit WLan hat, kein N und schon so manche Funktionsstörung verursacht hat.

MFG
SMHRambo

Danielx
Beiträge: 6419
Registriert: 14.08.2003 17:52:23

Re: MASQUERADE die 5000.

Beitrag von Danielx » 04.09.2010 23:16:00

SMHRambo hat geschrieben:1. Also die Statischen Routen müssen eingetragen werden, da die Fritzbox ja nicht weiß das es noch andere Subnetzwerke gibt und wohinter sie hängen.
Schon klar, nur würde das nichts nützen, wenn der AP Pakete in diese Netze nicht durchlassen würde.
SMHRambo hat geschrieben:Die Auflösung geht so, Anfragen ans Web von der NAS z.B. werden in einem Paket vom Server 1 gepackt und dann an die Fritzbox geschickt.
Antworten gehen automatisch an der Server1 da die Fritzbox denkt es kommt vom Server1 aber der Server1 weiß ja das es keine eigene Anfrage wahr und leitet die Antwort unter der richtigen Adresse an die NAS.
Ja, eben NAT.
SMHRambo hat geschrieben:Durch die Statischen Routen macht die Fritzbox nichts anderes als der Server1 er packt die Anfragen in ein Paket was an den Server1 gerichtet ist, der das den wieder verarbeitet.
Nur die Absender- und Empfänger-MAC-Adressen werden umgeschrieben, nicht aber die Absender- und Empfänger-IP-Adressen, ist ja hier kein NAT, es wird nur geroutet.
SMHRambo hat geschrieben:Portweiterleitung ist etwas anderes als SNAT.
Ja, das ist DNAT.
SMHRambo hat geschrieben:Wenn es nur Portweiterleitung gibt wozu dienen dann statische Routen und Gateways.
Was meinst du damit?
SMHRambo hat geschrieben:Muss ich eigentlich auf dem Server 1 noch eine Route ins andere Netzwerk einstellen???
Wie meinst du das?
Server1 kennt durch seine eigenen Schnittstellen eth{0,1,2,3} schon alle beteiligten Subnetze.

Gruß,
Daniel

SMHRambo
Beiträge: 51
Registriert: 18.02.2008 17:25:57
Wohnort: Hamburg
Kontaktdaten:

Re: MASQUERADE die 5000.

Beitrag von SMHRambo » 05.09.2010 23:34:23

Hi Daniel,

Das mit den Portweiterleitung und den Gateways war eine kleine Floskel auf eine Frage von dir oben.
Ich weiß, das der Server 1 die anderen Subnetzwerke kennt, muss ich aber vielleicht ihm sagen, das er Pakete die vom 192.168.13.0 Netzwerk auch in andere Subnetzwerke gesendet werden sollen.

Aber eigentlich hat sich das alles ja jetzt geklärt, da ich weiß, das es am AP liegt.
Vielleicht gibt es eine Möglichkeit das Problem zu lösen, indem ich den Server oder der NAS als Gateway den AP angebe oder so was, oder eine andere Route noch anzugeben.
Keine Ahnung.
Vielleicht hast du eine Idee, denn ich wollte nicht mit Portweiterleitung arbeiten, das ist immer so viel Arbeit, und bedeutet, das ich mit für die ganzen Dienste eine Portliste machen muss.

MFG
SMHRambo

Danielx
Beiträge: 6419
Registriert: 14.08.2003 17:52:23

Re: MASQUERADE die 5000.

Beitrag von Danielx » 06.09.2010 20:08:38

SMHRambo hat geschrieben:muss ich aber vielleicht ihm sagen, das er Pakete die vom 192.168.13.0 Netzwerk auch in andere Subnetzwerke gesendet werden sollen.
Eigentlich nicht, Forwarding aktivieren/zulassen reicht.
SMHRambo hat geschrieben:Vielleicht hast du eine Idee, denn ich wollte nicht mit Portweiterleitung arbeiten, das ist immer so viel Arbeit, und bedeutet, das ich mit für die ganzen Dienste eine Portliste machen muss.
WDS/Bridge.

Gruß,
Daniel

SMHRambo
Beiträge: 51
Registriert: 18.02.2008 17:25:57
Wohnort: Hamburg
Kontaktdaten:

Re: MASQUERADE die 5000.

Beitrag von SMHRambo » 13.09.2010 16:40:18

Das mit der Bridge habe ich schon mal probiert, und zwar mit einer von Netgear nur leider sind die Teile nur geeignet, wenn sie mit einem anderen Netgear Produkt genutzt werden. Da ich aber eine Fritzbox habe geht das nicht.
Das Problem hat sich aber inzwischen gelöst, da der AP von Conrad im Gegensatz zu dem von DLink mit einem Switch betrieben werden kann.
Also hängt nun am AP ein Switch und daran die Server. Und die Server kommen ins INternet und jeder Client im Netz kann auf sie zugreifen.
Mehr will ich ja nicht.
Danke aber für die Hilfe.

Damit kann das Thema geschlossen werden.

MFG

Sascha

Antworten