Wieder am Beispiel Linux gibt es dazu das Kommando
ifconfig (Interface Configuration).
Durch Aufruf ohne Option oder mit der Option -a kann man den Zustand
aller Interfaces erkunden:
# ifconfig -a
lo Link encap:Local Loopback
inet addr:127.0.0.1 Bcast:127.255.255.255 Mask:255.0.0.0
UP BROADCAST LOOPBACK RUNNING MTU:2000 Metric:1
RX packets:12 errors:0 dropped:0 overruns:0
TX packets:12 errors:0 dropped:0 overruns:0
sl0 Link encap:VJ Serial Line IP
inet addr:192.168.7.1 P-t-P:192.168.7.2 Mask:255.255.255.0
UP POINTOPOINT RUNNING MTU:296 Metric:1
RX packets:0 errors:0 dropped:0 compressed:0
TX packets:0 errors:0 dropped:0 compressed:0
Hier sind zwei Netzinterfaces konfiguriert: das immer
vorhandene Loopback-Gerät lo und eine
SLIP-Verbindung sl0.
Die einzelnen Angaben haben folgende Bedeutung:
Mit ifconfig kann man Interface-Parameter nicht nur
abfragen, sondern auch einstellen. Die allgemeine Syntax dafür lautet
ifconfig Interface IP-Adresse
bzw.
ifconfig Interface Optionsname OptionswertBeide Formen können auch kombiniert werden. In vielen Fällen wird die Interface-Einstellung beim Systemstart durch Shell-Skripte in rc-Dateien (in etwa vergleichbar mit der autoexec.bat unter DOS) vorgenommen, z.B. in der Datei /etc/rc.d/network, wobei der konkrete Name sowie der Pfad je nach Linux-Distribution variieren können. In diesen Skripten können wir nachsehen, wie die obigen Einstellungen erreicht wurden:
ifconfig lo 127.0.0.1 slattach -p cslip -s 19200 /dev/cua1 & ifconfig sl0 192.168.7.1 pointopoint 192.168.7.2Wir sehen an dem Beispiel die Besonderheit, daß vor dem Konfigurieren der SLIP-Schnittstelle noch das Kommando slattach ausgeführt werden muß. Das hat seinen Grund darin, daß sl0 eigentlich gar kein ständig vorhandenes physisches Interface ist. Erst durch den Aufruf von slattach wird aus dem physischen Interface /dev/cua1 (das ist der COM2-Anschluß) ein Interface mit dem Protokoll cslip und der Datenrate (speed) 19200 bit/s.
Für die nicht angegebenen Parameter werden automatisch "sinnvolle" Einstellungen vorgenommen; Broadcast-Adresse und Subnetzmaske werden beispielsweise aus der Adreßklasse bestimmt.
Wenn unser Rechner einen Ethernet-Anschluß hat, sieht dessen Einstellung beispielsweise so aus:
ifconfig eth0 176.16.20.5 broadcast 176.16.20.255 netmask 255.255.255.0Andere Systeme geben nicht ganz so ausführliche Informationen. Hier ein Beispiel von SunOS 4.1.x:
% ifconfig -a le0: flags=63Wir erkennen zwei Interfaces: le0 als Ethernet und lo0 als Loopback.inet 176.16.1.1 netmask ffff0000 broadcast 176.16.0.0 lo0: flags=49 inet 127.0.0.1 netmask ff000000
Dieses Beispiel stammt aus der "Anfangszeit" unserer IP-Erfahrungen und enthält einen schwerwiegenden Konfigurierungsfehler. Überlegen Sie, was falsch ist und wie man es korrigieren würde!
Eine weitere Möglichkeit zur Gewinnung statistischer
Angaben zu den Netzinterfaces ist das Kommando netstat -i:
# netstat -i
Kernel Interface table
Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flags
lo 2000 0 14 0 0 0 14 0 0 0 BLRU
sl0 296 0 0 0 0 0 0 0 0 0 PRU
Nach dem Interfacenamen und der konfigurierten MTU
(Maximum Transmission Unit) folgt die Metrik (siehe Routing-Einstellung).
Die nächsten Spalten sind Paketzähler:
RX-OK | empfangene fehlerfreie Pakete |
RX-ERR | empfangene Pakete mit Fehlern |
RX-DRP | Pakete, die wegen Speicherknappheit weggeworfen wurden ... ("drop") |
RX-OVR | Pakete, die ignoriert wurden, weil der Rechner zu langsam war ("overflow") |
TX-OK | fehlerfrei gesendete Pakete |
TX-ERR | gesendete Pakete mit Fehlern (?) |
TX-DRP | Pakete, die wegen Speicherknappheit weggeworfen wurden ... |
TX-OVR | Pakete, die nicht gesendet werden konnten, weil der Rechner zu langsam war |
Flags:
A | Interface empfängt alle Multicast-Adressen |
B | Broadcasts sind gestattet |
D | Debugging ist eingeschaltet |
L | Loopback-Gerät |
M | alle Pakete werden empfangen (Promiscuous Mode) |
N | No Trailers (keine Köpfe am Ende) |
O | No ARP (kein Address Resolution Protocol) |
P | Punkt-zu-Punkt-Verbindung |
R | Running (in Benutzung) |
U | Up (eingeschaltet) |
Eine kontinuierliche Statistik wird durch die zusätzliche Option -c ausgegeben:
% netstat -c -iDie zusätzliche Option -n sorgt für eine numerische Anzeige der IP-Adressen. Das ist nützlich, wenn kein DNS zur Verfügung steht oder wenn Netzbeobachtungen nicht durch DNS-Abfragen beeinflußt werden sollen.
Bei anderen Systemen kann sich die Ausgabe etwas unterscheiden. Hier ein Beispiel von SunOS 4.1.x:
% netstat -i Name Mtu Net/Dest Address Ipkts Ierrs Opkt Oer Col Que le0 1500 141.99.0.0 sparc 4690 0 282 0 0 0 lo0 1536 loopback localhost 7663 0 7663 0 0 0