GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So fügen Sie eine Route unter Linux hinzu

Als Netzwerktechniker verbringen Sie wahrscheinlich viel Zeit mit dem Nachdenken und Planen Ihrer Netzwerkinfrastruktur

Sie planen, wie Computer miteinander verbunden werden, physisch unter Verwendung bestimmter Kabel, aber auch logisch unter Verwendung von Routing-Tabellen .

Wenn Ihr Netzwerkplan erstellt ist, müssen Sie jeden einzelnen Link implementieren, den Sie auf dem Papier theoretisiert haben.

Wenn Sie Linux-Computer verwenden, müssen Sie in einigen Fällen möglicherweise einige Routen hinzufügen um es mit anderen Netzwerken in Ihrem Unternehmen zu verknüpfen.

Hinzufügen von Routen unter Linux ist extrem einfach und kostenlos:Sie können den Network Manager verwenden Daemon (wenn Sie eine neuere Distribution verwenden) oder ifconfig .

In diesem Tutorial erfahren Sie, wie Sie ganz einfach neue Routen auf einem Linux-Rechner hinzufügen können um es mit Ihrem physischen Netzwerk zu verbinden.

Voraussetzungen

Um Routen auf Ihrem Linux-Rechner hinzuzufügen, müssen Sie über Administratorrechte verfügen.

Um dies zu überprüfen, können Sie „sudo“ ausführen “ gefolgt von „-v ”-Option (um Ihre zwischengespeicherten Anmeldeinformationen zu aktualisieren).

$ sudo -v

Wenn Sie keine sudo-Rechte haben, können Sie einen Blick auf unsere speziellen Artikel zum Erlangen von Administratorrechten unter Ubuntu oder CentOS werfen.

Route unter Linux mit IP hinzufügen

Der einfachste Weg, eine Route unter Linux hinzuzufügen, ist die Verwendung des Befehls „ip route add“, gefolgt von der zu erreichenden Netzwerkadresse und dem Gateway, das für diese Route verwendet werden soll.

$ ip route add <network_ip>/<cidr> via <gateway_ip>

# Example
$ ip route add 10.0.3.0/24 via 10.0.3.1

Wenn Sie kein Netzwerkgerät angeben, ist dies standardmäßig Ihre erste Netzwerkkarte , Ihr lokaler Loopback ausgenommen, wird ausgewählt .

Wenn Sie jedoch ein bestimmtes Gerät haben möchten, können Sie es am Ende des Befehls hinzufügen.

$ ip route add <network_ip>/<cidr> via <gateway_ip> dev <network_card_name>

Nehmen wir als Beispiel an, Sie möchten, dass zwei LAN-Netzwerke miteinander kommunizieren können.

Die Netzwerktopologie hat drei verschiedene Linux-Rechner:

  • Ein Ubuntu-Computer mit 10.0.2.2/24 IP-Adresse;
  • Ein weiterer Ubuntu-Computer mit 10.0.3.2/24 IP-Adresse;
  • Ein RHEL 8-Computer, der als einfacher Router für unsere beiden Netzwerke dient.

Der erste Computer kann den anderen Computer nicht anpingen, sie befinden sich nicht im selben Subnetz:10.0.2.0 für das erste Computernetzwerk und 10.0.3.0 für das zweite Netzwerk.

Da die beiden Hosts nicht Teil desselben Subnetzes sind, geht der Ping-Befehl an das Standard-Gateway.

Um die bereits auf Ihrem Rechner definierten Routen anzuzeigen, verwenden Sie die „ip route ” Befehl ohne Argumente. Sie können auch den Befehl „ip r“ als Abkürzung verwenden.

$ ip r

Dies ist die Routing-Tabelle Ihres Linux-Computers:Jeder Computer hat eine. Ein Router verwaltet zufällig viel mehr Routen als das, aber er verwendet im Wesentlichen die gleiche Routing-Syntax.

Also, wie liest man das?

Um diese Ausgabe zu verstehen, müssen Sie von oben nach unten lesen:

  • Standardmäßig , werden Netzwerkanrufe an das lokale Standard-Gateway weitergeleitet, das 10.0.2.1 ist
  • AUSSER Ihr Anruf ist für das Netz 10.0.2.0/24. In diesem Fall wird es einfach über Ihre physische Standardverbindung (physikalisch ein CAT-Netzwerkkabel) in Ihr lokales Netzwerk gesendet.
  • AUSSER Ihr Anruf ist für das Netzwerk 169.254.0.0/16. In diesem Fall wird es auch über Ihre physische Standardverbindung in Ihr lokales Netzwerk gesendet.

Hinweis :Wusstest du? Die Adresse 169.254.0.0/16 heißt APIPA (für Automatic IP Address Addressing) . Dies ist die Standard-IP, die von einem System verwendet wird, das keinen DHCP-Server im Netzwerk erreichen konnte.

In unserem Fall, um die 10.0.3.2/24 aufzurufen IP-Adresse wird der Anruf an unsere 10.0.2.1 weitergeleitet Router.

Ist unser Router jedoch in der Lage, Anrufe an das 10.0.3.0/24-Netzwerk weiterzuleiten?

Ein einfacher „ip r“-Befehl auf dem Router kann uns einen Hinweis geben.

Wie Sie sehen können, ist der Router nur mit dem 10.0.2.0/24-Netzwerk verbunden, was offensichtlich ein Problem darstellt.

Um eine Route auf unserem Linux-Router hinzuzufügen, verwenden wir die „ip route add ”-Befehl.

$ sudo ip route add 10.0.3.0/24 via 10.0.3.1

Wenn Sie jetzt Ihren zweiten Computer auf den ersten Computer pingen würden, könnten Sie ihn erreichen.

Großartig, Sie haben erfolgreich eine Route von einem Linux-Computer zu einem anderen hinzugefügt!

Hinzufügen einer permanenten Routenkonfiguration auf Ubuntu

Unter Ubuntu gibt es drei Möglichkeiten wie Sie Ihrem Linux-Rechner eine permanente Route hinzufügen:

  • Sie können es zu Ihrem Network Manager hinzufügen Konfigurationsdatei;
  • Sie können Ihre Netzplan-YAML bearbeiten Konfigurationsdatei;
  • Sie können Ihre Route zu „/etc/network/interfaces hinzufügen ”-Datei, wenn Sie eine alte Ubuntu-Distribution verwenden.

Mit Network Manager

Um dem Network Manager eine permanente Route hinzuzufügen, müssen Sie zur Verbindungsdatei navigieren, die sich unter „/etc/NetworkManager/system-connections“ befindet.

Bearbeiten Sie Ihre „Kabelverbindung “-Datei und fügen Sie eine „route1 ”-Eigenschaft im IPv4-Teil der Netzwerkkonfiguration.

Die Route muss definiert werden als:die Netzwerk-IP-Adresse, gefolgt von der CIDR, als nächstes das Standard-Gateway und schließlich der nächste Hop.

Damit die Änderungen übernommen werden, können Sie Ihre Netzwerkverbindung neu starten und den Befehl „route -n“ ausführen, um Ihre Route anzuzeigen.

$ sudo nmcli connection reload

Großartig, Sie haben Ihrem Linux-Server eine permanente Route hinzugefügt!

Mit Netplan

Netplan ist exklusiv für Ubuntu, kann aber sehr nützlich sein, wenn Sie Ihr Netzwerk mit einer einfachen YAML-Datei konfigurieren möchten.

Um eine permanente Route mit Netplan hinzuzufügen, fügen Sie den folgenden Abschnitt zu Ihrer „/etc/netplan“-Konfigurationsdatei hinzu.

$ sudo vi /etc/netplan/<configuration_file>.yaml

Damit die Änderungen übernommen werden, müssen Sie den Befehl „netplan“ mit dem Argument „apply“ ausführen.

$ sudo netplan apply

Herzlichen Glückwunsch, Sie haben Ihr Netzwerk mit Netplan konfiguriert . Wenn Sie mehr über Netplan und seine Ziele erfahren möchten, können Sie einen Blick in die zugehörige Dokumentation werfen.

Verwendung von /etc/network/interfaces

Um einer Distribution mit ifup und ifdown eine permanente Route hinzuzufügen, bearbeiten Sie die Datei „/etc/network/interfaces“ und fügen Sie den folgenden Abschnitt hinzu.

$ sudo vi /etc/network/interfaces

auto eth0
iface eth0 inet static
      address 10.0.2.2
      netmask 255.255.255.0
      up route add -net 10.0.3.0 netmask 255.255.0.0 gw 10.0.2.1

Hinzufügen einer permanenten Routenkonfiguration auf RHEL

Indem Sie die Route im vorherigen Abschnitt hinzugefügt haben, besteht die Möglichkeit, dass Ihre Distribution eine Datei für die persistente Route erstellt hat.

Wenn dies jedoch nicht der Fall ist, müssen Sie es hinzufügen, um Ihre Route beim Neustart Ihres Servers beizubehalten.

Bei RHEL- und CentOS-Distributionen müssen Sie eine Datei mit dem Namen „route- “ in der „/etc/sysconfig/network-scripts ”-Ordner.

$ sudo vi /etc/sysconfig/network-scripts/route-enp0s3

Route unter Linux mit nmcli hinzufügen

Eine andere Möglichkeit, eine Route unter Linux hinzuzufügen, besteht darin, das Dienstprogramm „nmcli“ zu verwenden und eine IPV4-Route mit dem Befehl „modify“ hinzuzufügen.

$ sudo nmcli connection modify <interface_name> +ipv4.routes "<network_ip> <gateway_ip>" 

Hinweis :Benötigen Sie einen vollständigen Artikel über den Network Manager? Wir haben einen vollständigen Artikel über die Konfiguration Ihres Netzwerks mit Network Manager.

Wenn wir beispielsweise die Infrastruktur des vorherigen Abschnitts verwenden, um eine Route hinzuzufügen, würden wir den folgenden Befehl ausführen.

$ sudo nmcli connection modify enp0s3 +ipv4.routes "10.0.3.0/24 10.0.3.1"

Da Änderungen nicht live vorgenommen werden, müssen Sie Ihre Netzwerkverbindungen mithilfe von „nmcli reload“ von der Festplatte neu laden ”-Befehl.

$ sudo nmcli connection reload

Großartig! Jetzt gibt es eine Route zwischen Ihrem ersten und zweiten Netzwerk.

Folglich können Sie Ihren zweiten Computer vom ersten Computer aus anpingen.

Hinzufügen einer Route über die grafische Netzwerkoberfläche

Wenn Sie keine Befehle im Terminal ausführen möchten, gibt es glücklicherweise eine Möglichkeit, eine Route unter Linux mithilfe einer grafischen Oberfläche hinzuzufügen.

Ob Sie Ubuntu, Debian oder RHEL verwenden, macht keinen Unterschied, da sie alle dasselbe Netzwerkpanel auf GNOME verwenden.

Suchen Sie in der oberen rechten Ecke Ihres Bildschirms nach einem kleinen Netzwerksymbol und klicken Sie darauf.

Klicken Sie auf „Kabelgebunden “ und suchen Sie nach „Kabelgebundene Einstellungen ”-Feld darunter.

Wenn das Steuerfeld geöffnet wird, suchen Sie nach der Datei „Wired ” und klicken Sie auf das kleine Zahnrad direkt daneben.

In der Datei „Wired ” werden Ihnen viele verschiedene Parameter angezeigt:Ihre aktuelle IPv4-Adresse, Ihre aktuelle MAC-Adresse, eine optionale IPv6-Adresse und Ihre Verbindungsgeschwindigkeit.

In der Datei „IPv4 ” Tab, wird Ihnen Ihre aktuell konfigurierte IP angezeigt (höchstwahrscheinlich zwei, damit Ihr Computer als Linux-Router fungiert).

Direkt darunter sehen Sie die „Routen " Sektion. Dort können Sie die Eingabe der vorherigen Abschnitte angeben.

Wenn Sie fertig sind, klicken Sie auf „Anwenden“. ” blaue Schaltfläche in der oberen rechten Ecke des Fensters.

Damit die Änderungen übernommen werden, müssen Sie Ihr Netzwerk neu starten. Sie können dies erreichen, indem Sie auf den Ein/Aus-Schalter klicken im „Wired“-Fenster der Netzwerkparameter.

Erledigt!

Sie haben erfolgreich eine Route unter Linux über die grafische Oberfläche hinzugefügt, Ihre Computer sollten jetzt miteinander kommunizieren können.

Fehlerbehebung bei Internetproblemen unter Linux

In manchen Fällen möchten Sie möglicherweise eine Route auf Ihrem Linux hinzufügen, weil Sie in der Lage sein möchten, Websites außerhalb Ihres lokalen Netzwerks zu erreichen, sagen wir zum Beispiel 8.8.8.8.

Nehmen wir als Beispiel an, Sie haben einen lokalen Router, der mit „Internet“ verbunden ist und sich unter 192.168.178.1/24 befindet.

Wenn Sie Ihre aktuellen Routen überprüfen, können Sie leicht erraten, warum Sie Internet-Websites nicht erreichen können.

Der Denkprozess ist ganz einfach :

  • Ist die IP, die ich zu erreichen versuche, Teil meines Subnetzes oder nicht?
  • Wenn ja, sollte ich es ohne Routen erreichen können, alles wird über das ARP-Protokoll und Ethernet abgewickelt.
  • Wenn nicht, brauche ich eine Route von meinem Computer zu einem Router, der Anfragen an das Internet weiterleiten kann.

Denken Sie jedoch daran, dass Routen zweispurige Autobahnen sind:Sie müssen in der Lage sein, eine externe IP zu erreichen, aber die externe IP muss in der Lage sein, Sie zu erreichen.

Folglich müssen Routen in Ihrer lokalen Netzwerkarchitektur korrekt definiert werden. Da ein Diagramm nützlicher ist als tausend Worte, finden Sie hier einen Weg, es zu verstehen.

Wenn Sie Probleme mit dem Internet beheben, müssen Sie an Routen denken: Habe ich eine Route von meinem Computer zu dem Computer, den ich zu erreichen versuche?

Sind die Computer oder Router zwischen mir und dem Ziel so konfiguriert, dass sie meine Anrufe verarbeiten?

Es ist großartig, einen Teil des Netzwerks zu erreichen, aber ist dieser Teil des Netzwerks in der Lage, mir zu antworten?

In unserem oben beschriebenen Diagramm kann unser Router eine Antwort von Google erhalten, aber er muss wissen, was mit der Anfrage zu tun ist. In Ihrem lokalen Heimnetzwerk müssen Sie sich darüber keine Gedanken machen, da die meisten Anfragen über das NAT-Protokoll weitergeleitet werden (kurz für Network Address Translation Protocol).

Schlussfolgerung

In diesem Tutorial haben Sie gelernt, wie Sie auf vielen verschiedenen Linux-Distributionen ganz einfach eine neue Route hinzufügen können.

Im Moment existieren, wie bei anderen Themen auch, einige Tools unter Linux, was die Netzwerkkonfiguration manchmal etwas kompliziert macht.

Wir haben jedoch die meisten Optionen aufgelistet, auf die Sie stoßen können. Wenn wir eine Option vergessen haben, hinterlassen Sie bitte einen Kommentar, damit wir es wissen.

Wenn Sie an Linux-Systemadministration interessiert sind , schauen Sie sich unbedingt unseren speziellen Bereich auf der Website an.


Linux
  1. So fügen Sie eine neue statische Route unter RHEL7 Linux hinzu

  2. So fügen Sie einen Drucker in Linux Mint 12 hinzu | Drucker in Linux Mint hinzufügen

  3. So fügen Sie das Linux-Software-Repository von Microsoft hinzu

  4. So fügen Sie Benutzer zu einer Gruppe in Linux hinzu

  5. CentOS / RHEL :So fügen Sie eine Nullroute unter Linux hinzu

So finden Sie verfügbare Netzwerkschnittstellen unter Linux

So fügen Sie einen Benutzer zu einer Gruppe in Linux hinzu

So ändern Sie die Netzwerk-MAC-Adresse in Linux

So fügen Sie einen Benutzer zu einer Gruppe unter Linux hinzu

7 Beispiele für Linux-Route-Befehle (So fügen Sie eine Route unter Linux hinzu)

So fügen Sie einen Benutzer zu einer Linux-Gruppe hinzu