View previous topic :: View next topic |
Author |
Message |
Jimini l33t
Joined: 31 Oct 2006 Posts: 605 Location: Germany
|
Posted: Tue Oct 31, 2006 10:02 am Post subject: Gentoo-Rechner als Router betreiben |
|
|
Hallo,
vorab erstmal: ich habe mich jetzt ein paar Stunden durch diverse FAQs und Threads bewegt, aber komme jetzt nicht mehr weiter. Sollte sich dieser Thread daher inhaltlich mit einem anderen überschneiden, wäre ich für einen kurzen Verweis äußerst dankbar.
Außerdem bin ich ein Linux-Anfänger, daher ist es mehr als gut möglich, dass ich trotz aller Mühe diesen oder jenen Anfängerfehler gemacht habe, ich bitte um Nachsicht (:
Nun zu meinem Problem:
Ich habe hier einen alten Rechner, der in Zukunft als Router betrieben werden soll (mein Dlink-Router stürzt sporadisch ab), außerdem will ich den Rechner als FTP-/HTTP-Server nutzen, aber das ist erstmal nebensächlich.
In der Kiste sind 5 Netzwerkkarten verbaut, die folgendermaßen konfiguriert sind:
Quote: | etc/conf.d/net
config_eth0=( "192.168.0.5/24" )
config_eth0=( "192.168.1.1/24" )
config_eth0=( "192.168.1.2/24" )
config_eth0=( "192.168.1.3/24" )
config_eth0=( "192.168.1.4/24" )
|
(eth0 ist mit dem Modem verbunden)
Zum Einwählen ins Internet nutze ich rp-pppoe, eine Verbindung kommt zustande.
Jetzt meine Frage: was muss ich tun, damit meine anderen (WindowsXP-) Rechner über den Router online gehen können? Mein Versuch, im Windows einfach als Gateway "192.168.0.5" einzutragen, brachte nichts - ich bin mir sicher, dass ich ja noch irgendwas beim Gentoo-PC einrichten muss.
Vielen Dank vorab für jeden (konstruktiven) Beitrag.[/b]
MfG Jimini |
|
Back to top |
|
|
doedel Guru
Joined: 05 Feb 2006 Posts: 579 Location: Denmark
|
Posted: Tue Oct 31, 2006 10:20 am Post subject: |
|
|
Es gibt den "Gentoo Home Router Guide" oder so änhlich, den findest du mit google schnell.
Quote: |
In der Kiste sind 5 Netzwerkkarten verbaut, die folgendermaßen konfiguriert sind:
Zitat:
etc/conf.d/net
config_eth0=( "192.168.0.5/24" )
config_eth1=( "192.168.1.1/24" )
config_eth2=( "192.168.1.2/24" )
config_eth3=( "192.168.1.3/24" )
config_eth4=( "192.168.1.4/24" )
(eth0 ist mit dem Modem verbunden)
|
_________________ 1 ha == 1 Hekto-Ar == 1 Hektar |
|
Back to top |
|
|
zworK Guru
Joined: 07 May 2004 Posts: 308
|
Posted: Tue Oct 31, 2006 10:28 am Post subject: |
|
|
Den "Home Router Guide" gibts hier : http://www.gentoo.org/doc/de/home-router-howto.xml
Prinzipiell ist nicht mehr viel zu tun. Du brauchst nur noch IP-Forwarding und Masquerading aktivieren. Durchaus praktisch sind dann noch ein lokaler DHCP sowie DNS Server. Findest du eigentlich alles im Guide. |
|
Back to top |
|
|
think4urs11 Bodhisattva
Joined: 25 Jun 2003 Posts: 6659 Location: above the cloud
|
Posted: Tue Oct 31, 2006 10:35 am Post subject: |
|
|
Das Problem ist (abgesehen von dem was doedel+zworK bereits sagten) das du als Default-GW natürlich eine IP aus dem Netzbereich angeben mußt in dem deine Clients auch selbst liegen. 192.168.0.5 liegt aus Sicht des Clients in einem nicht direkt erreichbaren Netzwerk. _________________ Nothing is secure / Security is always a trade-off with usability / Do not assume anything / Trust no-one, nothing / Paranoia is your friend / Think for yourself |
|
Back to top |
|
|
Jimini l33t
Joined: 31 Oct 2006 Posts: 605 Location: Germany
|
Posted: Tue Oct 31, 2006 10:38 am Post subject: |
|
|
Du meinst wahrscheinlich den Guide hier: http://www.gentoo.org/doc/de/home-router-howto.xml#doc_chap4
Dieses HowTo habe ich auch schon durchgelesen, aber ich kann mir nicht vorstellen, dass
Quote: |
# nano /etc/conf.d/net
Fügen Sie eine Zeile wie die folgende hinzu:
config_eth0=( "192.168.0.1 broadcast 192.168.0.255 netmask 255.255.255.0" )
# rc-update add net.eth0 default
# /etc/init.d/net.eth0 start
|
reichen soll (in meinem Fall natürlich "config_eth1=( "192.168.1.1 broadcast 192.168.1.255 netmask 255.255.255.0" ).
Der Windows-PC hat die IP 192.168.1.9 und als Gateway ist 192.168.1.5 eingetragen. Das Problem ist aber, dass sich die PCs gar nicht erst pingen können, ich muss doch scheinbar einen Fehler beim Router gemacht haben, oder?
Das Kabel ist übrigens in Ordnung.
MfG Jimini
Edit: huch, auf einmal gehts...wenn ich jetzt wüsste, wo der Fehler lag *g* riesigen Dank! |
|
Back to top |
|
|
doedel Guru
Joined: 05 Feb 2006 Posts: 579 Location: Denmark
|
Posted: Tue Oct 31, 2006 10:47 am Post subject: |
|
|
wenn der router 192.168.1.1 hat musst du bei den clients als gateway auch 1.1 angeben, nicht 1.5. _________________ 1 ha == 1 Hekto-Ar == 1 Hektar |
|
Back to top |
|
|
Jimini l33t
Joined: 31 Oct 2006 Posts: 605 Location: Germany
|
Posted: Tue Oct 31, 2006 12:51 pm Post subject: |
|
|
Moah...keine Ahnung, was ich jetzt falsch gemacht habe, aber die PCs können sich nicht mehr pingen. Ich bin nochmal alle Schritte durchgegangen, leider ohne Erfolg.
/etc/conf.d/net:
config_eth0=( "192.168.1.10/24" )
config_eth1=( "192.168.1.1/24" )
config_eth2=( "192.168.1.2/24" )
config_eth3=( "192.168.1.3/24" )
config_eth4=( "192.168.1.4/24" )
Ich bin einige Kombinationen durchgegangen, gebrachat hat es nix. Ich komme halt noch online - nur zwischen dem Windows-PC (192.168.1.9) und dem Linux-Router geht gar nichts :\
MfG Jimini |
|
Back to top |
|
|
think4urs11 Bodhisattva
Joined: 25 Jun 2003 Posts: 6659 Location: above the cloud
|
Posted: Tue Oct 31, 2006 1:00 pm Post subject: |
|
|
mal ganz blöd gefragt wozu hat eth0 überhaupt eine IP? Bei einer PPPoE-Verbindung zum ISP ist die i.d.R. völlig überflüssig.
Mehrere NIC (eth1-4) im gleichen Netzwerkrange (192.168.1.x/24) zu haben ist eh keine so besonders gute Idee, das macht die ganze Konstruktion nur unnötig kompliziert.
ins Diskussionsforum verschoben da eher eine allgemein-technische Frage. _________________ Nothing is secure / Security is always a trade-off with usability / Do not assume anything / Trust no-one, nothing / Paranoia is your friend / Think for yourself |
|
Back to top |
|
|
Jimini l33t
Joined: 31 Oct 2006 Posts: 605 Location: Germany
|
Posted: Tue Oct 31, 2006 1:05 pm Post subject: |
|
|
Also kann ich die config_eth0-Zeile einfach löschen?
Wie könnte ich eth1, eth2, eth3 und eth4 denn besser einrichten? Ich brauche zwar noch nicht diese 4 NICs, 2 aber auf jeden Fall, da ich im Moment auf jeden Fall 2 PCs hier habe, die an dem Router hängen sollen. Später kommen dann höchstwahrscheinlich noch weitere Rechner dazu - ich würde das ganze aber wenn möglich in einem Abwasch erledigen.
MfG Jimini |
|
Back to top |
|
|
firefly Watchman
Joined: 31 Oct 2002 Posts: 5328
|
Posted: Tue Oct 31, 2006 1:08 pm Post subject: |
|
|
tschuldigung wenn ich jetzt so blöd frage, aber wiso benutzt du nicht einen HUP/Switsch um die anderen rechner und den router miteinander zu verbinden? _________________ Ein Ring, sie zu knechten, sie alle zu finden,
Ins Dunkel zu treiben und ewig zu binden
Im Lande Mordor, wo die Schatten drohn. |
|
Back to top |
|
|
Jimini l33t
Joined: 31 Oct 2006 Posts: 605 Location: Germany
|
Posted: Tue Oct 31, 2006 1:11 pm Post subject: |
|
|
Ich würde äußerst ungern Geld für dieses Projekt ausgeben - und mein Dlink-Router ist mir zu instabil. Ich will halt mit einem alten Rechner eine möglichst flexible und zuverlässige Lösung hinbekommen.
MfG Jimini |
|
Back to top |
|
|
think4urs11 Bodhisattva
Joined: 25 Jun 2003 Posts: 6659 Location: above the cloud
|
Posted: Tue Oct 31, 2006 1:27 pm Post subject: |
|
|
eine von mehreren Möglichkeiten wäre auf jeder der eth1-4 ein eigenes Netz zu fahren.
Dadurch kannst du den Traffic jedes einzelnen PCs dahinter sehr dediziert einschränken und überwachen, jeder PC hat 'sein' eigenes Gateway usw.
eine andere Möglichkeit wäre eth1-4 zu bridgen, dadurch verhält sich der PC 'nach hinten raus' quasi wie ein Switch
... wobei man auch sagen muß ein 5/8Port-Switch bewegt sich nun wirklich nicht in einer Preisregion über die man normalerweise großartig nachdenkt... und spätestens ab >8 PCs gehen dir auch langsam die Steckplätze für mehr NICs aus _________________ Nothing is secure / Security is always a trade-off with usability / Do not assume anything / Trust no-one, nothing / Paranoia is your friend / Think for yourself |
|
Back to top |
|
|
Jimini l33t
Joined: 31 Oct 2006 Posts: 605 Location: Germany
|
Posted: Tue Oct 31, 2006 1:30 pm Post subject: |
|
|
Also wäre eine Möglichkeit, das ganze so zu machen:
config_eth1=( "192.168.1.1/24" )
config_eth2=( "192.168.2.2/24" )
config_eth3=( "192.168.3.3/24" )
config_eth4=( "192.168.4.4/24" )
So korrekt?
Was wäre denn die einfachste Möglichkeit - vom Kauf eines Hubs oder Switches mal abgesehen?
MfG Jimini |
|
Back to top |
|
|
Mr_Maniac Guru
Joined: 10 Jun 2004 Posts: 546
|
Posted: Tue Oct 31, 2006 1:31 pm Post subject: |
|
|
Okay...
Nun noch einige Fragen von mir
1. Kannst du deinen D-Link-Router nicht einfach als Hub/Switch nutzen (er muss dann ja nicht routen)
2. Weisst du, welche NIC (Netzwerkkarte) welche IP hat? Ich meine jetzt nicht eth0/1/2 etc., sondern die PHYSIKALISCHEN Karten...
3. Sind die Interfaces auch gestartet und "up" (per "/etc/init.d/net.ethX start", wobei X natürlich die Nummer der entsprechenden Karte ist)?
Zudem sieht die Sektion in /etc/conf.d/net für eth0 (DSL-Modem) bei mir so aus, vielleicht hilft es dir ja ein wenig:
Code: |
config_eth0=( "adsl" )
user_eth0="ANSCHLUSSNUMMERBENUTZERNUMMERMITBENUTZERNUMMER@PROVIDER"
adsl_user_eth0="ANSCHLUSSNUMMERBENUTZERNUMMERMITBENUTZERNUMMER@PROVIDER"
|
Ich habe user_eth0 UND adsl_user_eth0 eingetragen, da ich mir nicht vollkommen sicher war/bin, was von den beiden genutzt wird...
Wenn eth0 nun gestartet wird, wählt sich der PC auch automatisch ein.
Und eth1 (zum LAN) sieht folgendermaßen aus:
Code: |
config_eth1=( "192.168.0.254 netmask 255.255.255.0" )
|
_________________ AMD Ryzen 5900X
64 GB DDR4 RAM
GeForce RTX 3080
Gentoo Linux (most recent stable kernel - amd64)
Windows 11 x64 |
|
Back to top |
|
|
Jimini l33t
Joined: 31 Oct 2006 Posts: 605 Location: Germany
|
Posted: Tue Oct 31, 2006 1:41 pm Post subject: |
|
|
@Mr_Maniac:
1) Klar, das wäre theoretisch möglich. Allerdings ist das Teil wie gesagt nicht das zuverlässigste - auch wenn ich keine Ahnung habe, ob es vielleicht nicht mehr abstürzt, wenn es nicht mehr routet. Allerdings fände ich es irgendwie eleganter, das ausschließlich von der Gentoo-Kiste regeln zu lassen *g*
2) Ehrlich gesagt: nein. Aber ich wäre äußerst glücklich, wenn mir jemand verraten könnte, wie ich rausbekomme, welcher Karte welche IP zugeordnet wird.
3) Laut ifconfig sind alle 5 NICs da - nur wundert mich, dass beim booten immer nur eth1 und eth2 gestartet werden.
Zum DSL:
Die Verbindung ist da, muss allerdings jedes mal mit pppoe-start gestartet werden. Ich werde mich, sobald das Netzwerk steht, dann mal daran setzen und mir deinen Tipp zu Gemüte führen (:
MfG Jimini |
|
Back to top |
|
|
STiGMaTa_ch Veteran
Joined: 28 Dec 2004 Posts: 1686 Location: Rüti ZH / Schweiz
|
Posted: Tue Oct 31, 2006 2:09 pm Post subject: |
|
|
Also um dein Vorhaben zu realisieren brauchst du folgendes:
- Kernel mit Iptables (oder heisst das jetzt ipchains?) Unterstützung.
- Iptables userland Programm.
- aktiviertes Routing.
- Mit dem Routing gibst du an, dass z.B. Anfragen aus dem Netz 192.168.x.y an den Gateway weitergeleitet werden, aber z.B. Anfragen aus 192.168.x.x an 192.168.y.y weitergeleitet werden.
- Mit Iptables konfigurierst du dir NAT (Network Address Translation). Dieses sorgt dafür, dass dein Router eine Tabelle ala (Rechner1 hat Anfrage an IP von Google gestartet) führt. Wenn nun Google an den Rechner was zurücksendet weiss dein Router (Aha, das kommt von Google, dann muss ich das Zeugs an Rechner1 weiterleiten).
- Deine Rechner müssen so konfiguriert sein, dass ihr Gateway dein Router ist.
Am einfachsten wird das, wenn dein Rechner 1 Netzwerkkarte für das Internet und eine Netzwerkkrate für das interne Netz besitzt. Um an diesem internen Netz trotzdem mehrere Rechner anschliessen zu können solltest du einen Hub/Switch davor hängen. Ich habe daheim einen 8Port Surecom Switch welcher seit ca. 5 Jahren mehrheitlich ununterbrochen am werkeln ist. Dieser hat mich damals ca. 10Euro gekostet.
Von deiner Idee 4 Netzwerkkarten für das (interne) Netz zu nutzen würde ich die Finger weg lassen. Nicht dass es nicht möglich ist, aber dir fehlt einfach das Wissen dazu. Und wenn du nicht einmal die einfachsten Netzwerkgrundlagen beherrschst, dann sind Fehler und der Frust vorprogrammiert. Wenn du wie in deinem letzten Beispiel jede Karte in ein eigenes Netzsegment steckst (was richtig und empfehlenswert ist!), dann musst du aber auf dem Router zusätzlich dafür sorgen, dass die einzelnen Segmente untereinader geroutet werden. Ansonsten wir Rechner A im 192.168.1.0 Netz den Rechner im 192.168.2.0 Netz nicht sehen.
Lieber Gruss
STiGMaTa _________________ Ich bin Schuldknappe. Das bedeutet ich bin immer an allem Schuld. Und das nicht zu knapp! | Der alltägliche Familienwahnsinn auf meinem BLOG |
|
Back to top |
|
|
think4urs11 Bodhisattva
Joined: 25 Jun 2003 Posts: 6659 Location: above the cloud
|
Posted: Tue Oct 31, 2006 9:33 pm Post subject: |
|
|
Jimini wrote: | 2) Ehrlich gesagt: nein. Aber ich wäre äußerst glücklich, wenn mir jemand verraten könnte, wie ich rausbekomme, welcher Karte welche IP zugeordnet wird. |
lspci + ifconfig sollten dir anhand der MAC eigentlich sagen können welche Karte welche ist
Jimini wrote: | 3) Laut ifconfig sind alle 5 NICs da - nur wundert mich, dass beim booten immer nur eth1 und eth2 gestartet werden. |
gibt es in /etc/init.d für alle NIC eine net.ethX?
Sind alle 5 mit dem gleichen Chipsatz oder verschiedene? Sind alle verschiedenen Chips im Kernel auch aktiviert? _________________ Nothing is secure / Security is always a trade-off with usability / Do not assume anything / Trust no-one, nothing / Paranoia is your friend / Think for yourself |
|
Back to top |
|
|
zworK Guru
Joined: 07 May 2004 Posts: 308
|
Posted: Wed Nov 01, 2006 12:53 pm Post subject: |
|
|
Mein Router hat 3 Netzwerkkarten, eine für DSL die beiden anderen für 2 C Netze Hausintern. Ob jetzt 3 oder 5 bei dir sollte kein Problem darstellen.
Ich schreib mal auf wie ich jetzt dein Netz konfigurieren würde. Davon ausgehend, dass sich die Gentoo Kiste bereits einwählen kann und selbst Netzzugriff hat.
Wie im Router Guide muss iptables support im Kernel aktiv sein.
Dann DNS-Server sowie iptables installieren : Code: | #emerge dnsmasq iptables |
/etc/conf.d/net
Code: |
config_eth1=( "192.168.1.1/24" )
config_eth2=( "192.168.2.1/24 ")
config_eth3=( "192.168.3.1/24" )
config_eth4=( "192.168.4.1/24" ) |
In /etc/sysctl.conf IP-Forwarding dauerhaft aktivieren
Code: | net.ipv4.ip_forward = 1 |
Wird aber (meines Wissens) nur nach einen Neutstart berücksichtigt. Da aber rebooten uncool ist, machen wir ein
Code: | echo 1 > /proc/sys/net/ipv4/ip_forward |
dnsmasq konfigurieren damit der Dienst nur netzintern lauscht :
In /etc/dnsmasq.conf eintragen
Code: | interface=eth1
interface=eth2
interface=eth3
interface=eth4 |
Starten nicht vergessen Code: | /etc/init.d/dnsmasq start |
Mit iptables Masquerading für eth0 (bzw die Karte für den Netzzugang) dauerhaft aktivieren :
Code: | #/etc/init.d/iptables start
#iptables -A POSTROUTING -t nat -j MASQUERADE -o eth0
#/etc/init.d/iptables save
#rc-update add iptables default |
Ab dieser Stelle sollte der Rechner Router-fähig sein. Praktisch wären noch DHCP Server, Samba (netbios) und eine Firewall.
Da gehe ich jetzt aber nicht drauf ein. Ebenso sollten sich die Clients in den verschiedenen Netzen auch untereinander erreichen können.
Jetzt musst du nur noch die Clients konfigurieren.
Beispiel für Rechner an eth1.
Code: | IP : 192.168.1.2
Netmask : 255.255.255.0
Gateway : 192.168.1.1
DNS-Server : 192.168.1.1 |
Hoffe, ich habe nichts vegessen |
|
Back to top |
|
|
Jimini l33t
Joined: 31 Oct 2006 Posts: 605 Location: Germany
|
Posted: Sat Dec 02, 2006 12:57 pm Post subject: |
|
|
Sorry erstmal, dass ich mich länger nicht gemeldet habe, aber mir stand der Kopf in den letzten Wochen woanders *g*
Jetzt zurück zu meinen Problemen:
Ich habe mir, wie ihr es mir empfohlen habt, einen 5-port-Switch zugelegt. Die Gentoo-Kiste läuft und ist online (habe das mit rp-pppoe gemacht). Iptables-Support ist im Kernel aktiviert, iptables und dnsmasq laufen soweit.
In dem Rechner sind jetzt nur noch 2 Netzwerkkarten verbaut, eth0 ("null") ist mit dem Modem verbunden, eth1 ("192.168.2.1") mit dem Switch, also dem LAN. Zum Test habe ich einen WindowsXP-Rechner an den Switch angeschlossen, so dass ich die Verbindung testen kann. Bei den Einstellungen habe ich mich an zworKs Anleitung gehalten.
Ich liste am besten mal meein Config-Dateien auf:
/etc/dnsmasq.conf
dhcp-range=192.168.2.2,192.168.2.9,24
interface=eth1
(Ist das so korrekt? In meinem LAN sollen IPs zwischen 192.168.2.2 und 192.168.2.9 vergeben werden.)
Wenn ich auf dem Windows-PC in der "Konsole" die IP erneuern lasse, nimmt er die 192.168.2.3 an, als Subnetmask 255.255.255.0.
Nun zu meiner /etc/conf.d/net
config_eth0=( "null" )
config_eth1=( "192.168.2.1/24" )
config_ppp0=( "ppp" )
link_ppp0=( "eth0" )
plugins_ppp0=( "pppoe" )
pppd_ppp0=( "updetach" "defaultroute" "usepeerdns" "lcp-echo-interval 5" "lcp-echo-failure 5" )
So, mein Problem ist jetzt, dass der Windows-Rechner partout nicht online kommt. Aber es besteht eine Verbindung zur Gentoo-Kiste, pingen und automatische IP-Vergabe funktioniert ja. Woran könnte das liegen?
MfG Jimini |
|
Back to top |
|
|
Jimini l33t
Joined: 31 Oct 2006 Posts: 605 Location: Germany
|
Posted: Sat Dec 02, 2006 1:32 pm Post subject: |
|
|
Hat sich erledigt, der Rechner ist online, es lag an den iptables. Jetzt werd ich mich mal an die Feineinstellungen begeben. Ich danke euch für eure Hilfe!
MfG Jimini |
|
Back to top |
|
|
|