Video Screencast Help
Search Video Help Close Back
to help
New in the Rewards Catalog: Vouchers for "Symantec Technical Specialist" and "Symantec Certified Specialist" exams.

Splitting Subnets Into Multiple Collections

Updated: 29 Jan 2009 | 1 comment
vortex0007's picture
0 0 Votes
Login to vote

A bit of SQL that I have found very useful for building Collections in Altiris Notification Server 6 (NS6) is posted below.

This SQL is very handy for helping to configure NS6 policies. For example a configuration policy might need different settings based on what subnet a machine falls into.

To use this, open the NS console > choose Resources > under Collections choose My Collections > Right-click on My Collections > Choose New Collection. Use the option to enter SQL directly and cut and paste the SQL below.

You will need to edit 3 places for this to work in your environment.

  1. Edit Line 8 where ip.[Subnet] Like '192.%' to your appropriate subnet.
  2. Edit Line 9, the very last 0 should be changed to be the beginning of your range.
  3. Edit Line 10, the very last number 110 should be changed to be the end of your range.

Save the results and you are complete.

select Guid from vResource
where ResourceTypeGuid in
(select ResourceTypeGuid from ResourceTypeHierarchy
	where BaseResourceTypeGuid='493435F7-3B17-4C4C-B07F-C23E7AB7781F')
and ( Guid in 
		(select [_ResourceGuid] 
			from [Inv_AeX_AC_TCPIP] ip
			where ip.[Subnet] LIKE '192.%'
AND (SUBSTRING(RIGHT(ip.[Subnet], (LEN(ip.[Subnet]) - 3)),0,PATINDEX('%.%',RIGHT(ip.[Subnet],(LEN(ip.[Subnet]) - 3)))) >= 0)
AND (SUBSTRING(RIGHT(ip.[Subnet], (LEN(ip.[Subnet]) - 3)),0,PATINDEX('%.%',RIGHT(ip.[Subnet],(LEN(ip.[Subnet]) - 3)))) <= 110)))

Comments

MReavis's picture
30
Jan
2009
0 Votes 0
Login to vote

Similar query to build dynamic collections from sites/subnets

This query will locate all of the computers on your NS where the first 2 octets of the IP address match the first 2 octets of any IP range assigned to (in this example XXX) the defined site. If your IP schema is different you would need to modify the SQL parsing, as in you need to match down to the 3rd octet.

select distinct vr.guid
from vSiteSubnetMap sm
join Item sub          
	on sub.Guid = sm.SubnetGuid         
join item site          
	on site.guid = sm._resourceguid 
	and site.name = 'XXX' --Enter the name of your site from sites&subnets configuration
join Inv_AeX_AC_TCPIP ip
	on substring(ip.[ip address],1,charindex('.', ip.[ip address])+         
		charindex('.',substring(ip.[ip address],charindex('.', ip.[ip address])+1,len(ip.[ip address])-charindex('.', ip.[ip address])+1)) -1)         
	= substring(sub.Name,1,charindex('.', sub.name)+         
		charindex('.',substring(sub.name,charindex('.', sub.name)+1,len(sub.name)-charindex('.', sub.name)+1)) -1) 
join vResource vr         
	on vr.guid = ip._resourceguid         
	and ResourceTypeGuid in          
		(select ResourceTypeGuid          
		from ResourceTypeHierarchy          
		where BaseResourceTypeGuid='493435f7-3b17-4c4c-b07f-c23e7ab7781f')