Highlighted
New Member.
1588 views

How to avoid discovering IPV6 addresses for Windows and Unix hosts ?

Hello,

 

uCMDB version: 9.05 CUP 12.351

DDM Content Pack 11.08.802

 

I see a lot of Unix hosts in our test environment that have two ip addresses connected to them. One is IPV4 and the other is IPV6. How can I control the discovery process such that it disables IPV6 and finds only IPV4's ?

 

Kindly oblige.

 

Thanks,

PKS

Tags (1)
0 Likes
25 Replies
Highlighted
Honored Contributor.
Honored Contributor.

Hi Bogdan,

I checked the file and the below is already in the exclude part. I am not able to understand this.

</object>
<object class="ip_address">
<attribute name="name" type="String" operator="BETWEEN">FF00::/8</attribute>
</object>
<object class="ip_address">
<attribute name="name" type="String" operator="BETWEEN">FE80::/10</attribute>
</object>

0 Likes
Highlighted
Acclaimed Contributor.
Acclaimed Contributor.

What you saw there is the exclusion for IPv6 localhost. The same logic can be applied but not on IP_address value but for IP_address_type.

Kind regards,
Bogdan Mureșan

EMEA Technical Success
0 Likes
Highlighted
Honored Contributor.
Honored Contributor.

Hi Bogdan,

I tried to exclude that with different parameter like 

type =ip_address_type instead of string.

operator= constant

<object class="ip_address">
<attribute name="ip_address_type" type="String" operator="EQUAL">IPv6</attribute>
</object>

but i am still gettting the ipv6 in the environment.

Tags (1)
0 Likes
Highlighted
Acclaimed Contributor.
Acclaimed Contributor.

You shouldn't.

And this is valid only for discovery.

Kind regards,
Bogdan Mureșan

EMEA Technical Success
0 Likes
Highlighted
Outstanding Contributor.
Outstanding Contributor.

You can only use globalfilter.xml for STRING type. The IpAddressType field is an enumerated field so this will not work. I would use an enrichment to delete the IPv6 address after discovery.

0 Likes
Highlighted
Acclaimed Contributor.
Acclaimed Contributor.

OK, agreed. 

Or you can use GlobalFiltering so a regex rule can make the difference between an IPv4 or IPv6 value.

Kind regards,
Bogdan Mureșan

EMEA Technical Success
0 Likes
Highlighted
Honored Contributor.
Honored Contributor.

Hi,

Enrichment Rule i already think of and i am actually working on remove the duplicate node because everytime few particular CI are getting discovered like double or triple times and in that i saw with the common  IPV4 there is always a different IPV6 attached to them which i think is not fulfilling the identification criteria and creating a new CI. I tried to merge CI also but the next time when i run the job the NEW CI came into the CMDB. So if i create an enrichment  and the CI is already got discovered so on the next job runnning will it create the new CI or not. That's why i want to avoid the scanning of IPV6 in the system.

0 Likes
Highlighted
Acclaimed Contributor.
Acclaimed Contributor.

Enrichments are easy to understand and implement but they have a huge performance impact. I would avoid them at all cost, especially the always-on enrichments.

 

GlobalFiltering happens on probe level, on each probe. Those CIs aren't sent to the server, no reconciliation for them, no history, no DB updates. After you delete them, the whole process starts again but without history: sql queries, history updates, etc... 
So avoid enrichments, search the root cause.

Kind regards,
Bogdan Mureșan

EMEA Technical Success
0 Likes
Highlighted
Respected Contributor.. Respected Contributor..
Respected Contributor..

will a RegEx work on an enumerated vaue like ip_address_type? i am also trying to limit them from population but not quite sure what to use in place of "string".
i tried using the ip_address type "name" with a RegEx like ^[a-z] but that didnt work.

what would really be helpful is if someone could post the globalfilter xml to limit these.

thanks!

0 Likes
Highlighted
Outstanding Contributor.
Outstanding Contributor.

After discussion with R&D regarding globalFiltering.xml I can tell you that the below code does work in UCMDB 10.33 for filtering out IPv6:

<?xml version="1.0" encoding="UTF-8"?>
<resultFilters recursiveFilter="true" enableFilter="true">
    <excludeFilter>
        <vector>
            <object class="ip_address">
                <attribute name="ip_address_type" type="String">IPv6</attribute>
            </object>                                                           
        </vector>
    </excludeFilter>
    <includeFilter>
        <vector />
    </includeFilter>
</resultFilters>
Highlighted
Acclaimed Contributor.
Acclaimed Contributor.

John, I confirm, your exclusion rule is working and valid.

Kind regards,
Bogdan Mureșan

EMEA Technical Success
0 Likes
Highlighted
Respected Contributor.. Respected Contributor..
Respected Contributor..

I have added this to my globalfiltering.xml file and it did NOT work for me.

After applying the additonal object in the vector for excludefilter, i bounced the server and bounced the probe just to be sure everyhting was cleared out. my sending queue was clear as well.

I reran the Host Connection by Shell job for a unix instance and an Host Connection by WMI job for a windows host and both populated the IPv6 addresses associated with the host.

any suggestions on what may be going on here? I certainly appreciate the help!

0 Likes
The opinions expressed above are the personal opinions of the authors, not of Micro Focus. By using this site, you accept the Terms of Use and Rules of Participation. Certain versions of content ("Material") accessible here may contain branding from Hewlett-Packard Company (now HP Inc.) and Hewlett Packard Enterprise Company. As of September 1, 2017, the Material is now offered by Micro Focus, a separately owned and operated company. Any reference to the HP and Hewlett Packard Enterprise/HPE marks is historical in nature, and the HP and Hewlett Packard Enterprise/HPE marks are the property of their respective owners.