Seite 1 von 1
Paketdownload nur über bestimmte Interfaces des Clients
Verfasst: 15 Mär 2016, 08:46
von Godor
Hallo,
ist es mit der WAN/VPN-Erweiterung auch möglich, den Paketdownload abhängig von der Aktivität eines bestimmten Netzwerkinterfaces zu unterbinden ?
Der Hintergrund ist der, dass zum Beispiel der Download über Mobilfunk verhindert werden soll (LAN inaktiv, WWAN aktiv, Traffic geht über VPN-Interface).
Re: Paketdownload nur über bestimmte Interfaces des Clients
Verfasst: 15 Mär 2016, 09:49
von wolfbardo
Hallo,
ja, das geht im Prinzip
z.B. Einschränkung nur auf openvpn:
Code: Alles auswählen
wql = SELECT * FROM __InstanceModificationEvent WITHIN 2 WHERE TargetInstance
ISA 'Win32_NetworkAdapter' AND TargetInstance.Name = "TAP-Win32 Adapter V9"
AND TargetInstance.NetConnectionStatus = 2
heisst, es wird nur geschaut, ob eben openvpn aktiv ist.
Eine andere Alternative ist nur mit dem Timer-Event zu arbeiten ohne das event_net_connection
Gruss
Bardo Wolf
Re: Paketdownload nur über bestimmte Interfaces des Clients
Verfasst: 30 Mär 2016, 14:27
von Godor
Hallo,
nachdem ich mich jetzt etwas mit dem Thema beschäftigten konnte, komme ich zu dem Schluss, dass aufgrund der Beschränkungen von wql was ich möchte mit dem [event_net_connection] gar nicht funktioniert, da ich überprüfen müsste ob eine andere Verbindung online ist als die, die das Event auslöst (mit SQL würde ich da was zusammenjoinen oder nen Subquery machen oder so).
Weiterhin habe ich erst Mal versucht, bei einem Testrechner erst einmal direkt in der opsiconfd das Timer-Event zu verändern:
[event_timer]
super = sync
type = timer
active = True
interval = 300
wql = SELECT * FROM Win32_NetworkAdapter WHERE Name LIKE 'Intel(R)%' AND NetConnectionStatus = 2"
Dies hat leider keinen Effekt gehabt.
Haben Sie vielleicht eine Idee, was ich noch probieren könnte ?
Mit freundlichen Grüßen
Dino Godor
Re: Paketdownload nur über bestimmte Interfaces des Clients
Verfasst: 31 Mär 2016, 12:12
von n.wenselowski
Hi Dino,
Godor hat geschrieben:nachdem ich mich jetzt etwas mit dem Thema beschäftigten konnte, komme ich zu dem Schluss, dass aufgrund der Beschränkungen von wql was ich möchte mit dem [event_net_connection] gar nicht funktioniert, da ich überprüfen müsste ob eine andere Verbindung online ist als die, die das Event auslöst (mit SQL würde ich da was zusammenjoinen oder nen Subquery machen oder so).
Gab es nicht bei WQL
TargetInstance und
PreviousInstance?
Gruß
Niko
Re: Paketdownload nur über bestimmte Interfaces des Clients
Verfasst: 31 Mär 2016, 12:34
von Godor
Hallo,
ich habe inzwischen gemerkt, dass der vorige Ansatz etwas naiv war. Nachdem ich noch einige Male die entsprechende Sektion des Handbuchs konsultiert habe und mir die Konfigurationsdatei näher angeschaut habe bin ich inzwischen auf folgendes gekommen:
[event_customnet]
super = sync
type = custom
active = False
wql = SELECT * FROM Win32_NetworkAdapter within 300 WHERE Name LIKE 'Intel(R)%' AND NetConnectionStatus = 2"
[event_customnettimer]
super = customnet
type = timer
active = True
interval = 300
Leider führt das noch nicht zum gewünschten Ergebnis, das wql vom ersten Event wird ignoriert.
Ist was ich hier versuche, nämlich einen Timer mit wql-Abfrage zu bauen überhaupt möglich ? Ich finde das Handbuch hier sehr wage.
Re: Paketdownload nur über bestimmte Interfaces des Clients
Verfasst: 31 Mär 2016, 14:02
von Godor
Hi Niko,
so weit ich jetzt nachgelesen habe, gibt PreviousInstance doch den vorigen Status des veränderten Objektes wieder, oder ?
Wenn ich über die Aktivierung des Netzwerkadapters gehe, dann müsste ich aber den Status eines anderen Adapters überprüfen.
Also: VPN-Adapter geht hoch, es soll aber nur ein Event gefahren werden wenn der bekannte Physische Adapter (oder ein anderer physischer Adapter für das WWAN explizit nicht) aktiv ist.
Alternativ würde ich ein Event bauen, dass sowohl die Eigenschaften eines Timers hat als auch wie ein Custom-Event von dem WQL abhängig ist, dass der physikalische Netzwerkadapter (oder explizit nicht der WWAN-Adapter) eine Verbindung hat. Ich sehe im Handbuch keinerlei Informationen dazu, ob so eine Mehrfachvererbung in OPSI implementiert ist und nehme derzeit an, dass sie es nicht ist, da der wql-teil bei mir ignoriert wird.
MFG
Dino