Routing auf gentoo 2.4.22 kernel

Hallo,
ich habe einen gentoo Linux-Server (mozsrv) mit 3 Ethernetkarten, der Arbeitsgruppen jeweils unterschiedliche Subnets miteinander verbinden sollte (zur Zeit sinds blos zwei: 10.17.46.0 + 192.168.0.0). Das tut er auch brav, der Samba Server bedient beide Subnetze verlässlich und tadellos. Folgendes Problem konnte ich allerdings nicht lösen:
Wie kommen die Win95/98/NT/XP-User von 192.168.0.0 an den Internetgateway mit der IP 10.17.46.100? Der mozsrv bezieht das Internet über diese IP (#route gibt dazu aus:
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
10.17.46.0 * 255.255.255.128 U 0 0 0 eth0
192.168.1.0 * 255.255.255.0 U 0 0 0 eth2
192.168.0.0 * 255.255.255.0 U 0 0 0 eth1
loopback mozsrv 255.0.0.0 UG 0 0 0 lo
default 10.17.46.100 0.0.0.0 UG 1 0 0 eth0)
Wie kann ich den mozsrv dazu bewegen, dass er das Internet weitergibt? Liegt die Lösung allein in der Routing-Table oder muss ich mit iptables oder einem anderen tool (port forwarding…) noch etwas einstellen (auf dem gento läuft im Moment keine firewall)?
Wer weiss was’???
Herzlichen Dank für jeden Hinweis,
Franz

Hallo,

Hi,

ich habe einen gentoo

BTW: Dein Problem hat ueberhaupt nichts mit gentoo zu tun.

Subnets […] 10.17.46.0 + 192.168.0.0
Wie kommen die Win95/98/NT/XP-User von 192.168.0.0 an den
Internetgateway mit der IP 10.17.46.100? Der mozsrv bezieht
das Internet über diese IP (#route gibt dazu aus:
Kernel IP routing table

Bitte nutze die PRE-tags. Danke.

> Destination Gateway Genmask Flags Metric Ref Use Iface  
> 10.17.46.0 \* 255.255.255.128 U 0 0 0 eth0  
> 192.168.1.0 \* 255.255.255.0 U 0 0 0 eth2  
> 192.168.0.0 \* 255.255.255.0 U 0 0 0 eth1  
> loopback mozsrv 255.0.0.0 UG 0 0 0 lo  
> default 10.17.46.100 0.0.0.0 UG 1 0 0 eth0)

Wie kann ich den mozsrv dazu bewegen, dass er das Internet
weitergibt? Liegt die Lösung allein in der Routing-Table oder
muss ich mit iptables oder einem anderen tool (port
forwarding…) noch etwas einstellen (auf dem gento läuft im
Moment keine firewall)?

Yo, das tool heisst ‚echo‘:

# echo 1 \>/proc/sys/net/ipv4/ip\_forward

sollte reichen. Darueberhinaus hast Du fuer die Kisten wahrscheinlich keine oeffentlichen IP# sonder willst die RFC1918 beibehalten. Dazu brauchst Du dann tatsaechlich iptables, um masquerading im netfilter anzuschalten. Quick, dirty and untested:

# iptables -t nat -A PREROUTING -j MASQUERADE -i eth1
# iptables -t nat -A PREROUTING -j MASQUERADE -i eth2

Vorsicht: Du willst keine volle Anbindung der internen Rechner ans Internet. Trage Regeln in die FORWARD ein, um diese einzuschraenken.

Wer weiss was’???

Darueberhinaus moechte ich auch Dir die von mir schon so oft propagandierte Anleitung zu iptables ans Herz legen: http://iptables-tutorial.frozentux.net/iptables-tuto…

HTH,
Gruss vom Frank.

Hallo Frank,

vielen Dank für Deinen Beitrag!

echo 1>/proc/sys/net/ipv4/ip_forward sollte reichen.

->dieses hatte ich getan.

iptables -t nat -A PREROUTING -j MASQUERADE -i eth1

iptables -t nat -A PREROUTING -j MASQUERADE -i eth2

Vorsicht: Du willst keine volle Anbindung der internen Rechner
ans Internet. Trage Regeln in die FORWARD ein, um diese
einzuschraenken.

–> meine Box will dazu ein ip_tables modul, das es nicht gibt. Da wird wohl eine Kernel-Kompilierung fällig sein, oder geht auch ein insmod?

Darueberhinaus moechte ich auch Dir die von mir schon so oft
propagandierte Anleitung zu iptables ans Herz legen:
http://iptables-tutorial.frozentux.net/iptables-tuto…

–> Das schaut echt ganz gut aus, werde ich ausdrucken und mir reinziehen. Dann löst sich wahrscheinlich auch so manche momentane Verwirrung und Unsicherheit.

Herzlichen Dank nochmals,
Franz

Hallo,

–> meine Box will dazu ein ip_tables modul, das es nicht
gibt. Da wird wohl eine Kernel-Kompilierung fällig sein, oder
geht auch ein insmod?

Das „insmod ip_tables“ bzw. „modprobe ip_tables“ dürfte gerade die Ursache für diese Fehlermeldung sein.

Du kannst natürlich noch mal ein manuelles insmod oder modprobe versuchen oder die entsprechenden Dateien in

/lib/modules//kernel/net/ipv4/netfilter/

suchen, aber wahrscheinlich kommst Du um’s neu compilieren (mit vorherigem Auswählen einiger netfilter-Module) nicht herum. Das sollte einen Gentoo-User ja nicht abschrecken :wink:

Gruß
Stefan