Jump to content

BrickViewer - Internetverbindung über Proxy möglich?


Recommended Posts

Das Problem gibt es wohl schon immer. Ist auch bei älteren Versionen so. Ich glaube, dass es nicht geht, sobald die Internetverbindung des PCs über einen Proxy-Server läuft. Bei Software anderer Hersteller (Beispiel "Keysight BenchVue", siehe Screenshot) gibt es daher die Möglichkeit den Proxy-Server anzugeben. Nur damit funktioniert es dann. Wäre super, wenn es das auch für den Brick Viewer gäbe. Momentan kann ich Updates immer nur zuhause durchführen...

Beispiel_Proxy_Settings_Keysight_BenchVue.png.b1aa181ddbaf4938f1a2ffc04365b21f.png

Link zu diesem Kommentar
Share on other sites

...als weitere mögliche Ursache käme ansonsten noch in Frage, dass die Verbindung durch eine Firewall etc. geblockt wird. Ich hätte dann aber die Möglichkeit bestimmte Adressen als sicher zu deklarieren, d.h. freischalten zu lassen. Kannst Du mir sagen, mit welcher Adresse sich der BrickViewer verbindet?

Link zu diesem Kommentar
Share on other sites

Auf die Adresse kann ich (per Chrome/Explorer etc.) zugreifen. Es sollte also nicht daran liegen, dass der Zugriff aus dem Brick Viewer heraus geblockt wird.

 

(Durch die sehr übersichtliche Darstellung auf https://download.tinkerforge.com kann ich nun aber zumindest sehr schnell die neuesten Firmware-Files manuell herunterladen und im Brick Viewer laden  :) )

Link zu diesem Kommentar
Share on other sites

  • 4 months later...

Ich würde hier gerne mal einhaken, weil ich gerade vor dem selben Problem stehe. Mit Brick Viewer 2.3.XX konnte ich mit meiner Proxy-Konfiguration noch die Downloadserver erreichen. Der Viewer hat mir nämlich angezeigt, dass Updates für die Brick(s,lets) anstehen. Daher habe ich den Viewer zuerst upgedatet. Leider habe ich danach keinen Zugriff mehr auf den Download-Server. Weder mit Proxy-URL, noch mit statischem Proxy, noch mit Automatischer Suche des Proxys in Windows 10 (1903). Ich sehe immer nur die Blockierungen der direkten Zugriffe in der Firewall.

Die Umstellung auf https, kann dafür eigentlich nicht der Grund sein. https wird normalerweise genauso über den Proxy geleitet, wie http.

Gibt es eine Proxy-Option für den Brick Viewer?

Danke

Ulf

Link zu diesem Kommentar
Share on other sites

Teste mal bitte diese beiden Versionen:

https://download.tinkerforge.com/_stuff/brickv_windows_2_4_11_snapshot_9857a16_http.exe

https://download.tinkerforge.com/_stuff/brickv_windows_2_4_11_snapshot_9857a16_https.exe

Die HTTP Version ist der aktuelle Entwicklungsstand mit allen https://download.tinkerforge.com URLs auf http:// geändert.

Die HTTPS Version ist der aktuelle Entwicklungsstand unverändert.

Damit sollte jetzt raus zu bekommen sein, ob es rein an HTTPS liegt.

Laut Dokumentation sollte Python automatisch einen in Windows eingestellten Proxy nutzen:

https://docs.python.org/3.7/library/urllib.request.html#urllib.request.getproxies

Link zu diesem Kommentar
Share on other sites

ts555, du hast da noch einen anderen Bug gefunden. Du versuchst da gerade eine Co-Prozessor Bricklet Firmware auf ein nicht vorhandenes Bricklet an Port B des Master Bricks zu flashen. Das geht nicht. Das erzeugt diese falsche Fehlermeldung, da diese Situation in Brick Viewer nicht richtig behandelt wird. Ich habe das gerade für die nächste Brick Viewer Version behoben.

Wenn du da jetzt das XMC1400 Breakout Bricklet mit dessen Standard-Firmware flashen würdest, dann sollte das funktionieren.

Testet auch mal bitte diese Version:

https://download.tinkerforge.com/_stuff/brickv_windows_2_4_11_snapshot_e750b42.exe

Die zeigt beim Start jetzt eine Meldung mit der von Python erkannten Proxy Konfiguration an.

Ich vermute das bei euch beiden nur eine Proxy Konfiguration für HTTP, aber nicht für HTTPS erkannt wird und das das Problem hier ist.

Wenn ich hier testweise unter Windows 10 in den Windows Netzwerkeinstellungen als Proxy foobar.com:5544 einstelle, dann zeigt mir Brick Viewer das beim Start so an:

http: http://foobar.com:5544
https: https://foobar.com:5544
ftp: ftp://foobar.com:5544

Wenn ich aber bei der Proxy Einstellung http://foobar.com:5544 eintrage, dann kommt das in Python nur als HTTP Proxy an:

http: http://foobar.com:5544

Wie und wo ist bei euch der Proxy in Windows eingestellt?

Link zu diesem Kommentar
Share on other sites

Danke für den Hinweis zum Bricklet Firmware-Update. Es war zwar schon ein Bricklet angeschlossen, aber der Bootstrapper, den ich selbst auf einen leeren uC geladen hatte, hatte noch Fehler. Inzwischen ist das aber behoben und das Bricklet läuft.

Ansonsten hatte ich gestern meine Beiträge zu voreilig abgeschickt! Die vermeintliche Internetverbindung hatte ich nur bekommen, da ich zu diesem Zeitpunkt per Wifi verbunden war. Mit der "normalen" LAN-Verbindung, die über den Firmen-Proxy läuft, besteht das Problem leider nach wie vor. Und zwar unabhängig davon, ob ich die http oder https Version verwende. Wenn ich "brickv_windows_2_4_11_snapshot_e750b42.exe" starte, erscheint die Meldung "No proxies found". Wie und wo der Proxy im Firmennetz konfiguriert ist, weiß ich nicht. 

Ich habe nun mal versucht, direkt in Python3 eine Internetseite aufzurufen, über folgendes Script:

import urllib.request
x = urllib.request.urlopen('https://www.google.com/')
print(x.read())

Das klappt über den Proxy natürlich ebenfalls nicht.
Es funktioniert aber tatsächlich mit folgender Lösung (Proxy manuell eingetragen):

import urllib.request as request
proxy_handler = request.ProxyHandler({'http': 'http://www.example.com:3128/'})
opener = request.build_opener(proxy_handler)
url = 'http://www.example.org'
# open the website with the opener
req = opener.open(url)
data = req.read().decode('utf8')
print(data)

(Code-Ausschnitt kopiert von: https://stackoverflow.com/questions/34576665/setting-proxy-to-urllib-request-python3)

bearbeitet von ts555
Link zu diesem Kommentar
Share on other sites

ts555, was ich in Python tun müsste ist klar. Ich will aber vermeiden, dass händisch tun zu müssen, da Python das automatisch kann, wenn in Windows der Proxy richtig eingestellt ist.

Bei dir scheint das aber nicht der Fall zu sein. Heißt das, dass du in jedem Programm, das sich mit dem Internet verbindet, auf deinem Firmen PC händisch den Firmen Proxy eingestellt hast?

Versuch mal in Windows den Proxy einzustellen, anstatt für jedes Programm einzeln:

Einstellungen -> Netzwerk und Internet -> Proxy -> Manuelle Proxyeinrichtung

"Proxyserver verwenden" einschalten

Adresse: www.example.com

Port: 3128

"Proxyserver nicht für lokale Adressen verwenden" einschalten

Änderungen mittels "Speichern" Knopf speichern.

Die Werte für Adresse und Port habe ich jetzt entsprechend deines Beispiels gewählt. Da musst du natürlich deine richtig Proxy Konfiguration eintragen.

Dann sollte dir das Brick Viewer beim Start auch anzeigen und die Firmware Abfrage sollte funktionieren.

Link zu diesem Kommentar
Share on other sites

Also beispielsweise in der Arduino IDE muss ich den Proxy auch manuell eintragen. Die automatische Erkennung klappt hier nicht. Andere Programme können Updates ohne manuelle Konfiguration ausführen (z.B. LTSpice XVII). 
In den Windows 10 Einstellungen ist die Manuelle Proxyeinrichtung zwar sichtbar (inkl. voreingetragener Proxyadresse) und ich kann "Proxyserver verwenden" von Aus auf Ein umstellen. Aber der "Speichern"-Button ist praktisch ohne Funktion. D.h. nach dem erneuten Öffnen des Menüs sind alle Einstellungen wieder zurückgesetzt (trotz Admin-Rechten)....   

Link zu diesem Kommentar
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Gast
Reply to this topic...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Clear editor

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...