The symbol @ is used in BIND to denote zone root (which is sometimes also called the zone apex. The value substituted for @ is either:
The last $ORIGIN directive encountered in the file. To illustrate possible uses:
; example.com zone file fragment $ORIGIN example.com. @ IN SOA ns1.example.com. hostmaster.example.com. ( 2003080800 ; se = serial number 172800 ; ref = refresh = 2d 900 ; ret = update retry = 15m 1209600 ; ex = expiry = 2w 3600 ; min = minimum = 1h ) .... @ IN NS ns1.example.com. ; ns1.example.com. is the NS for example.com ; and could have written as example.com. IN NS ns1.example.com. ; OR using blank substitution IN NS ns1.example.com. ; MX traditionally written using blank substitution IN MX 10 mail.example.com. ; but could have been written as @ IN MX 10 mail.example.com. ... ; @ works anywhere www IN A 192.168.2.3 ; this RR allows use of http://example.com @ IN A 192.168.2.3 ; and could have been written as example.com. IN A 192.168.2.3 ... $ORIGIN uk.example.com. ; @ reference last $ORIGIN @ IN NS ns2.example.com. ; ns2.example.com. is name server for uk.example.com subdomain ; and could have been written as uk.example.com. IN NS ns2.example.com.
If no $ORIGIN directive is present - BIND synthesizes one from the value of the zone name in the named.conf file , for example:
// named.conf file fragment zone "example.com" in{ type master; file "pri.example.com"; };example.com. is synthesized as the zone $ORIGIN and will replace @ in the zone file.
; example.com zone file fragment ; no ORIGIN directive @ IN SOA ns1.example.com. hostmaster.example.com. ( 2003080800 ; se = serial number 172800 ; ref = refresh = 2d 900 ; ret = update retry = 15m 1209600 ; ex = expiry = 2w 3600 ; min = minimum = 1h ) .... @ IN NS ns1.example.com. ; ns1.example.com. is the NS for example.com ; and could have written as example.com. IN NS ns1.example.com. ; OR using blank substitution IN NS ns1.example.com. ....
Blank labels are a little messy and the substitution here is the last valid name (or label) or $ORIGIN if there are no previous names (labels). To illustrate blank name substitution:
; example.com zone file fragment ; no ORIGIN directive @ IN SOA ns1.example.com. hostmaster.example.com. ( 2003080800 ; se = serial number 172800 ; ref = refresh = 2d 900 ; ret = update retry = 15m 1209600 ; ex = expiry = 2w 3600 ; min = minimum = 1h ) .... IN NS ns1.example.com. ; the blank label in the NS substitutes example.com. ; Confusingly the whole definition could use blank substitution ; as shown below which is functionally equivalent to above ; example.com zone file fragment ; no ORIGIN directive IN SOA ns1.example.com. hostmaster.example.com. ( 2003080800 ; se = serial number 172800 ; ref = refresh = 2d 900 ; ret = update retry = 15m 1209600 ; ex = expiry = 2w 3600 ; min = minimum = 1h ) .... IN NS ns1.example.com.
Finally, to illustrate other uses of blank substitution see the following:
; zone file fragment for example.com. ... ; following two A RRs both have a label of www.example.com. www IN A 192.168.2.3 IN A 192.168.2.4 ; this could have also been written as shown if less confusing www IN A 192.168.2.3 www IN A 192.168.2.4
Problems, comments, suggestions, corrections (including broken links) or something to add? Please take the time from a busy life to 'mail us' (at top of screen), the webmaster (below) or info-support at zytrax. You will have a warm inner glow for the rest of the day.
Contents
tech info
guides home
dns articles
intro
contents
1 objectives
big picture
2 concepts
3 reverse map
4 dns types
quickstart
5 install bind
6 samples
reference
7 named.conf
8 zone records
operations
9 howtos
10 tools
11 trouble
programming
12 bind api's
security
13 dns security
bits & bytes
15 messages
resources
notes & tips
registration FAQ
dns resources
dns rfcs
change log
This work is licensed under a
Creative Commons License.
If you are happy it's OK - but your browser is giving a less than optimal experience on our site. You could, at no charge, upgrade to a W3C STANDARDS COMPLIANT browser such as Firefox
Search
Share
Page
Resources
Systems
FreeBSD
NetBSD
OpenBSD
DragonFlyBSD
Linux.org
Debian Linux
Software
LibreOffice
OpenOffice
Mozilla
GitHub
GNU-Free SW Foundation
get-dns
Organizations
Open Source Initiative
Creative Commons
Misc.
Ibiblio - Library
Open Book Project
Open Directory
Wikipedia
Site
Copyright © 1994 - 2024 ZyTrax, Inc. All rights reserved. Legal and Privacy |
site by zytrax hosted by javapipe.com |
web-master at zytrax Page modified: January 20 2022. |