Seite 1 von 1

[GELÖST] Abgetrennte Stationen + Lösung

Veröffentlicht: 21. Oktober 2019 – 18:56 Uhr
von erickeke
Hallo,

die meisten meiner Rechner waren offline.

Das kann passieren, wenn die Zeitdifferenz zwischen Client und Server mehr als fünf Minuten beträgt.

In meinem Fall lag es aber nicht daran.

Mit TCPVIEW (von Sysinternals) habe ich meine Rechner untersucht und festgestellt, dass sie versuchten, den Proxy zu verwenden.

Ich habe einen Beitrag von sfonteneau gelesen, in dem stand, dass die WebSocket-Bibliothek manchmal auf die Verwendung des Proxys besteht.

Auf meinen Rechnern hatte ich die Umgebungsvariablen `http_proxy`, `https_proxy` und `no_proxy` für Software wie Git, npm und andere Linux-basierte Tools definiert.

Beim Blick in den Code stellte ich jedoch fest, dass die Bibliothek `no_proxy` für Subdomains wie z. B. `.mydomain.com` nicht lesen konnte.

Also habe ich die Umgebungsvariablen auf allen meinen Rechnern aktualisiert und den FQDN meines Servers, `wapt.mydomain.com`, hinzugefügt: Problem gelöst!

Ich habe nur noch ein Problem, warte aber ab, ob die heute Abend begonnene Vorgehensweise es löst:

Der Python-Dienst auf meinem WAPT-Server läuft mit 99 % CPU-Auslastung, und ich erhalte mehrere Meldungen:
WARNUNG Ungültige Sitzung 917a29931507404db3d67aad566bfb38.

Die Agenten sind aktuell; ich hoffe, es hängt mit meinem Proxy-Problem zusammen. Mehr dazu morgen.

Detail zur Websocket-Bibliothek:

In C:\Program Files (x86)\wapt\lib\site-packages\websocket\_url.py:

Die folgende Funktion unterstützt keine Subdomain-Verifizierung (.mydomain.com):
def _is_no_proxy_host(hostname, no_proxy):
if not no_proxy:
v = os.environ.get("no_proxy", "").replace(" ", "")
no_proxy = v.split(",")
if not no_proxy:
no_proxy = DEFAULT_NO_PROXY_HOST

if hostname in no_proxy:
return True
elif _is_ip_address(hostname):
return any([_is_address_in_network(hostname, subnet) for subnet in no_proxy if _is_subnet_address(subnet)])

return False

Betreff: Abgekoppelte Stationen + Lösung

Veröffentlicht: 22. Oktober 2019 - 8:55 Uhr
von dcardon
Hallo Erikeke,
erickeke schrieb: 21. Okt. 2019 - 18:56 Uhr Die meisten meiner Rechner waren nicht verbunden.

Dies kann vorkommen, wenn die Zeitdifferenz zwischen Client und Server mehr als 5 Minuten beträgt.

In meinem Fall lag es jedoch nicht daran.

Mit TCPVIEW (von Sysinternals) stellte ich fest, dass meine Rechner versuchten, den Proxy zu verwenden.

Ich sah eine Meldung von sfonteneau, dass die WebSocket-Bibliothek manchmal auf die Verwendung des Proxys bestand.

Auf meinen Rechnern hatte ich die Umgebungsvariablen `http_proxy`, `https_proxy` und `no_proxy` für Software wie Git, npm und andere Linux-basierte Anwendungen definiert.

Bei der Untersuchung des Codes stellte ich jedoch fest, dass die Bibliothek die `no_proxy`-Direktive für Subdomains, z. B. `.mydomain.com`, nicht lesen konnte.

Ich habe also die Umgebungsvariable auf all meinen Rechnern aktualisiert und den FQDN meines Servers, `wapt.mydomain.com`, hinzugefügt: Problem gelöst!

Ich habe nur noch ein Problem, aber ich warte ab, ob die heute Abend begonnene Vorgehensweise es behebt:

Der Python-Dienst auf meinem Wapt-Server läuft mit 99 % CPU-Auslastung, und ich erhalte mehrere Meldungen: `
WARNING Invalid session 917a29931507404db3d67aad566bfb38`.

Die Agents sind auf dem neuesten Stand; ich hoffe, das hängt mit meinem Proxy-Problem zusammen. Mehr dazu morgen.

Detail zur Websocket-Bibliothek:

In C:\Program Files (x86)\wapt\lib\site-packages\websocket\_url.py:

Die folgende Funktion unterstützt keine Subdomain-Verifizierung (.mydomain.com):
def _is_no_proxy_host(hostname, no_proxy):
if not no_proxy:
v = os.environ.get("no_proxy", "").replace(" ", "")
no_proxy = v.split(",")
if not no_proxy:
no_proxy = DEFAULT_NO_PROXY_HOST

if hostname in no_proxy:
return True
elif _is_ip_address(hostname):
return any([_is_address_in_network(hostname, subnet) for subnet in no_proxy if _is_subnet_address(subnet)])

return False
Tatsächlich handelt es sich um einen Fehler in der WebSocket-Bibliothek. Müssen diese Umgebungsvariablen wirklich auf Systemebene definiert werden? Der WAPT-Agent läuft im LocalSystem-Konto, und wenn die Variablen nur im Benutzerkontext definiert sind, sollte es kein Problem geben.

Aufrichtig,

Denis

Betreff: Abgekoppelte Stationen + Lösung

Veröffentlicht: 22. Oktober 2019 - 10:09 Uhr
von erickeke
Vielen Dank für Ihre Antwort. Ich benötigte sie für bestimmte Programmiersoftware, um den Proxy zu umgehen, aber jetzt, da ich die Lösung gefunden habe, gibt es kein Problem mehr. :D

Ich wollte die Information hauptsächlich für die Nachwelt festhalten. :)

Betreff: [GELÖST] Abgetrennte Stationen + Lösung

Veröffentlicht: 23. Oktober 2019 - 11:47 Uhr
von Sfonteneau
Bezüglich Ihres Problems mit der CPU-Auslastung von 99 %

siehe viewtopic.php?f=13&p=6617#p6617