What Is Active Directory?: / Ɛldæp/ Application Protocol Directory Services Internet Protocol
What Is Active Directory?: / Ɛldæp/ Application Protocol Directory Services Internet Protocol
2. What is LDAP?
LDAP
From Wikipedia, the free encyclopedia
A directory information tree often reflects various political, geographic, and/or organizational
boundaries, depending on the model chosen. LDAP deployments today tend to use Domain
Name System (DNS) names for structuring the topmost levels of the hierarchy. Deeper inside
the directory might appear entries representing people, organizational units, printers,
documents, groups of people or anything else that represents a given tree entry (or multiple
entries).
Application Layer
Transport Layer
(more)
Internet Layer
(more)
Link Layer
Contents
[hide]
X.500 directory services were traditionally accessed via the X.500 Directory Access Protocol
(DAP), which required the Open Systems Interconnection (OSI) protocol stack. LDAP was
originally intended to be a lightweight alternative protocol for accessing X.500 directory
services through the simpler (and now widespread) TCP/IP protocol stack. This model of
directory access was borrowed from the DIXIE and Directory Assistance Service protocols.
Standalone LDAP directory servers soon followed, as did directory servers supporting both
DAP and LDAP. The latter has become popular in enterprises, as LDAP removed any need to
deploy an OSI network. Today, X.500 directory protocols including DAP can also be used
directly over TCP/IP.
The protocol was originally created by Tim Howes of the University of Michigan, Steve Kille
of Isode Limited, and Wengyik Yeong of Performance Systems International, circa 1993.
Further development has come through the Internet Engineering Task Force.
In the early engineering stages of LDAP, it was known as Lightweight Directory Browsing
Protocol, or LDBP. It was renamed with the expansion of the scope of the protocol beyond
directory browsing and searching, to include directory update functions. It was given its
Lightweight name because it was not as network intensive as its DAP predecessor and thus
was more easily implemented over the internet due to its lightweight bandwidth usage.
LDAP has influenced subsequent Internet protocols, including later versions of X.500, XML
Enabled Directory (XED), Directory Service Markup Language (DSML), Service
Provisioning Markup Language (SPML), and the Service Location Protocol (SLP).
Start TLS — use the LDAPv3 Transport Layer Security (TLS) extension for a secure connection
Bind — authenticate and specify LDAP protocol version
Search — search for and/or retrieve directory entries
Compare — test if a named entry contains a given attribute value
Add a new entry
Delete an entry
Modify an entry
Modify Distinguished Name (DN) — move or rename an entry
Abandon — abort a previous request
Extended Operation — generic operation used to define other operations
Unbind — close the connection (not the inverse of Bind)
In addition the server may send "Unsolicited Notifications" that are not responses to any
request, e.g. before it times out a connection.
A common alternate method of securing LDAP communication is using an SSL tunnel. This
is denoted in LDAP URLs by using the URL scheme "ldaps". The default port for LDAP
over SSL is 636. The use of LDAP over SSL was common in LDAP Version 2 (LDAPv2)
but it was never standardized in any formal specification. This usage has been deprecated
along with LDAPv2, which was officially retired in 2003.
LDAP is defined in terms of ASN.1, and protocol messages are encoded in the binary format
BER. It uses textual representations for a number of ASN.1 fields/types, however.
Be aware that a DN may change over the lifetime of the entry, for instance, when entries are
moved within a tree. To reliably and unambiguously identify entries, a UUID might be
provided in the set of the entry's operational attributes.
An entry can look like this when represented in LDAP Data Interchange Format (LDIF)
(LDAP itself is a binary protocol):
"dn" is the distinguished name of the entry; it's not an attribute nor part of the entry. "cn=John
Doe" is the entry's RDN (Relative Distinguished Name), and "dc=example,dc=com" is the
DN of the parent entry, where "dc" denotes 'Domain Component'. The other lines show the
attributes in the entry. Attribute names are typically mnemonic strings, like "cn" for common
name, "dc" for domain component, "mail" for e-mail address and "sn" for surname.
A server holds a subtree starting from a specific entry, e.g. "dc=example,dc=com" and its
children. Servers may also hold references to other servers, so an attempt to access
"ou=department,dc=example,dc=com" could return a referral or continuation reference to a
server which holds that part of the directory tree. The client can then contact the other server.
Some servers also support chaining, which means the server contacts the other server and
returns the results to the client.
LDAP rarely defines any ordering: The server may return the values of an attribute, the
attributes in an entry, and the entries found by a search operation in any order. This follows
from the formal definitions - an entry is defined as a set of attributes, and an attribute is a set
of values, and sets need not be ordered.
[edit] Operations
The client gives each request a positive Message ID, and the server response has the same
Message ID. The response includes a numeric result code which indicates success, some error
condition or some other special cases. Before the response, the server may send other
messages with other result data - for example each entry found by the Search operation is
returned in such a message.
Expand discussion of referral responses to various operations, especially modify, for example
where all modifies must be directed from replicas to a master directory.
[edit] StartTLS
The StartTLS operation establishes Transport Layer Security (the descendant of SSL) on the
connection. It can provide data confidentiality (to protect data from being observed by third
parties) and/or data integrity protection (which protects the data from tampering). During
TLS negotiation the server sends its X.509 certificate to prove its identity. The client may
also send a certificate to prove its identity. After doing so, the client may then use
SASL/EXTERNAL. By using the SASL/EXTERNAL, the client requests the server derive
its identity from credentials provided at a lower level (such as TLS). Though technically the
server may use any identity information established at any lower level, typically the server
will use the identity information established by TLS.
Servers also often support the non-standard "LDAPS" ("Secure LDAP", commonly known as
"LDAP over SSL") protocol on a separate port, by default 636. LDAPS differs from LDAP in
two ways: 1) upon connect, the client and server establish TLS before any LDAP messages
are transferred (without a StartTLS operation) and 2) the LDAPS connection must be closed
upon TLS closure.
LDAPS was used with LDAPv2, because the StartTLS operation had not yet been defined.
The use of LDAPS is deprecated, and modern software should only use StartTLS .
The Bind operation authenticates the client to the server. Simple Bind can send the user's DN
and password in plaintext, so the connection should be protected using Transport Layer
Security (TLS). The server typically checks the password against the userPassword attribute
in the named entry. Anonymous Bind (with empty DN and password) resets the connection to
anonymous state. SASL (Simple Authentication and Security Layer) Bind provides
authentication services through a wide range of mechanisms, e.g. Kerberos or the client
certificate sent with TLS.
Bind also sets the LDAP protocol version. Normally clients should use LDAPv3, which is the
default in the protocol but not always in LDAP libraries.
Bind had to be the first operation in a session in LDAPv2, but is not required in LDAPv3 (the
current LDAP version).
The Search operation is used to both search for and read entries. Its parameters are:
baseObject
scope
What elements below the baseObject to search. This can be BaseObject (search just the
named entry, typically used to read one entry), singleLevel (entries immediately below
the base DN), or wholeSubtree (the entire subtree starting at the base DN).
filter
Criteria to use in selecting elements within scope. For example, the filter
(&(objectClass=person)(|(givenName=John)(mail=john*))) will select
"persons" (elements of objectClass person) who either have the given name "John" or an e-
mail address that begins with the string "john".
derefAliases
Whether and how to follow alias entries (entries which refer to other entries),
attributes
Maximum number of entries to return, and maximum time to allow search to run.
typesOnly
The server returns the matching entries and potentially continuation references. These may be
returned in any order. The final result will include the result code.
The Compare operation takes a DN, an attribute name and an attribute value, and checks if
the named entry contains that attribute with that value.
Add, Delete, and Modify DN - all require the DN of the entry that is to be changed.
Modify takes a list of attributes to modify and the modifications to each: Delete the attribute
or some values, add new values, or replace the current values with the new ones.
Add operations also can have additional attributes and values for those attributes.
Modify DN (move/rename entry) takes the new RDN (Relative Distinguished Name),
optionally the new parent's DN, and a flag which says whether to delete the value(s) in the
entry which match the old RDN. The server may support renaming of entire directory
subtrees.
An update operation is atomic: Other operations will see either the new entry or the old one.
On the other hand, LDAP does not define transactions of multiple operations: If you read an
entry and then modify it, another client may have updated the entry in the mean time. Servers
may implement extensions [3] which support this, however.
The Extended Operation is a generic LDAP operation which can be used to define new
operations. Examples include the Cancel and Password Modify.
[edit] Abandon
The Abandon operation requests that the server abort an operation named by a message ID.
The server need not honor the request. Unfortunately, neither Abandon nor a successfully
abandoned operation send a response. A similar Cancel extended operation has therefore
been defined which does send responses, but not all implementations support this.
[edit] Unbind
The Unbind operation abandons any outstanding operations and closes the connection. It has
no response. The name is of historical origin, and is not the opposite of the Bind operation.[4]
Clients can abort a session by simply closing the connection, but they should use Unbind.[5]
Unbind allows the server to gracefully close the connection and free resources that it would
otherwise keep for some time until discovering the client had abandoned the connection. It
also instructs the server to cancel operations that can be canceled, and to not send responses
for operations that cannot be canceled.[6]
ldap://host:port/DN?attributes?scope?filter?extensions
There is a similar non-standard ldaps: URL scheme for LDAP over SSL. This should not be
confused with LDAP with TLS, which is achieved using the StartTLS operation using the
standard ldap: scheme.
[edit] Schema
The contents of the entries in a subtree are governed by a schema known as a directory
information tree (DIT).
The schema of a Directory Server defines a set of rules that govern the kinds of information
that the server can hold. It has a number of elements, including:
Attribute Syntaxes—Provide information about the kind of information that can be stored in
an attribute.
Matching Rules—Provide information about how to make comparisons against attribute
values.
Matching Rule Uses—Indicate which attribute types may be used in conjunction with a
particular matching rule.
Attribute Types—Define an OID and a set of names that may be used to refer to a given
attribute, and associates that attribute with a syntax and set of matching rules.
Object Classes—Define named collections of attributes and classify them into sets of
required and optional attributes.
Name Forms—Define rules for the set of attributes that should be included in the RDN for an
entry.
Content Rules—Define additional constraints about the object classes and attributes that
may be used in conjunction with an entry.
Structure Rule—Define rules that govern the kinds of subordinate entries that a given entry
may have.
Attributes are the elements responsible for storing information in a directory, and the schema
defines the rules for which attributes may be used in an entry, the kinds of values that those
attributes may have, and how clients may interact with those values.
Clients may learn about the schema elements that the server supports by retrieving an
appropriate subschema subentry.
The schema defines object classes. Each entry must have an objectClass attribute, containing
named classes defined in the schema. The schema definition of the classes of an entry defines
what kind of object the entry may represent - e.g. a person, organization or domain. The
object class definitions also define the list of attributes that must contain values and the list of
attributes which may contain values.
For example, an entry representing a person might belong to the classes "top" and "person".
Membership in the "person" class would require the entry to contain the "sn" and "cn"
attributes, and allow the entry also to contain "userPassword", "telephoneNumber", and other
attributes. Since entries may have multiple ObjectClasses values, each entry has a complex of
optional and mandatory attribute sets formed from the union of the object classes it
represents. ObjectClasses can be inherited, and a single entry can have multiple
ObjectClasses values which define the available and required attributes of the entry itself. A
parallel to the schema of an objectClass is a class definition and an instance in Object-
oriented programming, representing LDAP objectClass and LDAP entry, respectively.
Directory servers may publish the directory schema controlling an entry at a base DN given
by the entry's subschemaSubentry operational attribute. (An operational attribute describes
operation of the directory rather than user information and is only returned from a search
when it is explicitly requested.)
Server administrators can add additional schema entries in addition to the provided schema
elements. A schema for representing individual people within organizations is termed a white
pages schema.
[edit] Variations
A lot of the server operation is left to the implementor or administrator to decide.
Accordingly, servers may be set up to support a wide variety of scenarios.
For example, data storage in the server is not specified - the server may use flat files,
databases, or just be a gateway to some other server. Access control is not standardized,
though there has been work on it and there are commonly used models. Users' passwords
may be stored in their entries or elsewhere. The server may refuse to perform operations
when it wishes, and impose various limits.
Most parts of LDAP are extensible. Examples: One can define new operations. Controls may
modify requests and responses, e.g. to request sorted search results. New search scopes and
Bind methods can be defined. Attributes can have options that may modify their semantics.
Similarly, data which were previously held in other types of data stores are sometimes moved
to LDAP directories. For example, Unix user and group information can be stored in LDAP
and accessed via PAM and NSS modules. LDAP is often used by other services for
authentication.
[edit] Usage
[edit] Naming structure
Since an LDAP server can return referrals to other servers for requests the server itself will
not/can not serve, a naming structure for LDAP entries is needed so one can find a server
holding a given DN. Since such a structure already exists in the Domain name system (DNS),
servers' top level names often mimic DNS names, as they do in X.500.
If an organization has domain name example.org, its top level LDAP entry will typically have
the DN dc=example,dc=org (where dc means domain component). If the LDAP server is
also named ldap.example.org, the organization's top level LDAP URL becomes
ldap://ldap.example.org/dc=example,dc=org.
Below the top level, the entry names will typically reflect the organization's internal structure
or needs rather than DNS names.
[edit] Terminology
The LDAP terminology one can encounter is rather cumbersome. Some of this is due to
misunderstandings, other examples are due to its historical origins, others arise when used
with non-X.500 services that use different terminology. For example, "LDAP" is sometimes
used to refer to the protocol, other times to the protocol and the data. An "LDAP directory"
may be the data or also the access point. An "attribute" may be the attribute type, or the
contents of an attribute in a directory, or an attribute description (an attribute type with
options). An "anonymous" and an "unauthenticated" Bind are different Bind methods that
both produce anonymous authentication state, so both terms are being used for both variants.
3. Can you connect Active Directory to other 3rd-party Directory
Services? Name a few options.
4. Where is the AD database held? What other folders are related
to AD?
5. What is the SYSVOL folder?
6. Name the AD NCs and replication issues for each NC
7. What are application partitions? When do I use them
8. How do you create a new application partition
9. How do you view replication properties for AD partitions and
DCs?
10. What is the Global Catalog?
11. How do you view all the GCs in the forest?
12. Why not make all DCs in a large forest as GCs?
13. Trying to look at the Schema, how can I do that?
14. What are the Support Tools? Why do I need them?
15. What is LDP? What is REPLMON? What is ADSIEDIT?
What is NETDOM? What is REPADMIN?
16. What are sites? What are they used for?
17. What’s the difference between a site link’s schedule and
interval?
18. What is the KCC?
19. What is the ISTG? Who has that role by default?
20. What are the requirements for installing AD on a new
server?
21. What can you do to promote a server to DC if you’re in a
remote location with slow WAN link?
22. How can you forcibly remove AD from a server, and what
do you do later? • Can I get user passwords from the
AD database?
23. What tool would I use to try to grab security related
packets from the wire?
24. Name some OU design considerations.
25. What is tombstone lifetime attribute?
26. What do you do to install a new Windows 2003 DC in a
Windows 2000 AD?
27. What do you do to install a new Windows 2003 R2 DC in
a Windows 2003 AD?
28. How would you find all users that have not logged on
since last month?
29. What are the DS* commands?
30. What’s the difference between LDIFDE and CSVDE?
Usage considerations?
31. What are the FSMO roles? Who has them by default?
What happens when each one fails?
32. What FSMO placement considerations do you know of?
33. I want to look at the RID allocation table for a DC. What
do I do?
34. What’s the difference between transferring a FSMO role
and seizing one? Which one should you NOT seize? Why?
35. How do you configure a “stand-by operation
master†for any of the roles?
36. How do you backup AD?
37. How do you restore AD?
38. How do you change the DS Restore admin password?
39. Why can’t you restore a DC that was backed up 4 months
ago?
40. What are GPOs?
41. What is the order in which GPOs are applied?
42. Name a few benefits of using GPMC.
43. What are the GPC and the GPT? Where can I find them?
44. What are GPO links? What special things can I do to
them?
45. What can I do to prevent inheritance from above?
46. How can I override blocking of inheritance?
47. How can you determine what GPO was and was not
applied for a user? Name a few ways to do that.
48. A user claims he did not receive a GPO, yet his user and
computer accounts are in the right OU, and everyone else there
gets the GPO. What will you look for?
49. Name a few differences in Vista GPOs
50. Name some GPO settings in the computer and user parts.
51. What are administrative templates?
52. What’s the difference between software publishing and
assigning?
53. Can I deploy non-MSI software with GPO?
54. You want to standardize the desktop environments
(wallpaper, My Documents, Start menu, printers etc.) on the
computers in one department. How would you do that?
Different Types of DNS Records With Syntax and Examples
A
AAAA
CNAME
MX
PTR
NS
SOA
SRV
TXT
NAPTR
The above DNS records are mostly used in all DNS Configurations. Now we will see
each one with examples.
A Record
Suppose you have the somedomain.tld domain and want to assign 10.10.0.1 IP
address to your web server, then you should create an A record with
"www.somedomain.tld" as Fully Qualified Domain Name and "10.10.0.1" in the value
field.
From now on, all the requests for www.somedomain.tld will be sent to a server with
that IP.
Basically is useful to use an A record when you have subdomains residing on various
systems.
example.com. IN A 69.9.64.11
Where
IN indicates Internet
The above example indicate that the IP Address for the domain example.com is
69.9.64.11
AAAA Record
An AAAA record or IPv6 address record maps a hostname to a 128-bit IPv6 address.
The regular DNS Address resource record is defined for a 32-bit IPv4 address, so a
new one was created to allow a domain name to be associated with a 128-bit IPv6
address. The four “A”s (“AAAA”) are a mnemonic to indicate that the IPv6 address is
four times the size of the IPv4 address. The AAAA record is structured in very much
the same way as the A record in both binary and master file formats; it is just much
larger. The DNS resource record Type value for AAAA is 28.
The AAAA record is to help transition and coexistence between IPv4 and IPv6
networks.An IPv4 nameserver can provide IPv6 addresses:
CNAME Record
A CNAME record or canonical name record makes one domain name an alias of
another. The aliased domain gets all the subdomains and DNS records of the original.
You should use a CNAME record whenever you want associate a new subdomain to
an already existing A record; i.e. you can make "www.somedomain.tld" to
"somedomain.tld", which should already have been assigned an IP with an A record.
This allows you to have as many subdomains as you wish without having to specify
the IP for every record. Use a CNAME if you have more services pointing to the same
IP. This way you will have to update only one record in the convenience of a change
of IP address.
Do not use CNAME defined hostnames in MX records. For example, this is not
recommended
where
IN indicates Internet
CNAME indicates CNAME record.
MX Record
The MX record shows that all emails @ mydomain.com should be routed to the mail
server at mydomain.com. The DNS record shows that mydomain.com is located at
26.34.9.14. This means that email meant for [email protected] will be routed to
the email server at 26.34.9.14. This finishes the task of the MX record. The email
server on that server then takes over, collects the email and then proceeds to
distribute it to the user ``test''.
It is important that there be a dot(``.'') after the domain name in the MX record. If
the dot is absent, it routes to ``mydomain.com.mydomain.com''. The number 0,
indicates Preferance number. Mail is always routed to the server which has the lowest
Preferance number. If there is only one mail server, it is safe to mark it 0.
If you want to use multiple mail servers you have to use MX record preferences.The
MX record preference values indicate which mail server to use and in which order to
try them when they fail or don't respond. A larger preference number is less
preferred. Thus, a mail exchanger with a preference of zero (0) is always preferred
over all other mail exchangers. Setting preference values to equal numbers makes
mail servers equally preferred.
You can have unlimited MX entries for Fallback or backup purpose.If all the MX
records are equal Preference numbers, the client simply attempts all equal
Preference servers in random order, and then goes to MX record with the next
highest Preference number.
PTR Record
A PTR record or pointer record maps an IPv4 address to the canonical name for that
host. Setting up a PTR record for a hostname in the in-addr.arpa domain that
corresponds to an IP address implements reverse DNS lookup for that address. For
example www.name.net has the IP address 122.0.3.16, but a PTR record maps
16.3.0.122.in-addr.arpa.
Here as you see the IP Address is reversed and added with in-addr.arpa and this has
come to the left side while the actual domain name has gone to right side of IN PTR.
This is mostly used as a security and an anti-spam measure wherein most of the
webservers or the email servers do a reverse DNS lookup to check if the host is
actually coming from where it claims to come from. It is always advisable to have a
proper reverse DNS record (PTR) is been setup for your servers especially when you
are running a mail / smtp server.
NS Record
An NS record or name server record maps a domain name to a list of DNS servers
authoritative for that domain. Delegations depend on NS records.
NS Record Name Server Record which indicates the Authoritative Name Servers for a
particular Domain. The NS records of the Authoritative Name Server for any given
Domain will be listed on the Parent Server. These are called as the Delegation
Records as these records on the Parent Server indicates the delegation of the domain
to the Authoritative servers.
The NS record will also be listed in the Zone records of the Authoritative Name
Server itself. These records are called as the Authoritative Records.
The NS records found on the Parent Server should match the NS records on the
Authoritative Server as well. However, you can have NS records listed on the
Authoritative server that is not listed in the Parent Server. This arrangement is
normally used to configure Stealth Name Servers.
example.com. IN NS ns1.live.secure.com.
where
The above indicates that the ns1.live.secure.com is the authoritative server for the
domain example.com
SOA Record
An SOA record or start of authority record specifies the DNS server providing
authoritative information about an Internet domain, the email of the domain
administrator, the domain serial number, and several timers relating to refreshing
the zone.
An SOA(State of Authority) Record is the most essential part of a Zone file. The SOA
record is a way for the Domain Administrator to give out simple information about
the domain like, how often it is updated, when it was last updated, when to check
back for more info, what is the admins email address and so on. A Zone file can
contain only one SOA Record.
A properly optimized and updated SOA record can reduce bandwidth between
nameservers, increase the speed of website access and ensure the site is alive even
when the primary DNS server is down.
TTL - 14400 - TTL defines the duration in seconds that the record may be cached by
client side programs. If it is set as 0, it indicates that the record should not be
cached. The range is defined to be between 0 to 2147483647 (close to 68 years !) .
Class - IN - The class shows the type of record. IN equates to Internet. Other options
are all historic. So as long as your DNS is on the Internet or Intranet, you must use
IN.
Refresh - 86000 - This is time(in seconds) when the slave DNS server will refresh
from the master. This value represents how often a secondary will poll the primary
server to see if the serial number for the zone has increased (so it knows to request
a new copy of the data for the zone). It can be written as ``23h88M'' indicating 23
hours and 88 minutes. If you have a regular Internet server, you can keep it
between 6 to 24 hours.
Retry - 7200 - Now assume that a slave tried to contact the master server and failed
to contact it because it was down. The Retry value (time in seconds) will tell it when
to get back. This value is not very important and can be a fraction of the refresh
value.
Expiry - 3600000 - This is the time (in seconds) that a slave server will keep a
cached zone file as valid, if it can't contact the primary server. If this value were set
to say 2 weeks ( in seconds), what it means is that a slave would still be able to give
out domain information from its cached zone file for 2 weeks, without anyone
knowing the difference. The recommended value is between 2 to 4 weeks.
Minimum - 600 - This is the default time(in seconds) that the slave servers should
cache the Zone file. This is the most important time field in the SOA Record. If your
DNS information keeps changing, keep it down to a day or less. Otherwise if your
DNS record doesn't change regularly, step it up between 1 to 5 days. The benefit of
keeping this value high, is that your website speeds increase drastically as a result of
reduced lookups. Caching servers around the globe would cache your records and
this improves site performance.
SRV Record
The theory behind SRV is that given a known domain name e.g. example.com, a
given service e.g. web (http) which runs on tcp in this case, a DNS query may be
issued to find the host name that provides such on behalf of the domain - and which
may or may not be within the domain.
srvce
Defines the symbolic service name (see IANA port-numbers) prepended with a '_'
(underscore). Case insensitive. Common values are:
prot
Defines the protocol name (see IANA service-names) prepended with a '_'
(underscore). Case insensitive. Common values are
name
Incomprehensible description in RFC 2782. Leaving the entry blank (without a dot)
will substitute the current zone root (the $ORIGIN), or you can explicitly add it as in
the above _http._tcp.example.com. (with a dot).
ttl
pri
The relative Priority of this service (range 0 - 65535). Lowest is highest priority.
weight
Used when more than one service with same priority. A 16 bit unsigned integer in the
range 0 - 65535. The value 0 indicates no weighting should be applied. If the weight
is 1 or greater it is a relative number in which the highest is most frequently
delivered i.e. given two SRV records both with Priority = 0, one with weight = 1 the
other weight = 6, the one with weight 6 will have its RR delivered first 6 times out of
7 by the name server.
port
Normally the port number assigned to the symbolic service but does this is not a
requirement e.g. it is permissible to define a _http service with a port number of
8100 rather than the more normal port 80.
target
The name of the host that will provide this service. Does not have to be in the same
zone (domain).
TXT Record
A TXT record allows an administrator to insert arbitrary text into a DNS record. For
example, this record is used to implement the Sender Policy Framework specification.
SPF domains have to publish at least two directives: a version identifier and a default
mechanism.
This is the simplest possible SPF record: it means your domain mydomain.com never
sends mail.
It makes sense to do this when a domain is only used for web services and doesn't
do email.
Let's pretend mydomain.com has two MX servers, mx01 and mx02. They would both
be allowed to send mail from mydomain.com.
This designates all the hosts whose PTR hostname match mydomain.com.
any other machines not in the domain also send mail from that domain, designate
them.
Each of your mail servers should have an SPF record also.When your mail servers
create a bounce message, they will send it using a blank envelope sender: <>. When
an SPF MTA sees a blank envelope sender, it will perform the lookup using the HELO
domain name instead. These records take care of that scenario.
NAPTR Record
NAPTR records (NAPTR stands for "Naming Authority Pointer") are a newer type of
DNS record that support regular expression based rewriting.
$ORIGIN 3.8.0.0.6.9.2.3.6.1.4.4.e164.arpa.
This record set maps the phone number +441632960083 onto three possible
identically ordered URIs, with a preference for SIP, then H323, and finally email. In
each case, the regular expression matches the full AUS (^.$), and replaces it with a
URI (e.g., sip:[email protected]). As this is a terminal record, this URI is returned
to the client.Though most NAPTR records replace the full AUS, it is possible for the
regular expression to back-reference part of the AUS, to grab an extension number,
say:
$ORIGIN 0.6.9.2.3.6.1.4.4.e164.arpa. *
Once the client has the URI it must be resolved using DNS, but this is no longer part
of the DDDS algorithm..
A wildcard DNS record is a record in a DNS zone file that will match all requests for
non-existent domain names, i.e. domain names for which there are no records at all.