Netzwerk NAT Portforwarding

Post Reply
Message
Author
ixsess

Netzwerk NAT Portforwarding

#1 Post by ixsess »

Hallo,
habe ein kleines Problem was hier bestimmt schnell gelöst wird... hoffe ich.

Und zwar habe ich eine Internetnetzanbindung in einem Uniwohnheim (10Mbit)

Daten:
Netzwerkkarte Internet (eth0)
lokale IP 141.44.198.75
Gateway 141.44.198.200
DNS 141.44.1.2
Mask 255.255.255.0
alle Ports sind offen

Edonkey KaZAa alles läuft megaschnell

Netzwerkkarte Lan (eth1)
ip 192.168.1.1
gateway 141.44.198.200
DNS 141.44.1.2
Mask 255.255.255.0



Ich habe jetzt einen Server an diesen Anschluss eingerichtet und als Router konfiguriet.
Es ist ein 233Mhz Rechner mit 2 Netzwerkkarten und Suse Linux Kernel 2.4.xx.
Iptables usw sind installiert.

Das Ipforwarding-Maskquerading (NAT) klappt super.
IP Internes Netz 192.168.1.1-3
die Clients können ohne Probleme ins Netz..


Das Problem:

Ich möchte gerne den Port 4662 auf den die ankommenden Request´s für Edonkey kommen auf eine lokale IP forwarden, damit ich wieder eine High ID bei Edonkey bekomme.

Regel: Alle eintreffenden Anfragen auf 141.44.198.75 port 4662 auf 192.168.1.2 port 4662 (auf dem Rechner läuft edonkey) weiterleiten.

Wenn diese Weiterleitung nicht aktiv ist verwirft der Router(linux) ja die Anfragen weil er nicht weis wo er sie hinrouten soll.

Wie richte ich das Portforwarding ein???



Auf dem Linux Rechenr läuft ausserdem ab un zu noch ein edonkey server
16.38.p55 lugdunum mit 733 User.
IP 141.44.198.75 tcp port 4661 udp port 4665

Viele dank für die Hilfe...

arno kuenburg

Re: Netzwerk NAT Portforwarding

#2 Post by arno kuenburg »

hi hab bei mir vnc genatet und das schaut so aus
ipaddresse und port musst halt anpassen

iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 5900 --syn -m limit --limit 1/s --limit-burst 1 -j DNAT --to 192.168.0.5

hoffe es hilft
mfg
arno


ixsess

Re: Netzwerk NAT Portforwarding

#4 Post by ixsess »

Ja so habe ich das auch schon Probiert. Aber wo trage ich den "IPtabels DNAT" Befehl ein? und wie sieht das dann aus?

andi

Re: Netzwerk NAT Portforwarding

#5 Post by andi »

am besten in ein bootscript wie /etc/init.d/boot.local

rossi

Re: Netzwerk NAT Portforwarding

#6 Post by rossi »

Den limit würde ich beim Esel weglassen. Auch brauchst Du keine Statusinformationen (-syn, --state NEW, etc). Falls Du iptables auch als Paketfilter benutzt, mußt Du die Ports natürlich noch freigeben. Falls nicht, langt ein
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 4662 -j DNAT --to 192.168.0.5:4662

Falls Du aber an eth0 dein DSL Modem hast, mußt Du statt eth0 natürlich ppp0 angeben.

Ixsess

Re: Netzwerk NAT Portforwarding

#7 Post by Ixsess »

Gebe ich den Befehl einfach nach den Booten in die Konsole ein oder kann ich ihn auch irgendwo eintragen das sich die ganze Sache automatisiert...?
eth0 ist schon richtig.

Detlef Brosius

Re: Netzwerk NAT Portforwarding

#8 Post by Detlef Brosius »

Hallo,

es ist generell zu empfehlen ein iptables "startup"-Script zu schreiben.
Deine Anforderungen werden wachsen. Ein Script könnte so aussehen:

vi /etc/init.d/myNetfilter

############## Script ab hier ##########################
#! /bin/sh

# ein paar Variablen ...
IPTABLES="/usr/bin/iptables"
INT_DEV="eth0"
EXT_DEV="eth1" oder halt "ppp0", wenn DSL-Modem

case "$1" in
start)
# erst mal alles flushen
$IPTABLES -F

# deine Netfilter - Regeln
$IPTABLES ...
$IPTABLES ...

# deine Forwarding - Regeln
$IPTABLES ...
...
...

und

$IPTABLES -t nat -A PREROUTING -i $EXT_DEV -p tcp --dport 4662 -j DNAT --to 192.168.0.5:4662
echo "."
;;
stop)
$IPTABLES -F
echo "."
;;
*)
echo "Usage: /etc/init.d/myNetfilter {start|stop}"
exit 1
esac
exit 0
############## Script bis hier ##########################

Ist das getan, erstelle ja nach Bootlevel (rc3.d bei Ascii, rc5.d bei Grafik, ohne gewähr) zwei symbolische Links (ln –s ...). Die Verzeichnisse rcx.d befinden sich bei Debian unter /etc/ und bei SuSE unter /etc/rc.d/ Bsp. ln –s ../init.d/myNetfilter S99myNetfilter u. ln –s ../init.d/myNetfilter K99myNetfilter. Debian liefert hierfuer auch ein Programm. Name habe ich vergessen.

Ixsess

Re: Netzwerk NAT Portforwarding

#9 Post by Ixsess »

Danke.
Ich werde das am Weekend mal Probieren ob es klappt mit dem Bootscript.
Das mit den Links ist mir noch nicht ganz schlüssig aber ich denke mal das bekomme ich irgendwie hin.
Zumindest is mir das mit den Script klar geworden (etwas)...

Ixsess

Re: Netzwerk NAT Portforwarding

#10 Post by Ixsess »

Wie erstelle ich das Script?
Wie erstelle ich den Link auf das Script?

Sorry wenn ich mich ein bischen dumm anstelle.. Bin noch neu im Umgang mit Linux

gandalf

Re: Netzwerk NAT Portforwarding

#11 Post by gandalf »

Hi leute,
ich habe folgenden befehl eingegeben:

iptables -t nat -A OUTPUT -d $EXT_IP -p tcp --dport 4662 -j DNAT --to $WINPC:4662

geht auch ohne fehlermeldung.
wenn ich aber auf der seite:
http://www.preinheimer.com/cgi-bin/conn ... ontest.cgi

den test mache
bekomme ich einen error on ip ....

dann funktioniert das durchrouten wohl nicht oder ?

gruss gandalf

Alex

Re: Netzwerk NAT Portforwarding

#12 Post by Alex »

Also bei mir hat es genau so wenig funktioniert <img src="http://www.pl-forum.de/UltraBoard/Images/Sad.gif" border="0" align="middle">
Hab sogar mal aus Spass die port 4661:4665 TCP sowie UDP explizit in meiner Filterregel freigegeben, für jede richtung sowie alle
TCP sowie UDP an meine Interne Addresse weitergeleitet.
Regel sah so aus
$IPTABLES -t nat -A PREROUTING -i $devext -p TCP --dport 4661 -j DNAT --to 192.168.0.4:4661
$IPTABLES -t nat -A PREROUTING -i $devext -p TCP --dport 4661 -j DNAT --to 192.168.0.4:4661
$IPTABLES -t nat -A PREROUTING -i $devext -p TCP --dport 4662 -j DNAT --to 192.168.0.4:4662
$IPTABLES -t nat -A PREROUTING -i $devext -p TCP --dport 4662 -j DNAT --to 192.168.0.4:4662
$IPTABLES -t nat -A PREROUTING -i $devext -p TCP --dport 4663 -j DNAT --to 192.168.0.4:4663
$IPTABLES -t nat -A PREROUTING -i $devext -p TCP --dport 4663 -j DNAT --to 192.168.0.4:4663
$IPTABLES -t nat -A PREROUTING -i $devext -p TCP --dport 4664 -j DNAT --to 192.168.0.4:4664
$IPTABLES -t nat -A PREROUTING -i $devext -p TCP --dport 4664 -j DNAT --to 192.168.0.4:4664
$IPTABLES -t nat -A PREROUTING -i $devext -p TCP --dport 4665 -j DNAT --to 192.168.0.4:4665
$IPTABLES -t nat -A PREROUTING -i $devext -p TCP --dport 4665 -j DNAT --to 192.168.0.4:4665

Diese Regeln stehen vor meinen Filterregeln. Aber das sollte wohl keinen Unterschied machen ob vor oder danach, oder?

Mfg
Alex

Alex

Re: Netzwerk NAT Portforwarding

#13 Post by Alex »

Ups da ist mir bei reinkopieren ein Fehler unterlaufen :)
soll natürlich so aussehen
$IPTABLES -t nat -A PREROUTING -i $devext -p TCP --dport 4661 -j DNAT --to 192.168.0.4:4661
$IPTABLES -t nat -A PREROUTING -i $devext -p UDP --dport 4661 -j DNAT --to 192.168.0.4:4661
etc...

Mfg
Alex

Alex

Re: Netzwerk NAT Portforwarding

#14 Post by Alex »

Hi zusammen, jetzt habe ich eine IPTables Regel die 100%ig funzt <img src="http://www.pl-forum.de/UltraBoard/Images/Happy.gif" border="0" align="middle">)
Was ich mir da zusammengebaut hatte (siehe oben) war der größte Mist.

Hier die richtige Regel:
iptables -I FORWARD -d 192.168.x.x -p tcp --dport 4662 -j ACCEPT
iptables -t nat -I PREROUTING -p tcp --dport 4662 -i ppp0 -j DNAT --to 192.168.x.x:4662

Das funktioniert 100%ig

Alex

Post Reply