DNS Verification

DNS Summary

A detailed manual that discusses DNS configuration requirements for sipXecs is available from the code repository under sipXregistry/doc/HaSetup.pdf. In particular DNS configuration for a high-availability (HA) system consisting of a redundant call server is tricky and requires the manual to be studied in detail. If using the installation wizard described [here|xecsuserV4r2:CD_Installation_of_sipXecs] HA DNS configuration is done automatically. For an HA system if the DNS server is co-resident on the master sipXecs server, it is required to run a slave DNS server on the slave sipXecs server. If that is not done then there is no redundancy since the DNS server will fail together with the master server. Such redundant DNS servers are also auto-configured using the installation wizard. The complication arises when an external DNS server shall be used, such as on a Windows server system.

Details on setting up Microsoft Windows DNS services for use with sipXecs has been detailed in Microsoft DNS Configuration for sipXecs.

DNS Configuration for non-HA sipXecs Systems

DHCP and DNS servers can be configured to run on the sipX host if such services are not already available in your network ([xecsuserV4r2:HowTo Configure DHCP and DNS Servers]).

By default sipX will install using a fully qualified host name (FQHN) and without using DNS SRV. Still, configuring DNS SRV for SIP is a good idea. Refer to ["DNS and how it affects SIP URI Addressing"|xecsuserV4r2:DNS_and_how_it_affects_SIP_URI_Addressing] for further information.

Make sure the machine is setup in DNS. This requires the editing of the configuration of your domain's DNS server and is critically important.

You can use DNS SRV records, which allows you to establish a SIP service for your domain. In addition, DNS SRV is a powerful mechanism for load balancing and fail over and is typically used for scalable and resilient Web server installations. See DNS man pages for additional information.

DNS server configuration on the Linux host running bind (DNS server):
File: /etc/bind/pri/your-primary.zone

sipx            A       ip.add.re.ss

_sip._udp       IN      SRV     100     1       5060    sipx
_sip._tcp       IN      SRV     200     1       5060    sipx
_sips._tcp      IN      SRV     300     1       5061    sipx

With the provided script _sipx-dns_ it is possible to generate the necessary settings ready to be pasted into the zone file. This script was created in support of high availability configuration with more complex DNS requirements. Below is the most simple case with just one server (The NAPTR records as well as the __sips._tcp_ record are optional):

Usage: sipx-dns sip-domain server-name/server-ip

Code: Example DNS entries you can paste into an existing zone file

>sipx-dns example.com sipx.example.com/10.1.1.50

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; sipX Servers for SIP domain 'example.com'
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
sipx.example.com.      IN      A       10.1.1.50

example.com.            IN      NAPTR   2 0 "s" "SIP+D2T" "" _sip._tcp.example.com.
example.com.            IN      NAPTR   2 0 "s" "SIP+D2U" "" _sip._udp.example.com.

_sip._tcp.example.com.  IN      SRV     1 0 5060 sipx.example.com.
_sip._udp.example.com.  IN      SRV     1 0 5060 sipx.example.com.

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

Check that DNS is working

Code: Verify DNS name resolution using Linux

ping sipx
ping sipx.your.domain

dig -t A sipx.your.domain
dig -t SRV _sip._tcp.your.domain
dig -t SRV _sip._udp.your.domain
dig -t SRV _sips._tcp.your.domain

Code: Verify DNS name resolution using Windows

# Open a DOS Window
ping sipx
ping sipx.your.domain

nslookup
>set q=srv
_sip._tcp.your.domain
_sip._udp.your.domain
_sips._tcp.your.domain

Fully Qualified Host Name

Make sure your system has a fully qualified hostname. If properly configured during the installation process, the following lines should be in your /etc/hosts file. If you installed without a network connection, the /etc/hosts file needs to be manually corrected.

File: /etc/hosts

127.0.0.1                    localhost.localdomain localhost
<your sipX server IP addr>   sipx.your.domain sipx

Code: Test host and domain name settings

hostname       (outputs your fully qualified name)
domainname -f  (outputs the fully qualified name)
domainname -d  (outputs the domain name)