GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

So konfigurieren Sie eine statische IP-Adresse unter RHEL 8 / CentOS 8 Linux

Es gibt viele Fälle, in denen wir eine statische IP für eine Netzwerkschnittstelle festlegen möchten. In RHEL 8 / CentOS 8 werden die Netzwerkverbindungen vom NetworkManager-Daemon verwaltet, daher sehen wir in diesem Tutorial, wie wir eine solche Aufgabe ausführen können, indem wir eine Schnittstellendatei direkt bearbeiten, indem wir ein Befehlszeilenprogramm, nmcli , oder über eine Text-Benutzeroberfläche, nmtui .

In diesem Tutorial lernen Sie:

  • So legen Sie eine statische IP-Adresse fest, indem Sie direkt eine Schnittstellendatei bearbeiten
  • Einrichten einer statischen IP-Adresse mit dem Dienstprogramm nmcli
  • So legen Sie eine statische IP-Adresse mit nmtui fest


Die bearbeitete Netzwerkschnittstellendatei

Softwareanforderungen und verwendete Konventionen

Softwareanforderungen und Linux-Befehlszeilenkonventionen
Kategorie Anforderungen, Konventionen oder verwendete Softwareversion
System RHEL 8 / CentOS 8
Software Die gesamte in diesem Tutorial erwähnte Software ist in einer Minimalinstallation von RHEL 8 oder CentOS 8 enthalten.
Andere Berechtigung zum Ausführen des Befehls mit Root-Rechten.
Konventionen # – erfordert, dass bestimmte Linux-Befehle mit Root-Rechten ausgeführt werden, entweder direkt als Root-Benutzer oder durch Verwendung von sudo Befehl
$ – erfordert, dass bestimmte Linux-Befehle als normaler, nicht privilegierter Benutzer ausgeführt werden

Einführung

In Red Hat Enterprise Linux 8 werden Netzwerkschnittstellen vom NetworkManager verwaltet Daemon, also müssen wir, um die Einstellungen einer Netzwerkschnittstelle zu ändern, irgendwie damit interagieren. In diesem Tutorial werden wir sehen, wie wir mit drei verschiedenen Methoden eine statische IP-Adresse, ein Gateway und einen DNS-Server für eine NIC festlegen können.

Identifizieren unserer Schnittstelle

Das erste, was wir tun möchten, ist, die Schnittstelle zu finden, die wir ändern möchten. Um alle Schnittstellen auf unserem System aufzulisten, können wir die ip addr verwenden Befehl:

$ ip addr
1: lo: <loopback,up,lower_up> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
  link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
  inet 127.0.0.1/8 scope host lo
      valid_lft forever preferred_lft forever
  inet6 ::1/128 scope host
      valid_lft forever preferred_lft forever
2: enp1s0: <broadcast,multicast,up,lower_up> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether xx:xx:xx:xx:xx:xx brd ff:ff:ff:ff:ff:ff
    inet 192.168.122.189/24 brd 192.168.122.255 scope global dynamic noprefixroute enp1s0
       valid_lft 3004sec preferred_lft 3004sec
    inet6 fe80::9ab6:ba48:1ddd:a8e1/64 scope link noprefixroute
       valid_lft forever preferred_lft forever
</broadcast,multicast,up,lower_up></loopback,up,lower_up>

In der obigen Ausgabe, die das Ergebnis der Ausführung des Befehls auf meiner virtualisierten rhel8-Maschine ist, sehen wir zwei Schnittstellen:lo und enp1s0 . Die erste ist eine „virtuelle“ Schnittstelle, die vom System verwendet wird, um mit sich selbst zu „sprechen“. Der zweite ist der, der uns interessiert, und derzeit ist seine IPv4-Adresse 192.168.122.189:Wir möchten sie ändern.

Methode 1 – Manuelles Ändern der Schnittstellenkonfigurationsdatei

Für jede vom NetworkManager-Daemon verwaltete Netzwerkschnittstelle wird eine Konfigurationsdatei innerhalb von /etc/sysconfig/network-scripts erstellt Verzeichnis. Der Name der Datei setzt sich aus dem ifcfg- zusammen Präfix plus Name der Schnittstelle. Wenn wir uns die Datei ansehen, die sich auf unsere NIC bezieht, können wir ihre tatsächliche Einrichtung sehen:

$ cat /etc/sysconfig/network-scrIPts/ifcfg-enp1s0
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="dhcp"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="enp1s0"
UUID="d5f41bf4-de0a-43b3-b633-7e2ec6212e58"
DEVICE="enp1s0"
ONBOOT="yes"

Das BOOTPROTO Option ist auf dhcp gesetzt :Die Option legt das beim Booten zu verwendende Protokoll fest, um die IP-Adresse der Schnittstelle festzulegen. Die möglichen Optionen sind:

  • none – Es soll kein Protokoll verwendet werden
  • bootp – Verwenden Sie das Bootp-Protokoll
  • dhcp – Verwenden Sie das DHCP-Protokoll

Da wir eine statische IPv4-Adresse setzen wollen, wollen wir den Wert von BOOTPROTO auf none ändern und konfigurieren Sie unsere IP, Routenpräfix, Gateway und DNS-Server statisch. Wir können dies erreichen, indem wir jeweils den IPADDR verwenden , PRÄFIX , GATEWAY und DNS Optionen. Da viele DNS-Server angegeben werden können, muss der DNS Option muss zusammen mit einer fortlaufenden Nummer angegeben werden, beginnend bei 1. Nach den erforderlichen Änderungen sollte unsere Datei
wie folgt aussehen:

TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="none"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="enp1s0"
UUID="d5f41bf4-de0a-43b3-b633-7e2ec6212e58"
DEVICE="enp1s0"
ONBOOT="yes"
IPADDR=192.168.122.66
PREFIX=24
GATEWAY=192.168.122.1
DNS1=192.168.122.1

Wir setzen unsere statische IP auf 192.168.122.66 und setzen Sie sowohl unser Gateway als auch unseren DNS-Server auf 192.168.122.1 . Damit unsere Änderungen wirksam werden, müssen wir jetzt die Netzwerkschnittstelle herunter- und wieder hochfahren. Beachten Sie, dass dies bestehende SSH-Verbindungen über diese Schnittstelle unterbrechen wird:

$ sudo nmcli connection down enp1s0 && sudo nmcli connection up enp1s0

Durch Ausführen von ip addr Befehl erneut, können wir überprüfen, ob sich die IP geändert hat:

IP addr|grep enp1s0|grep inet
inet 192.168.122.66/24 brd 192.168.122.255 scope global noprefix

Methode 2 – mit nmcli

Nmcli ist ein Befehlszeilentool zur Steuerung von NetworkManager. Durch die Verwendung können wir unter anderem die Netzwerkeinstellungen für eine bestimmte Schnittstelle ändern. In unserem Fall müssen wir nmcli mit der connection verwenden Unterbefehl mit dem modify oder bearbeiten Handlung. Mit dem ersten können wir die Einstellungen direkt ändern, während das zweite die nmcli-Shell startet, wo wir interaktiv arbeiten können.

Nmcli direkt verwenden

Um die IP-Adresse der Schnittstelle „enp1s0“ mit einem direkten nmcli-Befehl zu ändern, führen wir Folgendes aus:

$ sudo nmcli connection modify enp1s0 IPv4.address 192.168.122.66/24

Beachten Sie, dass wir das Routing-Präfix zusammen mit der IP mit dem sogenannten CIDR angegeben haben Notation (Klassen Inter-Domain Routing). Wir verwenden eine ähnliche Syntax, um das Gateway und die DNS-Einstellungen zu ändern:

$ sudo nmcli connection modify enp1s0 IPv4.gateway 192.168.122.1
$ sudo nmcli connection modify enp1s0 IPv4.dns 192.168.122.1

Schließlich setzen wir die Methode auf manuell um die Verwendung eines anderen Boot-Protokolls für die Schnittstelle zu vermeiden. Dieser Befehl setzt die BOOTPROTO-Option in der Interface-Konfigurationsdatei auf none:

$ sudo nmcli connection modify enp1s0 IPv4.method manual

Nmcli-Shell verwenden

Wie oben erwähnt, können wir auch eine interaktive Methode verwenden, um dieselben Änderungen vorzunehmen. Zum Aufrufen der nmcli-Shell wir verwenden den edit action, gefolgt vom Namen der Schnittstelle, die wir bearbeiten möchten:

$ sudo nmcli connection edit enp1s0
===| nmcli interactive connection editor |===

Editing existing '802-3-ethernet' connection: 'enp1s0'

Type 'help' or '?' for available commands.
Type 'print' to show all the connection properties.
Type 'describe [.]' for detailed property descrIPtion.

You may edit the following settings: connection, 802-3-ethernet (ethernet), 802-1x, dcb, sriov, ethtool, match, IPv4, IPv6, tc, proxy
nmcli>

Der blinkende Cursor sagt uns, dass die Shell Befehle akzeptiert:Wir können help eingeben um eine Liste der verfügbaren zu bekommen, print um alle Verbindungseigenschaften zu sehen oder describe gefolgt von einer Einstellung und einer ihrer Eigenschaften (dargestellt durch eine Punktnotation), um eine Beschreibung der letzteren zu erhalten. Zum Beispiel:

nmcli>
nmcli> describe IPv4.address

=== [addresses] ===
[NM property descrIPtion]
Array of IP addresses.

[nmcli specific descrIPtion]
Enter a list of IPv4 addresses formatted as:
  IP[/prefix], IP[/prefix],...
Missing prefix is regarded as prefix of 32.

Example: 192.168.1.5/24, 10.0.0.11/24

So ändern Sie die Adresse unserer Schnittstelle:

nmcli> set IPv4.address 192.168.122.66/24

Das gleiche Prinzip wird verwendet, um die anderen Eigenschaften zu ändern:

nmcli> set IPv4.gateway 192.168.122.1
nmcli> set IPv4.dns 192.168.122.1
nmcli> set IPv4.method manual

Um die vorgenommenen Änderungen zu speichern, müssen wir noch einen letzten Befehl ausführen:

nmcli> save
Connection 'enp1s0' (d5f41bf4-de0a-43b3-b633-7e2ec6212e58) successfully updated.

Um die nmcli-Shell zu verlassen, geben Sie einfach quit ein und drücken Sie die Eingabetaste:

nmcli> quit

Damit die Änderungen wirksam werden, sollten wir die Benutzeroberfläche erneut mit demselben Befehl laden, den wir zuvor verwendet haben.

Methode 3 – mit nmtui

Neben dem Ändern der Parameter einer Netzwerkschnittstelle durch manuelles Ändern ihrer Datei oder mithilfe des nmcli-Dienstprogramms können wir NetworkManager auch über eine Textbenutzeroberfläche steuern. Um es zu starten, rufen wir einfach nmtui auf in unserem Terminal:

$ sudo nmtui


Die nmtui-Textbenutzeroberfläche

Wir wählen Verbindung bearbeiten und dann den Namen der Schnittstelle, die wir manipulieren möchten; Anschließend ändern wir die gewünschten Werte. Zum Beispiel:



Verbindungseinstellungen mit nmtui bearbeiten

Nachdem wir zufrieden sind, wählen wir OK und drücken Sie die Eingabetaste:Wir kehren zum Schnittstellenauswahlmenü zurück. Diesmal wählen wir zurück , und wählen Sie dann beenden beenden. Um die Einstellungen zu übernehmen, müssen wir die Schnittstellenverbindung neu laden:

$ sudo nmcli connection down enp1s0 && sudo nmcli connection up enp1s0

Schlussfolgerungen

In diesem Tutorial haben wir drei Methoden gesehen, die wir verwenden können, um eine statische IP-Adresse auf Red Hat Enterprise Linux 8 festzulegen. Wir sehen, welche Optionen wir ändern und was wir in der Schnittstellenkonfigurationsdatei hinzufügen sollten, wenn wir sie manuell bearbeiten, und wie dies durchgeführt wird Dieselben Änderungen bei Verwendung von nmcli und nmtui, die jeweils ein Befehlszeilendienstprogramm und eine Textbenutzeroberfläche sind:Beide werden zur Steuerung des NetworkManager-Daemons verwendet.


Cent OS
  1. So installieren und konfigurieren Sie R auf einem Linux-System mit RHEL 8 / CentOS 8

  2. CentOS / RHEL 5:So konfigurieren Sie die Schnittstellenbindung (NIC-Teaming)

  3. CentOS / RHEL 4 :So konfigurieren Sie die Schnittstellenbindung (NIC-Teaming)

  4. So konfigurieren Sie die Schnittstelle im „Promiscuous Mode“ in CentOS/RHEL

  5. So konfigurieren Sie Schnittstellen im Promiscuous-Modus unter CentOS/RHEL 7 (dauerhaft)

So konfigurieren Sie eine statische IP-Adresse in CentOS 8 / RHEL 8

So legen Sie eine statische IP-Adresse in CentOS Linux fest

So konfigurieren Sie eine statische IP-Adresse unter Alpine Linux

So konfigurieren Sie eine statische IP unter CentOS 8 (CLI)

So konfigurieren Sie eine statische Netzwerk-IP-Adresse unter RHEL/CentOS 8/7

So konfigurieren Sie eine statische IP-Adresse auf einem Linux-System