Wie kann der Datenverkehr über eine nicht standardmäßige Schnittstelle weitergeleitet werden?

334
Mikhail T.

Ich habe ein ziemlich Vanilla-Heim-LAN mit einem vom Internetanbieter bereitgestellten Router, der DHCP bereitstellt. Der Router verwendet viele seiner Standardeinstellungen unverändert. Das Heimnetzwerk ist 192.168.1.0/24 und der Router selbst ist intern als 192.168.1.1 bekannt.

Ich muss mehrere ähnliche Router konfigurieren, um ihre Standardeinstellungen zu ändern. Einer meiner Computer (auf dem FreeBSD läuft) verfügt über eine freie Ethernet-Schnittstelle ( bce0), und ich habe einen dieser zusätzlichen Router daran angeschlossen. Wie erwartet verwendet dieser Router auch 192.168.1.1. Die Maschine hat jetzt zwei "konfigurierte" Schnittstellen:

  • bce1 - 192.168.1.8, das mit dem "echten" Router verbunden ist und ihn mit dem Internet und dem restlichen Heim-LAN verbindet
  • bce0 - 192.168.1.5, das an den zweiten Router angeschlossen ist, den ich ändern muss, um andere Netzwerkeinstellungen zu verwenden

Wie kann ich diesen zweiten Router erreichen, ohne die Verbindung des Computers mit dem LAN und dem Internet zu unterbrechen? Einfach zu versuchen, 192.168.1.1 zu erreichen, geht durch bce1und erreicht meinen normalen Router ...

Kann ipfw(8)irgendwie bestimmte Pakete zwingen, mit zu gehen, bce0statt bce1? Vorzugsweise ohne die Verwendung von "fib", weil das Hinzufügen einen Neustart erfordert ...

4
Zwei identische Subnetze auf verschiedenen Schnittstellen, die beide Adressen über DHCP beziehen, sind ein Problem, egal was Sie tun. Konfigurieren Sie einen Ihrer Router für ein anderes Subnetz, z. B. 192.168.2.0/24. Alle Router, die ich gesehen habe, können auf diese Weise konfiguriert werden. dirkt vor 7 Jahren 1
Natürlich wird es ein Schmerz sein. Aber das ist die Standardeinstellung für diese Router nach einem Reset ... Und ich möchte mein gesamtes LAN nicht für diese eine Aufgabe neu konfigurieren. Wenn es nicht möglich ist, wähle ich einen Computer aus, trenne ihn vom LAN (und vom Internet) und arbeite damit. Aber ich hatte gehofft, das zu vermeiden ... Mikhail T. vor 7 Jahren 0

1 Antwort auf die Frage

-2
grin

Sie können nicht zwei Hosts mit der gleichen IP-Adresse verwenden, wenn Sie normales Routing verwenden möchten, da das Routing eine Entscheidung ist, die auf der Zieladresse basiert. Ein Paket kann nicht in zwei Richtungen gehen.


Wenn Sie sich wirklich verarschen wollen, können Sie versuchen, alle möglichen Sachen zu fälschen, um die Regeln zu biegen, aber es wird ein echter Schmerz auf der Rückseite sein.

Sie können z. B. eine falsche IP-Adresse für das zu konfigurierende Gerät erstellen (192.168.1.99) und einen manuellen ARP-Eintrag (auf bce0) mithilfe der MAC des Geräts festlegen und hoffen, dass es nicht nach IP-Adressen filtert wenn das Paket von layer2 an es adressiert ist. In diesem Fall kann auf das zu konfigurierende Gerät über die falsche Adresse (192.168.1.99) zugegriffen werden, wenn Sie eine Hostroute für bce0 erstellen.

Sie können auch versuchen, dasselbe mit Ihrem Uplink zu tun: Erstellen Sie ein neues Netzwerk (192.168.2.0/24), geben Sie eine Adresse darin ein (192.168.2.2), erstellen Sie einen falschen IP-Eintrag (192.168.2.1) mit dem MAC von Ihrem Uplink (auf bce1) und verwenden Sie es als Standardgateway. Möglicherweise benötigen Sie auch ein Proxy-ARP für 192.168.1.xx (Ihre IP-Adresse auf bce1). Ihr System ist an diesem Punkt möglicherweise so verwirrt, dass es Ihre ursprüngliche IP-Adresse nicht automatisch verarbeitet (oder Ihr RP-Filter reagiert möglicherweise darauf) ).

Diese Theorie basiert auf Linux, sollte jedoch für alle Netzwerkgeräte gelten, einschließlich * BSD.

Deshalb habe ich meine Kommentare mit Absicht zurückgezogen. Meine Abstimmung hat nichts mit Ihnen auf persönlicher Ebene zu tun. Ich denke, diese Antwort könnte verbessert werden, das ist der einzige Grund für meine Abstimmung. Es hat nichts mit "Versuch, Sie zu ermutigen, KEINE Fragen zu beantworten", Sie sollten so viele Fragen beantworten, wie Sie möchten, aber die Qualität dieser Antwort während des Prozesses verbessern. Ramhound vor 7 Jahren 0