• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

HowTo: Linux Router in 20 minuten

deltaHF

Newbie
1. lan netzwerkkarte linux -> eth0 -> ip 192.168.0.1

lan netzwerkkarte windows -> 192.168.0.2
subnet -> 255.255.255.0
standardgateway -> 192.168.0.1
dns nr 1 -> 192.168.0.1

2. netzwerkkarte zum dslmodem -> eth1 -> ip 192.168.2.1

3. routing/forwarding (als root)

rcnamed start

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

iptables -t nat -A POSTROUTING -o ppp0 -s 192.168.0.0/16 -j MASQUERADE

iptables -A FORWARD -i ppp0 -d 192.168.0.0/24 -j ACCEPT

iptables -A FORWARD -o ppp0 -p TCP --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

iptables -t nat -A PREROUTING -i ppp0 -p TCP --dport 4662 -j DNAT --to-destination 192.168.0.2
iptables -t nat -A PREROUTING -i ppp0 -p UDP --dport 5662 -j DNAT --to-destination 192.168.0.2
iptables -t nat -A PREROUTING -i ppp0 -p TCP --dport 24500:24505 -j DNAT --to-destination 192.168.0.2

fertig ;)

jetzt sind beide rechner online (linux und windows), muli kann man auf beiden laufen lassen (TCP port linux: 4661 UDP 4672 - TCP port windows: 4662 und UDP 5662 ..

wir sehen auch folgende ports die weitergeleitet werden sollen -> 24500:24505 ..
wofür sind die denn? ganz einfach - ICQ File Transfer (musst auch bei icq geändert werden)..

da iptables rules nach einem reboot gelöscht werden, erstellt ihr nen script, den ihr gleich nachm neustart als root ausführen könnt ->

neue textdatei ->

#!/bin/sh

rcnamed start

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


iptables -t nat -A POSTROUTING -o ppp0 -s 192.168.0.0/16 -j MASQUERADE

iptables -A FORWARD -i ppp0 -d 192.168.0.0/24 -j ACCEPT

iptables -A FORWARD -o ppp0 -p TCP --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

iptables -t nat -A PREROUTING -i ppp0 -p TCP --dport 4662 -j DNAT --to-destination 192.168.0.2
iptables -t nat -A PREROUTING -i ppp0 -p UDP --dport 5662 -j DNAT --to-destination 192.168.0.2
iptables -t nat -A PREROUTING -i ppp0 -p TCP --dport 24500:24505 -j DNAT --to-destination 192.168.0.2

und speichert ihr die unter beliebigen namen, z.B. ipt

script ausführen (als root) ~/ ./ipt

oder ganz einfach die datei /etc/init.d/boot.local bearbeiten ->

/pfad/zumscript/ipt

und speichern .. jetzt wird das ganze beim booten geladen

gruss
delta
 

streif

Newbie
hallo,

hab das ganze zwar noch nicht ausprobiert, aber mir ist aufgefallen, dass ich trotz ISDN ppp0 anstatt ippp0 angeben muss, um keine Fehlermeldung zu erhalten. liegt das daran, dass der Weg ins WWW bei AVM Fritz über CAPI läuft und da intern was an dem Schnittstellen-Namen gebastelt wird ???

dann habe ich bei mir folgende IPs im Netz
192.168.100.110 --> LINUX 8.0 (Router, Server, etc.)

192.168.100.120 --> W2K (Client)
192.168.100.200 --> W98 (Client)

nun hatte ich bei Gateway am Server von 192.168.0.1 geändert auf
192.168.100.110 --> bei ONLINE-Verbindung wurde keine Site mehr gefunden--> hatte allerdings noch keine iptables ausgeführt --> Fehler ?
hab dann den gateway wieder zurück geändert und schon klappte es wieder...
welchen Gateway muss ich den nun angeben, damit LINUX als Router mit o.g. festen IPs funktioniert ???


DANKE
 

streif

Newbie
da bleibt nur noch eines zu sagen:

DANKE DANKE DANKE DANKE DANKE DANKE

hat ganz prima geklappt..............
 
A

Anonymous

Gast
mal ne kleine frage...aehm was macht euer script eigentlich wenn keine regel zu trifft? Ihr solltet doch noch mindestens folgende kleine regel am ende setzen:
iptables -A FORWARD -j DROP
das ergibt dann mehr sinn :p


the_real
*life-is-life*
 

moenk

Administrator
Teammitglied
Über deny und reject kann man ja auch konfessionelle Grundsatzdiskussionen führen:
http://www.iks-jena.de/mitarb/lutz/usenet/Firewall.html#Deny
 

bolshii

Newbie
Auf dem Linux-Rechner laeuft alles super. Aber der XP-Rechner kommt nicht rein. Koennt ihr mir sagen welche der Verbindungen ich konfigurieren muss, damit's auch auf der Windowskiste funzt? Ich habe derzeit Suse 8.2 laufen.

bolshii
 

bolshii

Newbie
Code:
iptables -A FORWARD -o ppp0 -p TCP --tcp-flags SYN, RST SYN -j TCPMSS --clamp-mss-to-pmtu

Bei mir kommt der Fehler: "SYN bad argument" Kann das an Suse 8.2 liegen?

bolshii
 

bolshii

Newbie
Nach andauernden Fehlermeldungen hab ich Linux nochmal neu intstalliert.
Jetzt krieg ich nen Fehler wenn ich rcnamed eingebe. Wie geht denn das auf einmal?

bolshii
 
Oben