# Problem mit iptables

## Der_Biber

Also...Ich habe folgendes Problem:

Ich versuche gerade einen Router für mein Netzwerk zu konfigurieren.

An eth0 (192.168.0.1) hängt mein DSL-Modem, an eth1 (192.168.1.1) hängt mein Switch mit den anderen Rechner. Ich hab iptables geladen und in der /etc/conf.d/iptables ipv4-forward auf yes gesetzt.

dann:

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

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

iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE

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

ausgeführt und mit "iptables save" gespeichert.

Allerdings kann kein Windows-Rechner (192.168.1.2 - 192.168.1.7) eine Verbindung aufbauen. Den Router kann ich aber von jedem Rechner aus anpingen

Ich hoffe ihr könnt mir weiterhelfen..

Thx

----------

## // .Kn0rki

Kannst du mir evtl mal deine Kernel config zukommen lassen? 

mein iptables will garnicht..

Danke im vorraus..

----------

## Genone

Welchen Kernel hast du installiert ? Mit gentoo-sources-2.4.20-r2 geht bei mir das Masquerading nicht mehr (iptables: Illegal argument), mit vanilla-sources-2.4.20 und gentoo-sources-2.4.19-r10 funktioniert es.

Andere Fehlerquelle könnte die IP-Adresse für eth0 sein, die NIC für das Modem braucht normalerweise keine. Ansonsten poste mal deine Routingtabelle. Bei den Windows-Rechnern hast du auch daran gedacht, den Router als Standard-Gateway einzurichten ?

----------

## Der_Biber

Ich hab den 2.4.20-r2 Kernel von Gentoo, aber iptbales kann ich ausführen und wird auch beim booten geladen..

Windows-Rechner sind auch richtig konfiguriert, Default-Gateway ist gesetzt

Wo kann ich denn die Routing-Tabelle verändern, hab keine Datei gefunden..

----------

## mastAwu

Die Routingtabelle kannst Du mittels route-Befehl anzeigen bzw. verändern. Ob die Tabelle in einer Datei abgelegt ist, weiß ich leider auch nicht.

----------

## Genone

Für die Routing-Tabelle gibts keine Datei, die wird nur im Speicher vorgehalten. Für die Anzeige benutz man am besten folgenden Befehl:

```
/sbin/route -n
```

Ansonsten wäre auch ein Traceroute von einem der Windows-Rechner hilfreich, der Befehl da heisst glaub ich 

```
tracert
```

. Dann sieht man wenigstens wo es hängenbleibt.

----------

## Der_Biber

Ein "route" gibt aus:

Destination       Gateway      Genmask      Flags   Metric   Ref  Use  Iface

217.5.98.139         *        255.255.255.0     UH        0        0     0     ppp0

192.168.1.0           *        255.255.255.0      U         0        0     0     eth1

192.168.0.0           *        255.255.255.0      U         0        0     0     eth0

default        217.5.98.139     0.0.0.0            UG       0         0     0    ppp0

muss ich für eth1 einen Gateway setzten ? und wie ?

----------

## Der_Biber

eine "tracert www.gentoo.org" bei einem Windows-Rechner gibt die Fehlermeldung:

unable to resolve target system name www.gentoo.org

----------

## Dusty

Hi,

ich hatte ähnliche Probleme, die sich in Schall und Rauch auflösten als ich die grsecurity-Optionen für's Netzwerk aufgehoben habe. Da scheint wohl irgendwas nicht so ganz zusammenzupassen.

Gruß

Dusty

----------

## Der_Biber

vielen Dank an alle für die Tipps...

Ich hab jetzt bind installiert und den T-Online DNS-Server unter forwarders eingetragen... jetzt läuft es einwandfrei..

Allerdings läuft der eMule auf den Windows-Rechner nur auf Low-ID..

Vielleicht habt ihr auch hier ein paar Tipps

----------

## A.Stranger

Hi,

um Programme wie emule etc. auf Rechnern einzusetzen, die hinter einem maskierenden Router liegen, musst Du die Portweiterleitung auf dem Router aktivieren. Dies geschieht ebenfalls über iptables:

```
iptables -t nat -A PREROUTING -p <Protokoll> -d <Äussere IP> --dport <Ziel-Port> -j DNAT --to-destination <Zielrechner>:<Zielport>
```

In Deinem speziellen Fall wäre dies wahrscheinlich:

```
iptables -t nat -A PREROUTING -p tcp -i ppp0 --dport 4662 -j DNAT --to-destination <Zielrechner>:4662
```

Die von der obigen Syntax abweichende Option "-i ppp0" solltest Du hier nehmen, da sich Deine offizielle (äussere) IP ständig ändert und demnach unnütz ist. Die Option "-i <interface>" setz einen Filter auf Pakete, die über <Interface> in den Rechner gelangen.

----------

