Microsoft Windows Server DNS Service Socket Failure

Microsoft.Windows.Server.DNS.Service.SocketFailure (Rule)

Alert generating rule for the DNS Service.

Knowledge Base article:

Summary

The DNS Server service responds to requests from DNS client computers for name resolution services. Domain Name System (DNS) is a protocol that enables a computer to obtain the numeric IP address of another computer by submitting the target computer's name to a DNS server. Problems with the DNS Server service can cause network performance to degrade or even prevent network computers from being able to locate each other.

Causes

The DNS server encountered an error creating or binding a TCP or UDP socket.

Additional

Free memory or other system resources

To perform this procedure, you must have membership in Administrators, or you must have been delegated the appropriate authority.

Close any unnecessary applications or services, and then try the operation again.

If the operation fails again, restart the DNS Server service.

To restart the DNS Server service:

1.On the DNS server, start Server Manager. To start Server Manager, click Start, click Administrative Tools, and then click Server Manager.

2.In the console tree, double-click Roles, double-click DNS Server, and then double-click DNS.

3.Right-click the DNS server, click All Tasks, and then click Restart.

If the problem continues, restart the computer and then use Server Manager to verify that the DNS Server service has started.

To restart the computer:

Click Start, click the arrow next to the Lock button, and then click Restart.

To verify that the DNS Server service has started:

1.On the DNS server, start Server Manager. To start Server Manager, click Start, click Administrative Tools, and then click Server Manager.

2.In the console tree, expand Roles, and then click DNS Server.

The System Services list shows the state of the DNS Server service.

If the problem persists, one or more applications running on the server might be causing memory problems.

External

http://technet.microsoft.com/en-us/library/dd365049(v=ws.10).aspx

Element properties:

TargetMicrosoft.Windows.Server.DNS.Server
CategoryAlert
EnabledTrue
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
RemotableTrue
Alert Message
Windows DNS - Socket Failure

Event ID: {0}
Event Source: {1}
Event Log: {2}

Event Description: {3}
Event LogDNS Server

Member Modules:

ID Module Type TypeId RunAs 
DS DataSource Microsoft.Windows.EventProvider Default
Alert WriteAction System.Health.GenerateAlert Default

Source Code:

<Rule ID="Microsoft.Windows.Server.DNS.Service.SocketFailure" Enabled="true" Target="Microsoft.Windows.Server.DNS.Server" ConfirmDelivery="true" Remotable="true" Priority="Normal" DiscardLevel="100">
<Category>Alert</Category>
<DataSources>
<DataSource ID="DS" TypeID="Windows!Microsoft.Windows.EventProvider">
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<LogName>DNS Server</LogName>
<Expression>
<Or>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">403</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">404</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">405</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">406</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">407</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</Or>
</Expression>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="Alert" TypeID="Health!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>2</Severity>
<AlertOwner/>
<AlertMessageId>$MPElement[Name="Microsoft.Windows.Server.DNS.Service.SocketFailure.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Data/EventDisplayNumber$</AlertParameter1>
<AlertParameter2>$Data/EventSourceName$</AlertParameter2>
<AlertParameter3>$Data/Channel$</AlertParameter3>
<AlertParameter4>$Data/EventDescription$</AlertParameter4>
</AlertParameters>
<Suppression>
<SuppressionValue>$Data/LoggingComputer$</SuppressionValue>
</Suppression>
<Custom1/>
<Custom2/>
<Custom3/>
<Custom4/>
<Custom5/>
<Custom6/>
<Custom7/>
<Custom8/>
<Custom9/>
<Custom10/>
</WriteAction>
</WriteActions>
</Rule>