Sie sind nicht angemeldet.

Lieber Besucher, herzlich willkommen bei: GentooForum.de. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

1

23.01.2004, 00:25

IP-Forward funzt nicht ...

hallöle,

ich mal wieder ;-)
Diesmal hab ich ein prob mit dem IP-Forwarding.
Ich habe in meinem PC 2 Netzwerkkarten.
eth0 mit IP 10.0.0.1
eth1 mit IP 10.0.0.2

An eth0 hängt das DSL-Modem, mit welchem ich ins Netz gehe
An eth1 soll ein zweiter Rechner hängen, welcher meinen Rechner als Gateway nutzt um ins Netz zu kommen. dieser Rechner hat die IP 10.0.0.3.
Um es gleich mal vorweg zu nehmen, die firewall war beim einrichten abgeschalten um Fehlerquellen auszuschalten.

Auf meinem Rechner habe ich das ip-forwarding im kernel eingeschaltet, ein echo "1" nach proc/foo/foobar/ip_forward
(weißgrad den pfad net genau) gesendet.

Auf dem "Gasthost" habe ich als Standartgateway, die 10.0.0.2 (testweise auch mal die 10.0.0.1) eingetragen und als DNS-Server, die DNS-Server von T-Online. Die Domainsuchliste hab ich nach "de" gesetzt.

Vom Gasthost kann ich sowohl eth0, eth1 des Gateways und auch die IP der schnittstelle ppp0 anpingen. was bedeutet, das die packete bis ans "Tor" kommen. Doch es findet erstens keine Namensauflösung mit Webadressen statt und zweitens bekomm ich bei einem Ping auf irgendeine IP aus dem www nur eine "Zeitüberschreitung" oder ein "Network not reachable"
Somit hab ich die Annahme (wie schwer ;-) das kein wirkliches forwarding stattfindet.
Hat jemand nen Plan von Forwarding unter gentoo? unter SuSE hab ichs schon mal für jemanden eingerichtet und das hat einwandfrei gefunzt. Es sei noch gesagt, das programmen wie Snort, portsentry etc die zu ignorierende IP des Gasthost mitgeteilt wurde und bei einem tail auf die logfiles auch keine geblockten packete des gasthost angezeigt wurden.

Danke schon mal für die Hilfe. Ein Link zu ner vernünftigen Erklärung oder einer HowTo würde mir reichen.

Danke schon mal wieder,
der Stefan
geschrieben von City][Sepp

Und schau vor allem mal, ob Du da auch ein richtiges Betriebssystem drauf hast. Oftmals haben die Leute da versehentlich Windows installiert.

2

23.01.2004, 00:27

:oops: oh verdammt .. falsche Rubrik ... wenn das ein Admin sieht, bitte evtl in den Netzwerkbereich verschieben ...thx :oops:
geschrieben von City][Sepp

Und schau vor allem mal, ob Du da auch ein richtiges Betriebssystem drauf hast. Oftmals haben die Leute da versehentlich Windows installiert.

3

23.01.2004, 02:38

Hast Du auf Deinem Router auch eine Default-Route angegeben? Die müßte ungefähr so aussehen:[code:1]bash# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
10.0.0.2 0.0.0.0 255.255.255.0 U 0 0 0 eth1
10.0.0.1 0.0.0.0 255.255.255.0 U 0 0 0 eth0
127.0.0.0 127.0.0.1 255.0.0.0 UG 0 0 0 lo
0.0.0.0 10.0.0.1 0.0.0.0 UG 1 0 0 eth0[/code:1]
Ein einfaches Forwarding dürfte nicht funktionieren, da Du ein eigenes Subnetz für die IP der zweiten NIC des ersten Rechners und der NIC des zweiten Rechner benötigst. Stichwort NAT.

Mein Server hat auf eth0 eine dynamische IP des Providers, und auf eth1 (192.168.0.254) eine statische IP als Gateway für die Clients. Der Client hat auf eth0 (192.168.0.1) eine IP im Adressbereich der eth1 des ersten Rechners.

Schau mal unter dem Thread Aufsetzen eines DHCP-, NAT-, MASQ-Routers. Da hatte ich schon mal eine ähnliche Frage.

Gruß, Inte.

4

23.01.2004, 05:26

Re: IP-Forward funzt nicht ...

Zitat

Original von marbury

Um es gleich mal vorweg zu nehmen, die firewall war beim einrichten abgeschalten um Fehlerquellen auszuschalten.

Auf meinem Rechner habe ich das ip-forwarding im kernel eingeschaltet, ein echo "1" nach proc/foo/foobar/ip_forward
(weißgrad den pfad net genau) gesendet.

Auf dem "Gasthost" habe ich als Standartgateway, die 10.0.0.2 (testweise auch mal die 10.0.0.1) eingetragen und als DNS-Server, die DNS-Server von T-Online. Die Domainsuchliste hab ich nach "de" gesetzt.


Öhm, dass IP Masquerading hast Du auf deinem PC nicht eingeschaltet ?
Netfilter Dokumentation hilft hier weiter.
Oder ein [code:1]iptables -t nat -A POSTROUTING -o ppp0 - j MASQUERADE[/code:1] direkt in [code:1]/etc/ppp/ip-up[/code:1] oder in einer default iptables rules Datei.

Regards,

\sh
Contact me:

jabber: sh@sourcecode.de

5

23.01.2004, 07:55

Habe da Thema nach "Netzwerk und Sicherheit" verschoben hier paßt es besser hin :)

6

27.01.2004, 19:26

ahja ... dann war wohl das MASQ das Problem ... jetz funztz auf jeden fall ohne Firewall.
Jetz hab ich mir 2 Firewall-rules überlegt:
...eine INPUT:

Zitat


iptables -t filter -A INPUT --source 10.0.0.3 --protokol all -j ACCEPT

...erstmal damit ich auf den router komme.
und die zweite:

...eine FORWARD:

Zitat


iptables -t filter -A FORWARD --source 10.0.0.3 ---in-interface eth1 --out_interface ppp0 --protokol all -j ACCEPT


Die beiden rules werden natürlich noch verfeinert ... is nur erstmal obs überhaupt funzt. Und dazu ist zu sagen das die INPUT-rule fehlerfrei arbeitet aber die FORWARD-rule nicht.
Es geht eben drum das die packete von 10.0.0.3 durch den router ins netz "geworfen" werden. Eine OUTPUT-rule hab ich nicht, da momentan alle ausgehenden Verbindungen erlaubt sind.

hat dazu auch jemand ne Idee? danach gehb ich Ruhe :wink:
geschrieben von City][Sepp

Und schau vor allem mal, ob Du da auch ein richtiges Betriebssystem drauf hast. Oftmals haben die Leute da versehentlich Windows installiert.

7

27.01.2004, 21:32

hab jetzt mal die forward-chain komplett auf ACCEPT gesetzt uns alle rules rausgenommen. das geht. ist aber meiner Meinung nach etwas unsicher.

Oder ist das die einzige Möglichkeit um da packete durchzubekommen? wollt es eigentlich so einrichten, das der rechner durch die Firewall durchkommt aber keiner von draußen den Rechner sieht. :?
geschrieben von City][Sepp

Und schau vor allem mal, ob Du da auch ein richtiges Betriebssystem drauf hast. Oftmals haben die Leute da versehentlich Windows installiert.

8

24.02.2004, 12:14

vieleicht hilft dir das FW script weiter:
[code:1]
!/bin/sh
# vim: syntax=sh
DEV_EXT="ppp0"
DEV_INT="eth0"
DEV_DMZ=""
IPTABLES="/usr/sbin/iptables"
ACCEPT="ACCEPT"
case $1 in
start)
iptables -F INPUT
iptables -F FORWARD
iptables -F OUTPUT

## allow using loopback device
$IPTABLES -A INPUT -j "$ACCEPT" -i lo
$IPTABLES -A OUTPUT -j "$ACCEPT" -o lo

## allow everything from Intern
iptables -N intern
iptables -A intern -i $DEV_INT -j $ACCEPT

## create New chain named 'block'
iptables -N block

## append some statements to chain 'block'
iptables -A block -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A block -m state --state NEW -i ! $DEV_EXT -j ACCEPT
iptables -A block -j DROP

## Von INPUT und FORWARD Ketten zu dieser Kette springen
iptables -A INPUT -j block
iptables -A FORWARD -j block

# Maskiere $DEV_EXT
iptables -t nat -A POSTROUTING -o $DEV_EXT -j MASQUERADE

# Verbiete NEW und INVALID ankommende oder weitergeleitete
# Pakete von $DEV_EXT.
iptables -A INPUT -i $DEV_EXT -m state --state NEW,INVALID -j DROP
iptables -A FORWARD -i $DEV_EXT -m state --state NEW,INVALID -j DROP


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

;;
stop)

iptables -F INPUT
iptables -F FORWARD
iptables -F OUTPUT

iptables -F block
iptables -X block
iptables -F intern
iptables -X intern
echo "0" > /proc/sys/net/ipv4/ip_forward

;;
restart)
$0 stop && $0 start
printf "restart Firewall \n"
;;
status)
iptables -L -nv
;;
*)
printf "usage: $0 {start||stop||status||restart}\n"
esac
[/code:1]

Achtung bei pppoe ist das extdev pppoe und keine ethx!


Grüße movimax

9

24.02.2004, 15:02

mal ne offtopic-frage, wieso nimmst du 10.0.0.0/24er IP-Adressen.
Standard ist doch C-Netz 192.168.0.0/24...

isset nich besser, sich an die standards zu halten..?

10

29.02.2004, 13:26

Zitat

Original von manuel

mal ne offtopic-frage, wieso nimmst du 10.0.0.0/24er IP-Adressen.
Standard ist doch C-Netz 192.168.0.0/24...

isset nich besser, sich an die standards zu halten..?


10.x.x.x ist nicht falsch.
192.168.c.d ist wie 10.x.x.x ein RFC Private Ip Address Space for Intranets etc.
Es gibt aber eine unterteilung (damals in a/b/c netze) die die unterschiedlicehn prefixe ausmachen.
192.168.c.h waren fuer kleine netzwerke gedacht, waerend 10.x.x.x für grosse intranets gedacht waren.

RIPEs Document Store wird dir bei Findung der geschichtlichen Erkenntnisse weiterhelfen :)

regards,

\sh
Contact me:

jabber: sh@sourcecode.de