Application Object Server (AOS) NetTcp DNS resolution

Microsoft.Dynamics.AX6.ManagementPack.AOS.Monitoring.AOSEndToEnd.NetTcpDNSResolutionMonitor (UnitMonitor)

Determines whether the computer name of the computer running the Application Object Server (AOS) can be resolved by the domain name server (DNS).

Knowledge Base article:

Summary

Could not resolve the name supplied name through the watcher node’s Domain Name Service.

Causes

This can happen for a few reasons:

The DNS client side cache has a stale entry

The DNS infrastructure not available

The watcher node DNS settings are out of date or incorrect

DNS has a stale entry for the supplied target name and is returning the wrong IP address

Resolutions

Try the following troubleshooting steps to attempt to fix the problem

On a Windows computer, at the command line type:

ipconfig /flushdns

Then type:

ipconfig /registerdns

Check with your network or domain administrator to determine whether there are any problems with the DNS infrastructure that the watcher node is configured to use.

Check the IP Address that is being returned to ensure it is returning the actual device name you expect.

Do this by pinging by the device name you supplied in the wizard. Next take the IP Address and type ping -a [IPAddress]. For example, if the IP Address is 10.10.1.1:

ping -a 10.10.1.1

If the name returned is different than the name supplied in the wizard there are likely some name resolution issues related to having a misconfigured or stale DNS entry.

Element properties:

TargetMicrosoft.Dynamics.AX6.ManagementPack.ClassLibrary.Perspective.AOSNetTCPPortPing
Parent MonitorSystem.Health.AvailabilityState
CategoryCustom
EnabledTrue
Alert GenerateFalse
Alert Auto ResolveTrue
Monitor TypeMicrosoft.Dynamics.AX6.ManagementPack.AOS.Monitoring.AOSEndToEnd.NetTcpDNSResolution
RemotableTrue
AccessibilityPublic
RunAsMicrosoft.Dynamics.AX6.ManagementPack.ClassLibrary.AxDbReaderAccount

Source Code:

<UnitMonitor ID="Microsoft.Dynamics.AX6.ManagementPack.AOS.Monitoring.AOSEndToEnd.NetTcpDNSResolutionMonitor" Accessibility="Public" Enabled="true" Target="MicrosoftDynamicsAX6ManagementPackClassLibrary!Microsoft.Dynamics.AX6.ManagementPack.ClassLibrary.Perspective.AOSNetTCPPortPing" ParentMonitorID="Health!System.Health.AvailabilityState" Remotable="true" Priority="Normal" RunAs="MicrosoftDynamicsAX6ManagementPackClassLibrary!Microsoft.Dynamics.AX6.ManagementPack.ClassLibrary.AxDbReaderAccount" TypeID="Microsoft.Dynamics.AX6.ManagementPack.AOS.Monitoring.AOSEndToEnd.NetTcpDNSResolution" ConfirmDelivery="true">
<Category>Custom</Category>
<OperationalStates>
<OperationalState ID="UIGeneratedOpStateId077ada9529e748e3a155bde6784c4e85" MonitorTypeStateID="IsHealthy" HealthState="Success"/>
<OperationalState ID="UIGeneratedOpStateId30f5663483b141af969d6638034b0e6b" MonitorTypeStateID="IsNotHealthy" HealthState="Error"/>
</OperationalStates>
<Configuration>
<IntervalSeconds>600</IntervalSeconds>
</Configuration>
</UnitMonitor>