DnsClientApp

DNS Client Application Configuration

The N2SVCD DNS Client Application supports sending of DNS requests over UDP to a DNS server which is configured to serve such responses. This is typically used for ENUM requests, but other general DNS queries are also supported.

Any LogicApp Lua script (e.g. a test script or a service script) can initiate outbound DNS requests (via the DnsLuaAgent agent plugin).

This is done by internally sending and receiving DNS-... messages over the n2svcd message bus.

See the N2SVCD Configuration Overview for more information on how the DNS Application interacts with other components.

The following configuration is used to create a DNS Client Application instance.

<?xml version="1.0" encoding="utf-8"?>
<n2svcd>
  ...
  <applications>
    ...
    <application name="ENUM" module="DnsClientApp" stderr_debug="no">
        <include>
            <lib>../apps/dns_c/lib</lib>
        </include>
        <parameters>
            <parameter name="remote_host" value="localhost"/>
            <parameter name="local_port" value="8123"/>
            <parameter name="server_timeout" value="2"/>
        </parameters>
    </application>
    ...
  </application>
  ...
</n2svcd>

Configuration Details

The application element attributes for a DNS Client Application instance may include the below.

For details of the various parameter types used, refer to Common Configuration.

Note that this DNS client application is built on top of the so-called “TCP Application” framework, even though the underlying socket is actually a UDP socket.

Parameter Name Type XML Type Description
See: Common Application configuration
See: TCP Application configuration
module String Attribute [Required] DnsClientApp
include.lib String Element [Required] ../apps/dns_c/lib
parameters Array Element [Required] As per Common Configuration Application parameters.
"edr_enabled" - - This value is ignored; the DNS Client Application does not support writing EDRs.
"remote_host" String Attribute [Required] As per common TCP configuration for remote_host.
"remote_port" Integer Attribute As per common TCP configuration for remote_port.
(Default = 53)

Message Handling

In addition to the common Application management messages, the DNS Client Application uses the following messages: