I want to assign a
single location
for computers with multiple subnets i.e. a computer having more than one subnet address should fall in one automatic group. I want to customize this like if Local area connection is available and running then it should considers LAN interface as 1st preference and neglect others. If LAN not present or running then it should consider Wireless network connnection as 2nd preference. I want a relevance for the same query.
I have developed following relevance for this query.
IF(name of operating system as lowercase starts with “win”) THEN((IF (exists adapters whose (not exists wifi of it and status of it = 1 and (description of it does not contain “VMware” AND description of it does not contain “Bluetooth” )) of network) THEN ((it = “10.146.96.0” as lowercase or it = “10.154.96.0” as lowercase )of (subnet addresses of it as string as lowercase) of adapters whose (not exists wifi of it and status of it = 1 and (description of it does not contain “VMware” AND description of it does not contain “Bluetooth” )) of network) ELSE ((it = “10.146.96.0” as lowercase or it = “10.154.96.0” as lowercase )of (subnet addresses of it as string as lowercase) of adapters whose (exists wifi of it and status of it = 1 and (description of it does not contain “VMware” AND description of it does not contain “Bluetooth” )) of network))) ElSE((IF (exists adapters whose (exists ip interface whose (point to point of it = false and loopback of it=false and up of it)of network and (friendly name of it does not contain “VMware” AND friendly name of it does not contain “Bluetooth” )) of network) THEN ((it = “10.146.96.0” as lowercase or it = “10.154.96.0” as lowercase )of (subnet addresses of it as string as lowercase) of adapters whose (exists ip interface whose (point to point of it = false and loopback of it=false and up of it)of network and (friendly name of it does not contain “VMware” AND friendly name of it does not contain “Bluetooth” )) of network) ELSE ((it = “10.146.96.0” as lowercase or it = “10.154.96.0” as lowercase )of (subnet addresses of it as string as lowercase) of adapters whose (not exists ip interface whose (point to point of it = false and loopback of it=false and up of it)of network and (friendly name of it does not contain “VMware” AND friendly name of it does not contain “Bluetooth” )) of network)))
this is working fine.
However for following windows workstation is is showing unexpected output.
WinXP 5.1.2600
Win7 6.1.7601
Win7 6.1.7600
the workstations having this OS are falling under all the groups whose definition is updated with above relevance.
Is there any operator from above relevance which is not supported on the OS listed above???
Have you looked a the “Location Property Wizard”? It’s either in the BigFix Support, Lifecycle Management, or BigFix Labs sites. You can build a list of IP subnets or address ranges, build a text file mapping each subnet/range to a location name, and have it create actions that will set a property for the client. It assigns the property based on the first match it finds, so if you have a list of known internal addresses you’d put those first, and the client will match it.
Looking at your Relevance I can’t quite fathom what you are trying to do. I think that is in some serious need of refactoring. You could use an “If” statement to determine what “it” is, referring to the network adapter you prefer. Also with multiple adapters, you’re going to get plural results - which is why you’ll match more than one group. Have you used the Fixlet Debuggger? Here’s what mine says, for a machine with three interfaces:
q: (if exists (subnet addresses of it) whose (it as string = "192.168.1.0") then "Group1" else "Group2" ) of adapters of network
A: Group2
A: Group1
A: Group2
So you need to try to get that down to a single result first… I think each adapter is going to match one of your groups, the way you have it written.