Next | Prev | Up | Top | Contents | Index
Standard Resource Record Format
The records in the name server data files are called resource records. The Standard Resource Record (RR) Format is specified in RFC 1035. The standard format of resource records is:
{name} {ttl} addr-class Record Type Record-specific data
- The first field is the name of the domain record. It must always start in column 1. For some RRs the name may be left blank, in which case it becomes the name of the previous RR.
- The second field is an optional time-to-live field, which specifies how long this data will be stored in the database. When this field is blank, the default time-to-live value is specified in the Start of Authority (SOA) resource record (described later in this section).
- The third field is the address class. Currently only the IN class (for Internet hosts and addresses) is recognized.
- The fourth field identifies the type of resource record.
- Subsequent fields depend on the type of RR.
Case is preserved in names and data fields when they are loaded into the name server. Comparisons and lookups in the name server database are not case sensitive.
If you specify TTLs for resource records, it is important that you set them to appropriate values. The TTL is the amount of time (in seconds) that a resolver will use the data from your server before it asks your server again. If you set the value too low, your server will become loaded down with repeat requests. If you set it too high, information you change will not be distributed in a reasonable amount of time.
Most host information does not change much over time. A good way to set up your TTLs is to set them at a high value, and lower the value if you know a change is coming soon. You might set most TTLs between a day (86400) and a week (604800). When you know some data is changing soon, set the TTL for that RR to a low value, between an hour (3600) and a day, until the change takes place. Then reset it to its previous value. All resource records with the same name, class, and type should have the same TTL value.
The following characters have special meanings in resource records:
- (blank)
- A blank or tab character in the name field denotes the current domain.
- @
- A free-standing "at" sign (@) in the name field denotes the current origin.
- .
- A free-standing period in the name field represents the root domain name.
- \x
- The backslash designates that the special meaning of the character x does not apply. The x represents any character other than a digit (0-9). For example, use \.to place a dot character in a label.
- \DDD
- Each D is a digit; the complete string is the octet corresponding to the decimal number described by DDD. The octet is assumed to be text and is not checked for special meaning.
- ( )
- Parentheses enclose group data that crosses a line. In effect, newlines are not recognized within parentheses. This notation is useful with SOA and WKS records.
- ;
- A semicolon precedes a comment; the remainder of the line is ignored.
- *
- An asterisk is a wildcard character.
Usually a resource record has the current origin appended to the name if the name is not terminated by a period (.). This scheme is useful for appending the current domain name to the data, such as workstation names, but can cause problems if you do not want the name to be appended. If the name is not in the domain for which you are creating the data file, end the name with a period. However, do not append the period to Internet addresses.
- $INCLUDE
-
- $ORIGIN
-
- SOA--Start of Authority
-
- NS--Name Server
-
- A--Address
-
- HINFO--Host Information
-
- WKS--Well-Known Services
-
- CNAME--Canonical Name
-
- PTR - Domain Name Pointer
-
- MB--Mailbox
-
- MR--Mail Rename Name
-
- MINFO--Mail Information
-
- MG--Mail Group Member
-
- MX--Mail Exchanger
-
- RP--Responsible Person
-
- TXT--Text
-
Next | Prev | Up | Top | Contents | Index