Befehl "ifconfig"
Zweck
Konfiguriert Netzschnittstellenparameter für ein Netz mit TCP/IP oder zeigt diese an.
Syntax
ifconfig Schnittstelle [ Adressfamilie [ Adresse [ Zieladresse ] ] [ Parameter... ] ]
ifconfig Schnittstelle [ Protokollfamilie ] Schnittstelle Protokollfamilie
ifconfig -a [ -l ] [ -d ] [ -u ] [ Protokollfamilie ]
ifconfig Schnittstelle [ tcp_low_rto rto | -tcp_low_rto ]
Beschreibung
Mit dem Befehl ifconfig können Sie einer Netzschnittstelle eine Adresse zuweisen und die aktuellen Konfigurationsdaten der Netzschnittstelle konfigurieren oder anzeigen. Der Befehl ifconfig muss beim Systemstart verwendet werden, um die Netzadresse jeder auf dem System vorhandenen Schnittstelle zu definieren. Nach dem Systemstart kann der Befehl auch verwendet werden, um eine Schnittstellenadresse und weitere Betriebsparameter neu zu definieren. Die Netzschnittstellenkonfiguration wird auf dem aktiven System gehalten und muss bei jedem Systemwiederanlauf zurückgesetzt werden. Der Befehl ifconfig interpretiert das Flag IFF_MULTICAST und gibt dessen Wert aus, sofern es gesetzt ist.
Eine Schnittstelle kann Übertragungen in verschiedenen Protokollen empfangen, die jeweils ein anderes Benennungsschema erfordern können. Es ist erforderlich, den Parameter Adressfamilie anzugeben, der die Interpretation der verbleibenden Parameter ändern kann. Die derzeit unterstützten Adressfamilien sind inet und inet6.
Für die DARPA-Internet-Familie inet ist die Adresse entweder ein in der Hostnamensdatenbank, d. h. der Datei /etc/hosts, vorhandener Hostname oder eine in der Internetstandardschreibweise mit Trennzeichen angegebene DARPA-Internetadresse.
Während jeder Benutzer den Status einer Netzschnittstelle abfragen kann, kann nur ein Benutzer mit Administratorberechtigungen die Konfiguration dieser Schnittstellen ändern.
Die ifconfig-Funktion zeigt die aktuelle Konfiguration für eine Netzschnittstelle an, wenn keine optionalen Parameter angegeben werden.
Wenn eine Protokollfamilie angegeben wird, berichtet ifconfig nur die für diese Protokollfamilie spezifischen Details.
Nur ein Superuser kann die Konfiguration einer Netzschnittstelle ändern.
Gratuitous ARP wird für Ethernet-, Token-Ring- und FDDI-Schnittstellen unterstützt. Diese Unterstützung bedeutet, wenn der Host, sofern eine IP-Adresse zugewiesen ist, eine ARP-Anforderung für seine eigene Adresse (die neue Adresse) sendet, um andere Systeme über seine Adresse zu informieren, sodass diese ihren ARP-Eintrag sofort aktualisieren können. Außerdem können Hosts so doppelte IP-Adressen erkennen. Wenn Sie eine Antwort auf die ARP-Anforderung erhalten, wird ein Fehler in /var/adm/ras/errlog protokolliert, der mit dem Befehl errpt (oder über die SMIT-Schnittstelle) für die Fehler-ID AIXIF_ARP_DUP_ADDR angezeigt werden kann.
ib0:flags=e3a0063<UP,BROADCAST,NOTRAILERS,RUNNING,ALLCAST,MULTICAST,GROUPRT>
pmtu 2048 qkey
0x1e qpn 0x48 lid 0x5c hca iba0 port 1 inet 1.2.3.120 netmask 0xffffff00 broadcast
1.2.3.255 inet6
fe80::2:c903:1:1e8d/64 tcp_sendspace 262144 tcp_recvspace 262144 rfc1323 1
Die Schnittstelle zeigt jetzt
die Pfad-MTU (pmtu), den Warteschlangenschlüssel (qkey), die Warteschlangenpaarnummer (qpn), die lokale ID (lid), den Hostkanaladapter (hca) und die Portnummer (port) an.
Diese Informationen sind für das Debugging und für die Durchführung von Diagnosen hilfreich.
Wenn der Befehl detach mit dem Befehl ifconfig angegeben wird, werden alle anderen Optionen ignoriert.
Die Angabe des Befehls detach verhindert, dass die Option "garbage"
im Befehl ipconfig einen Fehler verursacht.
So wird beispielsweise der Befehl ifconfig en3 garbage detach
selbst mit der ungültigen Option ordnungsgemäß ausgeführt.
Flags
Element | Beschreibung |
---|---|
-a | Optional kann das Flag -a anstelle eines Schnittstellennamens verwendet werden. Dieses Flag weist ifconfig an, Informationen zu allen Schnittstellen im System anzuzeigen. |
-d | Das Flag -d zeigt Schnittstellen an, die nicht aktiv sind. Sie können das Flag nur zusammen mit dem Flag -a oder dem Flag -l verwenden. |
-l | Dieses Flag kann verwendet werden, um alle verfügbaren Schnittstellen auf dem System ohne weitere zusätzliche Informationen aufzulisten. Dieses Flag kann abgesehen von den Flags -d und -u mit keinen anderen Flags und Befehlen verwendet werden. |
-u | Das Flag -u zeigt Schnittstellen an, die aktiv sind. Sie können das Flag nur zusammen mit dem Flag -a oder dem Flag -l verwenden. |
Protokollfamilie | Dieses Flag gibt Protokolle wie tcp, udp, tcp6, udp6, icmp oder icmp6 an. |
Parameter
Element | Beschreibung |
---|---|
Adresse | Gibt die Netzadresse für die Netzschnittstelle an. Für die inet-Familie ist der Parameter Adresse entweder ein Hostname oder eine IP-Adresse in der Standardschreibweise mit Trennzeichen. |
Adressfamilie | Gibt an, welche Netzadressfamilie geändert werden soll. Derzeit werden die Adressfamilien inet und inet6 unterstützt. Der Standardwert für diesen Parameter ist die Adressfamilie inet. |
Zieladresse | Gibt die entsprechende Adresse auf der fernen Seite einer Punkt-zu-Punkt-Verbindung an. |
Schnittstelle | Gibt die Konfigurationswerte für die anzuzeigende oder zu ändernde Netzschnittstelle an.
Sie müssen mit dem Parameter Schnittstelle eine Schnittstelle angeben, wenn Sie den Befehl ifconfig verwenden.
Im Folgenden sind die Abkürzungen für die Schnittstellen aufgelistet:
Fügen Sie hinter der Abkürzung ein Numeral ein, um die spezifische Schnittstelle zu identifizieren (z. B. tr0). Wenn die Schnittstelle noch nicht geladen ist, lädt der Befehl ifconfig Schnittstelle diese Schnittstelle und der Befehl netstat -in listet sie auf. Bei der Verarbeitung einer Statusabfrage für die Schnittstelle wird diese Schnittstelle geladen (sofern sie noch nicht geladen ist), um die Abfrageverarbeitung abzuschließen. |
Parameter | Die folgenden Parameterwerte sind zulässig:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
rto | Gibt das Zeitlimit für erneute Übertragung in Millisekunden an.
Der gültige Bereich für diesen Wert ist 0 bis 3000.
Voraussetzung: Sie müssen den timer_wheel_tick-Wert mit dem Befehl no festlegen, bevor bevor Sie den rto-Wert mit dem Befehl ifconfig festlegen. Der von Ihnen angegebene rto-Wert muss dem festgelegten timer_wheel_tick-Wert entsprechen oder das Zehnfache dieses Werts sein. |
Die folgenden Netzoptionen, die auch als schnittstellenspezifische Netzoptionen (ISNO, Interface Specific Network Options) bezeichnet werden, können pro Schnittstelle konfiguriert werden:
- rfc1323 [0 | 1]
- Aktiviert oder inaktiviert TCP-Erweiterungen gemäß RFC 1323, TCP Extensions for High Performance. Der Wert 1 gibt an, dass alle TCP-Verbindungen über diese Schnittstelle versuchen, die RFC-Erweiterungen zu vereinbaren. Der Wert 0 inaktiviert rfc1323 für alle Verbindungen über diese Schnittstelle. Die SOCKETS-Anwendung kann diese ISNO und das globale Verhalten in einzelnen TCP-Verbindungen mit der Subroutine setsockopt überschreiben.
- -rfc1323
- Entfernt die ISNO-Verwendung für rfc1323 für dieses Netz. Eine SOCKETS-Anwendung kann das globale Verhalten in einzelnen TCP-Verbindungen mit der Subroutine setsockopt überschreiben.
- tcp_mssdflt Zahl
- Legt die maximale Standardsegmentgröße fest, die bei der Kommunikation mit fernen Netzen verwendet wird. Wenn Sie über diese Schnittstelle kommunizieren, verwendet ein Socket die angegebene Zahl als Wert für die maximale Standardsegmentgröße.
- -tcp_mssdflt
- Entfernt die ISNO-Verwendung für die Option tcp_mssdflt. Stattdessen wird der globale Wert, der mit /usr/sbin/no bearbeitet wird, verwendet.
- tcp_recvspace Größe
- Gibt die Standardsocketpuffergröße für Schnittstellensockets an, die Daten empfangen. Die Puffergröße wirkt sich auf die Fenstergröße aus, die von TCP verwendet wird. (Weitere Informationen finden Sie in der Beschreibung des Befehls no.)
- -tcp_recvspace
- Entfernt die ISNO-Verwendung für die Option tcp_recvspace. Stattdessen wird der globale Wert verwendet.
- tcp_sendspace Größe
- Gibt die Standardsocketpuffergröße für Schnittstellensockets an, die Daten senden. Die Puffergröße wirkt sich auf die Fenstergröße aus, die von TCP verwendet wird. (Weitere Informationen finden Sie in der Beschreibung des Befehls no.)
- -tcp_sendspace
- Entfernt die ISNO-Verwendung für die Option tcp_sendspace. Stattdessen wird der globale Wert verwendet.
- tcp_nodelay [0 | 1]
- Gibt an, dass Sockets, die TCP über diese Schnittstelle verwenden, den Nagle-Algorithmus verwenden, wenn Daten gesendet werden. TCP verwendet den Nagle-Algorithmus standardmäßig.
- -tcp_nodelay
- Entfernt die ISNO-Verwendung für die Option tcp_nodelay.
Tipp: Parameter, die Sie mit dem Befehl ifconfig festlegen, gehen beim nächsten Neustart des Systems verloren. Verwenden Sie den Befehl chdev, um die ODM-Datenbank (Object Data Manager) für jede Schnittstelle zu ändern, damit die Parameteränderungen permanent definiert werden. Verwenden Sie den Befehl lsattr -E -l [Schnittstelle], um die Schnittstellenattribute anzuzeigen, und den Befehl chdev -l [Schnittstelle] -a [Attribut=Wert], um das Attribut zu ändern. Der Befehllsattr -E -l en0 chdev -l en0 -a tcp_sendspace=65536
Sicherheit
Beispiele
- Geben Sie den folgenden Befehl ein, um den Status einer IP-Schnittstelle über eine serielle Leitung abzufragen:
In diesem Beispiel ist die abzufragende Schnittstelle sl1. Das Ergebnis des Befehls gleicht dem folgenden Ergebnis:ifconfig sl1
sl1: flags=51<UP,POINTOPOINT,RUNNING> inet 192.9.201.3 --> 192.9.354.7 netmask ffffff00
- Geben Sie den folgenden Befehl ein, um die lokale Loopback-Schnittstelle zu konfigurieren:
ifconfig lo0 inet 127.0.0.1 up
- Geben Sie den folgenden Befehl ein, um die lokale Token-Ring-Schnittstelle als inaktiv (down) zu markieren:
In diesem Beispiel ist die zu markierende Schnittstelle token0.ifconfig tr0 inet down
Anmerkung: Die Konfiguration einer Netzschnittstelle kann nur von einem Benutzer mit Rootberechtigung geändert werden.
- Geben Sie den folgenden Befehl ein, um rfc1323 für alle Verbindungen über en5 zu inaktivieren (sofern der globale Wert 1 ist):
ifconfig en0 rfc1323 0
- Geben Sie den folgenden Befehl ein, um eine Liste von Schnittstellen zu konfigurieren, die einen vipa-Parameter verwenden sollen:
ifconfig vi0 vipa_iflist en0,en1,tr0
- Geben Sie den folgenden Befehl ein, um Schnittstellen zu entfernen, die für die Verwendung von vipa konfiguriert sind:
ifconfig vi0 -vipa_iflist en1,tr0
- Geben Sie den folgenden Befehl ein, um festzustellen, welche Schnittstellen für die Verwendung von vipa, z. B. von vi0, konfiguriert sind:
ifconfig vi0
- Geben Sie den folgenden Befehl ein, um die Überwachung des Linkstatus zu aktivieren:
Wenn sich der Linkstatus auf dem Adapterifconfig en0 monitor
ent0
indown
ändert, benachrichtigt der Adapter die Schnittstellenschicht, woraufhin auch die Schnittstelle alsDown
markiert wird. - Geben Sie den folgenden Befehl ein, um einen GRE-Tunnel zwischen den Schnittstellen von zwei Knoten zu konfigurieren:
Dieser Befehl erstellt einen GRE-Tunnel zwischen der lokalen Schnittstelleifconfig gre0 tunnel 9.3.149.70 9.3.149.121
9.3.149.70
und der fernen Schnittstelle9.3.149.121
. Die lokale Seite des Tunnels wird mitgre0
angegeben. - Geben Sie den folgenden Befehl ein, um der neu erstellten Schnittstelle eine IP-Adresse zuzuordnen:
ifconfig gre0 10.10.10.1
- Geben Sie den folgenden Befehl ein, um NAT in einem GRE-Tunnel zu konfigurieren:
In diesem Beispiel ist der ursprüngliche Zielport des GRE-Paketsifconfig gre0 nat toaddr 127.0.0.1 fromport 80 toport 8080
80
und der Befehl ändert den Zielport in8080
und die Zieladresse in127.0.0.1
. - Geben Sie den folgenden Befehl ein, um einen GIF-Tunnel zwischen Eins-zu-viele-Endpunkten (Eins-zu-viele-Tunnel) zu konfigurieren:
Dieser Befehl erstellt einen Eins-zu-viele-Tunnel zwischen der Quelle (ifconfig gif0 10.10.10.1 netmask 255.255.255.0 tunnel 2000::4612:6995:6c4a:fa6e 10.10.10.10,2000::4612:6995:6c4a:fa6a 10.10.10.11,2000::4612:6995:6c4a: fa6b 15.15.15.1,2000::4612:6995:6c4a:f777
2000::4612:6995:6c4a:fa6e
) und den folgenden 3 Zielen:2000::4612:6995:6c4a:fa6a
2000::4612:6995:6c4a:fa6b
2000::4612:6995:6c4a:f777
10.10.10.1
für die GIF-Schnittstelle. - Geben Sie den folgenden Befehl ein, um einen Eins-zu-eins-GIF-Tunnel zwischen zwei Endpunkten zu konfigurieren:
Dieser Befehl erstellt einen GIF-Tunnel zwischen der Quelle (ifconfig gif0 10.10.10.1 netmask 255.255.255.0 tunnel 2000::4612:6995:6c4a:fa6e 10.10.10.10,2000::4612:6995:6c4a:fa66
2000::4612:6995:6c4a:fa6e
) und dem Ziel (2000::4612:6995:6c4a:fa66
). - Außerdem konfiguriert der Befehl die IP-Adresse 10.10.10.1 für eine GIF-Schnittstelle.
Dateien
Element | Beschreibung |
---|---|
/etc/host | Enthält die Hostnamensdatenbank. |
/etc/networks | Enthält Netznamen. |