Netzwerkverbindungen aus dem SAP testen
Autor: Tobias Harmes | 21. August 2011
Meist kommt der Betrieb der SAP Applikationsserver und der Netzwerk-/Firewall-Infrastruktur nicht aus einer Hand. Das kann die Ursachenanalyse für ein Problem erschweren. Gut wenn man als SAP Basis Mitarbeiter Werkzeuge kennt, um Applikationsprobleme von gestörten oder abgeschotteten Netzwerkverbindungen abgrenzen zu können.
Telnet
Hinweis: Bei neueren Windows-Installationen muss man den Telnet-Client erst nachinstallieren. Unter Linux/Unix ist es im Standardumfang enthalten.
Aufruf: telnet hostname port
Beispiel:
telnet meinsaprouter.company.com 3299
Wird die Console schwarz und ein Cursor blinkt links oben, dann ist die Verbindung erfolgreich hergestellt worden. Die Verbindung beenden kann man mit “CTRL++” und der Eingabe quit.
Blockiert eine Firewall die Verbindung, dann dauert es eine Weile bis schließlich ein Timeout gemeldet wird.
Wird die Verbindung aufgebaut, aber gleich darauf getrennt, ist die Wahrscheinlichkeit hoch, dass es ein saprouter/Dienst-Problem ist.
Niping
Mit niping kann man die Verbindung zu einem Dispatcher oder Gateway testen, inklusive der SAP Router dazwischen. Dies ist ein deutlicher Vorteil gegenüber den direkten Tools wie telnet und netcat.
Tipp: Über den Report RSBDCOS0 kann man das Programm direkt auf dem Applikationsserver ohne Betriebssystemzugriff laufen lassen.
Aufruf: niping -c -H HOSTNAME oder SAPROUTERSTRING -S PORT
SAP Gateway Installation für SAP Fiori
SAP Fiori dient zur Verbesserung der Benutzererfahrung, um dadurch die Anwendung der SAP Software zu vereinfachen. Wir helfen Ihnen bei der Einführung!
1. Beispiel:
[1]niping -c -H /H/meinsaprouter.company.com -S sapdp99
[1]ReturnCode= 1-ng -c -H /H/meinsaprouter.company.com -S sapdp99
Sun Aug 21 18:22:07 2011
***LOG Q0I=> NiPConnect2: meinsaprouter.company.com:3299: connect (10061: WSAECONNREFUSED: Connection refused) [nixxi.cpp 3133]
*** ERROR => NiPConnect2: SiPeekPendConn failed for hdl 1/sock 268
(SI_ECONN_REFUSE/10061; I4; ST; meinsaprouter.company.com:3299) [nixxi.cpp 3133]
*** ERROR => NiTClientLoop: NiHandle (rc=-10) [nixxtst.cpp 2529]
2. Beispiel:
[2]niping -c -H /H/meinsaprouter.company.com -S sapdp99
[2]ReturnCode= 1-ng -c -H /H/meinsaprouter.company.com -S sapdp99
Sun Aug 21 18:25:01 2011
connect to server o.k.
*** ERROR => NiBufIProcMsg: hdl 1 received rc=-93 (NIEROUT_INTERN) from peer [nibuf.cpp 2115]
*** ERROR => NiTClientLoop: NiTReadLoop (rc=-93) [nixxtst.cpp 2529]
Bei dem ersten Beispiel war der SAP Router Dienst nicht gestartet, beim zweiten Beispiel war der Zugriff erfolgreich. Die “*** ERROR” Nachrichten kann man vernachlässigen.
Netcat
Für andere Netzwerkdienste (z.B. Test ob der Mailserver-Port offen ist) kann man neben telnet auch netcat sehr gut einsetzen. Allerdings ist das Programm nur in der Unix/Linux-Welt im Standardumfang verfügbar.
Aufruf: netcat -w5 -z -v HOSTNAME PORT
-w 5 sekunden warten
-z port scanning only
-v verbose
Beispiel:
[6]netcat -w5 -z -v mail.company.com 25 2>/tmp/test_mailtest.txt
[7]cat /tmp/test_mailtest.txt
mail.company.com [10.0.0.1] 25 (smtp) open
Durch die Parameter im Beispiel läuft netcat nicht-interaktiv und ist damit auch wieder für den SAP Report RSBDCOS0 geeignet.