Der Remote Procedure Call Linux im Netzwerk Einige Netzdienste Inhalt Index


Überprüfung des Netzwerkanschlusses

Um die Funktionalität des Netzwerkanschlusses zu testen, existieren mehrere Programme.

Erster Anlaufpunkt ist die Überprüfung des lokalen TCP/IP-Systems:

 
 user@sonne> ping localhost

 PING localhost (127.0.0.1): 56 data bytes

 64 bytes from 127.0.0.1: icmp_seq=0 ttl=64 time=0.2 ms

 64 bytes from 127.0.0.1: icmp_seq=1 ttl=64 time=0.2 ms

 64 bytes from 127.0.0.1: icmp_seq=2 ttl=64 time=0.2 ms



 --- localhost ping statistics ---

 3 packets transmitted, 3 packets received, 0% packet loss

 round-trip min/avg/max = 0.2/0.2/0.2 ms

Das Kommando ping (Abbruch mit <CTRL-C>) schickt die Datenpakete ans loopback-Device. Geht hier schon etwas schief, ist entweder der Kernel nicht richtig konfiguriert oder irgendein Netzwerkdienst wurde nicht gestartet.

Als nächstes wird die Netzwerkkarte getestet:

 
 user@sonne> ping sonne

 PING sonne.galaxis.de (194.168.10.101): 56 data bytes

 64 bytes from 194.168.10.101: icmp_seq=0 ttl=64 time=0.2 ms

 64 bytes from 194.168.10.101: icmp_seq=1 ttl=64 time=0.1 ms



 --- sonne.galaxis.de ping statistics ---

 2 packets transmitted, 2 packets received, 0% packet loss

 round-trip min/avg/max = 0.1/0.1/0.2 ms

Ein möglicher Fehler hier wäre ein Defekt der Karte oder der Verkabelung. Schließlich "pingt" man einen Rechner seines Netzes an:

 
 user@sonne> ping zeus

 PING zeus.buero.saxedu.de (194.180.239.20): 56 data bytes

 64 bytes from 194.180.239.20: icmp_seq=0 ttl=128 time=0.8 ms

 64 bytes from 194.180.239.20: icmp_seq=1 ttl=128 time=0.5 ms

 64 bytes from 194.180.239.20: icmp_seq=2 ttl=128 time=0.5 ms



 --- zeus.buero.saxedu.de ping statistics ---

 3 packets transmitted, 3 packets received, 0% packet loss

 round-trip min/avg/max = 0.5/0.6/0.8 ms

Ein anderes Kommando ist ifconfig, das, ohne Parameter aufgerufen, die vorhandenen Netzwerkschnittstellen auflistet:

 
 root@sonne> ifconfig

 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:3584 Metric:1

 RX packets:112 errors:0 dropped:0 overruns:0 frame:0

 TX packets:112 errors:0 dropped:0 overruns:0 carrier:0

 collisions:0



 dummy0 Link encap:Ethernet HWaddr 00:00:00:00:00:00

 inet addr:194.180.239.167 Bcast:194.180.239.255  Mask:255.255.255.0

 UP BROADCAST RUNNING NOARP MULTICAST MTU:1500 Metric:1

 RX packets:0 errors:0 dropped:0 overruns:0 frame:0

 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0

 collisions:0



 eth0 Link encap:Ethernet HWaddr 00:80:C8:47:B3:47

 inet addr:194.180.239.167 Bcast:194.180.239.255  Mask:255.255.255.0

 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

 RX packets:41405 errors:19 dropped:0 overruns:0 frame:29

 TX packets:9123 errors:0 dropped:0 overruns:0 carrier:0

 collisions:607

 Interrupt:15 Base address:0xd000

Wichtigstes Device ist hier "eth0", das eigentliche Netzwerkdevice.

ifconfig dient der Konfiguration dieser Schnittstellen, z.B. könnte man mittels

 
root@sonne> ifconfig eth0 down

dieselbe deaktivieren. Schließlich versucht man noch einen Rechner "outside of the world" zu erreichen:

 root@sonne> ping 198.41.0.4

 PING 198.41.0.4 (198.41.0.4): 56 data bytes

 64 bytes from 198.41.0.4: icmp_seq=0 ttl=247 time=159.3 ms

 64 bytes from 198.41.0.4: icmp_seq=1 ttl=247 time=157.3 ms

 64 bytes from 198.41.0.4: icmp_seq=2 ttl=247 time=189.1 ms

 64 bytes from 198.41.0.4: icmp_seq=3 ttl=247 time=163.9 ms



 --- 198.41.0.4 ping statistics ---

 4 packets transmitted, 4 packets received, 0% packet loss

 round-trip min/avg/max = 157.3/167.4/189.1 ms

Die verwendete Adresse gehört zu einem Nameserver der Toplevel-Domain. Schlägt dieser Kontaktversuch fehl, stimmt vermutlich etwas mit dem Routing nicht, womit wir beim Kommando route angelangt wären. Das Kommando listet die bekannten Interfaces auf und zeigt, wie diese erreichbar sind:

 root@sonne> route
 Kernel IP routing table
 Destination      Gateway  Genmask	     Flags	Metric	Ref	Use	Iface
 sonne.galaxis.de       *  255.255.255.255	UH	0	0	0	dummy0
 194.180.239.0          *  255.255.255.0	U	0	0	31	eth0
 loopback               *  255.0.0.0       	U	0	0	2	lo
 default    gw.galaxis.de  0.0.0.0	        UG	0	0	5	eth0

Falls der letzte Eintrag fehlt, scheitert die Vermittlung an unbekannte Adressen, da der Rechner mit einer solchen nichts anzufangen weiß.

Der default-Eintrag bewirkt, dass Pakete mit unbekannter IP-Adresse an diesen Rechner geleitet werden, in der Hoffnung, dass dieser die Adresse kennt. Fehlt diese Route, fügt man sie am besten hinzu:

 
root@sonne> route add default gw gw.galaxis.de

Der Name gw.galaxis.de muss lokal auflösbar sein (am besten durch einen Eintrag in der /etc/hosts). Danach sollten auch Rechner außerhalb des lokalen Netzes ansprechbar sein.Falls nicht, liegt der Fehler vermutlich außerhalb unseres Einflussbereiches. Wen es interessiert, der kann mit dem Kommando traceroute die genaue Wegewahl des Paketes verfolgen und eventuell das schwache Glied in der Kette isolieren:

 
 root@sonne> traceroute www.linux.de
 traceroute to www.linux.de (195.254.37.153), 30 hops max, 40 byte packets
 1 ball.saxsys.de (194.184.233.3) 1.003 ms 1.539 ms 0.884 ms
 2 195.211.141.1 (195.211.141.1) 3.062 ms 3.965 ms 2.505 ms
 3 frankfurt1.GIGABELL.NET (195.211.224.1) 26.195 ms 29.581 ms
 16.679 ms
 4 hssi4-0.frankfurt2.GIGABELL.NET (195.211.199.30) 19.642 ms
 20.949 ms 19.533 ms
 5 194.31.232.65 (194.31.232.65) 21.751 ms 21.525 ms 17.002 ms
 6 194.97.193.6 (194.97.193.6) 19.811 ms 27.464 ms 17.253 ms
 7 194.97.193.17 (194.97.193.17) 51.076 ms 37.010 ms 28.361 ms
 8 194.97.216.19 (194.97.216.19) 31.216 ms 30.439 ms 31.207 ms
 9 195.254.37.153 (195.254.37.153) 31.260 ms 32.833 ms
 28.463 ms

Falls ein Paket nicht vermittelt werden kann, wird in der letzten Zeile anstelle der Zeitinformationen ein Fehlercode (eingeleitet durch !) erscheinen. Z.B. besagt ein !N, dass das Netzwerk oder das Protokoll nicht erreichbar ist. Drei Sterne in einer Zeile beschreiben den Transportversuch über ein Gateway, von welchem keine Antwort kam. Nach drei Anläufen wird versucht, ein Paket über ein anderes Gateway zu routen. Das Kommando netstat dient schließlich der Überwachung aller Netzwerkschnittstellen. Hiermit lässt sich der Status jedes Ports abfragen, auch derer, an denen zz. nur ein Dienst "lauscht".

Anhand von Statistiken der Schnittstellen lassen sich u.a. Schwachstellen im Netzwerk erkennen:

 
 root@sonne> netstat -i
 Kernel Interface table
 Iface   MTU Met    RX-OK RX-ERR RX-DRP RX-OVR    TX-OK TX-ERR TX-DRP TX-OVR Flg 
 lo     3924   0        0      0      0      0        0      0      0      0 LRU 
 dummy  1500   0        0      0      0      0        0      0      0      0 BORU
 eth0   1500   0     2527      0      0      0     2329      0      0      0 BRU 

Der Eintrag eth0 beschreibt die Schnittstelle zum physikalischen Netzwerk:


Der Remote Procedure Call Linux im Netzwerk Einige Netzdienste Inhalt Index