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

Alias ​​der IP-Adresse nach Labelnamen löschen

Sie können den Netzalias mit ifconfig löschen Befehl:

/sbin/ifconfig eth0:100 down

Gemäß Handbuch für ip Befehl ist nur der Gerätename zum Löschen der IP-Adresse erforderlich. Die restlichen Argumente sind optional. Wenn keine Argumente angegeben werden, wird die erste IP-Adresse von der Schnittstelle gelöscht. Aber wirklich konnte ich dieses Verhalten nicht reproduzieren.
Anscheinend wird auch die IP-Adresse benötigt.

Der letzte gezeigte Befehl funktioniert nur, weil der Ausdruck ip addr list label eth0:100 | awk '{ print $2 }' gibt die IP-Adresse des Netzalias an und fügt diese IP in ip addr delete ... ein Befehl.


Was Sie haben, ist die beste Route (obwohl ich grep verwenden würde über awk , aber das ist persönliche Präferenz). Der Grund dafür ist, dass Sie mehrere Adressen pro „Label“ haben können. Daher müssen Sie angeben, welche Adresse Sie löschen möchten.

# ip addr help
Usage: ip addr {add|change|replace} IFADDR dev STRING [ LIFETIME ]
                                                      [ CONFFLAG-LIST ]
       ip addr del IFADDR dev STRING
       ip addr {show|save|flush} [ dev STRING ] [ scope SCOPE-ID ]
                            [ to PREFIX ] [ FLAG-LIST ] [ label PATTERN ]
       ip addr {showdump|restore}
IFADDR := PREFIX | ADDR peer PREFIX
          [ broadcast ADDR ] [ anycast ADDR ]
          [ label STRING ] [ scope SCOPE-ID ]

Beachten Sie die ip addr del Syntax, die besagt, dass die Parameter IFADDR sind und STRING . IFADDR ist darunter definiert und sagt PREFIX ist ein erforderlicher Parameter (Dinge in [] sind optional). PREFIX ist Ihre IP/Subnetz-Kombination. Daher ist es nicht optional.

Was ich mit der Verwendung von grep meinte , ist dies:

ip addr del $(ip addr show label eth0:100 | grep -oP 'inet \K\S+') dev eth0 label eth0:100

Der Grund dafür ist, falls sich die Position des Parameters ändert. Die Feldpositionen im ip addr Die Ausgabe kann sich basierend auf optionalen Feldern ändern. Ich glaube nicht, dass inet Feldänderungen, aber es ist nur meine Präferenz.


Linux
  1. Wie lösche ich eine Datei, deren Name mit „-“ (Bindestrich, auch bekannt als Bindestrich oder Minus) beginnt?

  2. Alle Dateien in einem Verzeichnis löschen, dessen Name nicht mit einer Zeile in einer Dateiliste übereinstimmt?

  3. So löschen Sie einen Ordner mit einem speziellen Namen (z. B. COM1)

  4. So fügen Sie einen Domainnamen-Alias ​​in Plesk hinzu

  5. Wie füge ich einen Alias-Domainnamen für meine Website hinzu?

So löschen Sie Zeilen in Vim / Vi

Was ist meine IP-Adresse?

Unix Sed Tutorial:Löschen Sie Dateizeilen mit Adresse und Mustern

Wie mache ich die Nameserver-Adresse in /etc/resolv.conf dauerhaft?

So konfigurieren Sie einen echten Domainnamen für die Absenderadresse

Schritte zum Zuweisen einer statischen IP-Adresse in CentOS Linux über die Befehlszeile?