Routing zur Fritzbox über Debian-Rechner

  • Hallo,
    seit mehreren Wochen mache ich nun schon rum mit einem Thema, von dem ich nach Studium mehrerer HowTo's dachte, es im Griff zu haben: Routing in seiner simpelsten Form.
    Um was geht's?
    Mein LinVDR basierter Rechner ist über einen Switch an einem Debian-Sarge-Rechner verbunden (Ethernet). Dieser wiederum ist mit Hilfe eines AVM-WLAN-Stick mit einer 7500 Fritzbox verbunden, die das Tor zur Internet-Welt darstellt.
    Da - so dachte ich- konfiguriere ich mein Debian-Sarge-Rechner doch einfach als Router. Auf dem Rechner wird dazu für den WLAN-Stick + Routing das folgende ausgeführt:



    Auf dem Debian-Sarge-Rechner komme ich danach auch problemlos ins Internet und kann alles an-ping-en, wie ich möchte. Nun zum Routing:
    Die IP-Addressen sind wie folgt vergeben:


    LinVDR-Rechner: 192.168.1.2
    Debian-Sarge (eth0): 192.168.1.3
    Debian-Sarge (wlan0): 192.168.178.21 (über DHCP vergeben)
    Fritzbox: 192.168.178.1


    Der LinVDR-Rechner (eth0) ist über das Subnetz 192.168.1.0 mit dem Debian-Sarge-Rechner (eth0) verbunden, die WLAN-Gegenstellen sind im Subnetz 192.168.178.0 vereinigt. Auf dem Debian-Rechner liest sich die Ausgabe von "route -n" wie folgt:

    Zitat

    Kernel IP Routentabelle
    Ziel Router Genmask Flags Metric Ref Use Iface
    192.168.178.0 0.0.0.0 255.255.255.0 U 0 0 0 wlan0
    192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
    0.0.0.0 192.168.178.1 0.0.0.0 UG 0 0 0 wlan0


    Auf dem LinVDR-Rechner:

    Zitat

    Kernel IP routing table
    Destination Gateway Genmask Flags Metric Ref Use Iface
    192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
    0.0.0.0 192.168.1.3 0.0.0.0 UG 0 0 0 eth0


    Nun endlich das Problem:
    Ich kann auf dem LinVDR-Rechner den Debian-Sarge-Rechner anpingen, auf eth0 (1.3) oder wlan0 (178.21). Aber über die WLAN-Verbindung komme ich nicht rüber, d.h. die Fritzbox erreiche ich nicht vom LinVDR-Rechner. Und das Internet schon mal gar nicht.


    Ich habe den Eindruck, irgendwas simples übersehen zu haben, .. nur was? Wer kann helfen?


    Grüße
    kenwood_vdr


    Wohnzimmer-System: Psile-Gehäuse, yaVDR 0.2, Zotac GeForce 9300 ITX, Intel Pentium E5300, 4GB Ram, Mystique SaTiX-S2 V2 CI Dual
    Früherer Wohnzimmer-Rechner: Kenwood-CD Player (entkernt), mit EPIA ME6000, TT 1.5, Samsung 160 GB, 256 MB RAM , DVD Toshiba SD 1602, AV-Board 1.3, LinVDR 0.7, 1 Papst-Lüfter, trotzdem schön leise :)

  • hi,
    hmm... ich kenn mich da auch nicht so mit aus, aber:


    muss man nicht auch in der fritzbox eine route auf 192.168.1.0 anlegen?
    ansonsten müsstest du ja nat benutzen


    warum willst du überhaupt routen? eine bridge fände ich sinnvoller


    gruß
    neffs

  • Hallo neffs,
    als "Bridge"- hm, was müßte ich dafür ändern? Und eine Route in der Fritzbox anlegen geht wahrscheinlich, allerdings habe ich die Original-Firmware in Benutzung (kein DaniSahne-Patch o.ä.).
    Grüße
    kenwood_vdr


    Wohnzimmer-System: Psile-Gehäuse, yaVDR 0.2, Zotac GeForce 9300 ITX, Intel Pentium E5300, 4GB Ram, Mystique SaTiX-S2 V2 CI Dual
    Früherer Wohnzimmer-Rechner: Kenwood-CD Player (entkernt), mit EPIA ME6000, TT 1.5, Samsung 160 GB, 256 MB RAM , DVD Toshiba SD 1602, AV-Board 1.3, LinVDR 0.7, 1 Papst-Lüfter, trotzdem schön leise :)

  • Hi,


    vielleicht probierst Du es mal mit NAT. Ist nur ein Befehl:


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


    Zum Testen einfach mal als root auf dem Router eingeben.



    Wolfgang

    MSI C847MS-E33, Cine S2 6.0, Zotac GT630 (GK208), dual boot
    Work: yaVDR 0.7 ansible Ubuntu 22.04. Backup: yaVDR 0.5 Ubuntu 12.06


  • Zitat

    vielleicht probierst Du es mal mit NAT. Ist nur ein Befehl:


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


    Genau das ist der richtige Ansatz! Zumindest ein möglicher!


    Das Problem was Du hast, ist folgendes.


    Angenommen, Du schickst einen Ping von deinem LinVDR an die FritzBox. Dann steht die IP des LinVDRs als Absender in dem ICMP-Paket. Dieses Paket wird entsprechend den Routen, die Du richtig gesetzt hast, an den Debian-Server geleitet. Forwarding ist an, also direkt weiter damit an die FritzBox.


    Soweit, so gut, doch das Problem ist, dass die FritzBox Dir natürlich jetzt auch antworten will. und wohin schickt sie das Paket? Ja klar, an die IP des LinVDR im Subnet 192.168.1.0. Leider kennt die FritzBox dieses Subnet nicht (sie liegt ja in 192.178.178.0). Also schickt sie es entweder ins Internet (was ich nicht glaube), oder sie verwirft es einfach, weil 192.168.1.0 Teil des privaten Bereichs der Klasse B-Netze ist.


    Was außer dem Tipp von Wolfgang theoretisch funktionieren könnte, wäre bei der FritzBox auch eine Route für das subnet 192.168.1.0 einzutragen, was alles an den Debian-Rechner weiterleitet. Er selber kennt ja dann den Weg zum LinVDR schon.


    Ansonsten eben, wie Wolfgang schon geschrieben hat, über NAT und Masquerading. Beim Masquerading empfängt der Debian-Rechner den Ping des LinVDR, verschickt ihn aber unter seiner IP-Adresse weiter, und "merkt" sich, dass die Antworten zu dem Paket wieder an den LinVDR geschickt werden sollen. Die FritzBox antwortet also an die IP des Debian-Rechners im Subnet 192.168.178.0, die sie ja kennt, weil sie selber Teil des Subnetzes ist. Wenn dann der Debian-Rechner die Antwort der FritzBox bekommt, schickt er sie weiter an den LinVDR, weil er sich vorher gemerkt hat, dass die Anfrage ja ebenfalls vom LinVDR kam.


    Ob es jedenfalls nur mit dem einen Befehl schon geht, weiss ich nicht ganz. Aber da kann google sicher weiterhelfen. Für NAT und Masquerading brauchst Du jedenfalls iptables im Kernel.


    Viel Erfolg beim Ausprobieren!

  • Hi,
    NAT auf dem Debian Rechner ist nicht unbedingt notwendig. Auf dem Debian Rechner könnte man die Netzwerk-Devices eth0 und wlan0 über eine Bridge zusammenschließen und somit dem LinVDR Rechner auch über DHCP von der Fritzbox eine Adresse zuweisen lassen, oder aber die Netmask für die Ethernetschnittstelle der Fritzbox auf 255.255.0.0 setzen, womit auch alle Pakete für das private Netz dorthin geleitet werden.


    Gruß Darkstar.

    Hardware: Seagate Dockstar@1500MHz, GSS Box DSI 400 SAT>IP Server, VDR 2.1.6 mit Streamdev-Server
    Videoausgabe: RaspberryPi mit MLD-4.0.1-RPi an LG 42LM660

    Einmal editiert, zuletzt von Darkstar ()

  • Hi,


    unbedingt auch der Fritzbox die Route mitteilen!!!
    Habe bei mir einen Netgear FVS318 hinter der Fritzbox 7050 hängen
    (wegen VPN).


    -------------------------------------------------------------------------
    Einstellungen >> System >> Netzwerkeinstellungen >> IP-Routen:



    Statische Routing-Tabelle


    Geben Sie statische Routen in Ihrem lokalen Netzwerk an.
    Diese Einstellung ist nur erforderlich, wenn Ihr lokales
    Netzwerk aus mehreren Subnetzen besteht und diese Subnetze
    nicht direkt mit der FRITZ!Box verbunden sind.


    Aktiv----Netzwerk-------Subnetzmaske----Gateway
    x--------192.168.1.0----255.255.255.0----192.168.1.3


    -------------------------------------------------------------------------


    Gruß - rago

  • Hi,


    Zitat

    Original von kenwood_vdr
    Und eine Route in der Fritzbox anlegen geht wahrscheinlich


    jo, klar, Einstellungen|System|Netzwerkeinstellungen|IP-Routen;


    Habe ich hier auch für diverse Fremdnetze über seperaten ISDN-Router
    und Sperrung der M$-Netze :D

  • Zitat

    Original von Darkstar
    ...oder aber die Netmask für die Ethernetschnittstelle der Fritzbox auf 255.255.0.0 setzen, womit auch alle Pakete für das private Netz dorthin geleitet werden.


    Das könnte klappen, wenn die FritzBox alle Pakete im WLAN per Broadcast raushaut, was sie wahrscheinlich macht. Denn nur so, kommen die Pakete auch beim Debian-Rechner an, der sie dann über die Bridge weiterleiten kann.


    In einem LAN an einem Switch, müsstest Du die statische Route an die IP des LinVDR in jedem Fall über den Debian-Rechner eintragen, da der Switch das Paket ansonsten, wegen der unterschiedlichen MAC-Adressen von Debian-Rechner und LinVDR, an den Debian-Rechner gar nicht weiterleitet. Aber das nur am Rande, falls Du irgendwann man vorhast, noch weitere PCs ins Netzwerk über LAN einzuhängen. Für Deine aktuellen Bedürfnisse dürfte der Vorschlag von Darkstar der bisher einfachste sein.

  • Hallo,
    heijeijei, da habe ich ja richtig viel zum Ausprobieren.
    Ich werde
    a) in der Fritzbox die Route eintragen
    b) den NAT-Befehl ausprobieren
    Mal schauen :)
    Danke!
    Grüße
    kenwood_vdr


    Wohnzimmer-System: Psile-Gehäuse, yaVDR 0.2, Zotac GeForce 9300 ITX, Intel Pentium E5300, 4GB Ram, Mystique SaTiX-S2 V2 CI Dual
    Früherer Wohnzimmer-Rechner: Kenwood-CD Player (entkernt), mit EPIA ME6000, TT 1.5, Samsung 160 GB, 256 MB RAM , DVD Toshiba SD 1602, AV-Board 1.3, LinVDR 0.7, 1 Papst-Lüfter, trotzdem schön leise :)

  • Hallöchen,
    ja, was soll ich sagen. Beides hat geklappt, auf Anhieb und ohne irgendeine Extra-Aktion. Danke auch für die Erklärungen. Das hat nach wochenlangem Gesuche wirklich gut getan :-))
    Grüße
    kenwood_vdr


    Wohnzimmer-System: Psile-Gehäuse, yaVDR 0.2, Zotac GeForce 9300 ITX, Intel Pentium E5300, 4GB Ram, Mystique SaTiX-S2 V2 CI Dual
    Früherer Wohnzimmer-Rechner: Kenwood-CD Player (entkernt), mit EPIA ME6000, TT 1.5, Samsung 160 GB, 256 MB RAM , DVD Toshiba SD 1602, AV-Board 1.3, LinVDR 0.7, 1 Papst-Lüfter, trotzdem schön leise :)

  • wenn du doch eine bridge machen möchtest, dann hast du nur einen ip bereich und du kannst dir den ganzen nat und routing kram sparen


    /etc/network/interfaces

    Code
    iface wlan0 inet manual
    iface eth0 inet manual
    
    
    iface br0 inet dhcp
      bridge_ports eth0 wlan0
      bridge_fd 1
      bridge_stp off
      bridge_hello 1


    und die bisherigen eth0 und wlan0 einträge auskommentieren / löschen.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!