Class SOARecord
Marks the start of a zone of authority.
Inherited Members
Namespace: Makaretu.Dns
Assembly: Makaretu.Dns.dll
Syntax
public class SOARecord : ResourceRecord, IWireSerialiser, ICloneable, IPresentationSerialiser
Remarks
Most of these fields are pertinent only for name server maintenance operations. However, MINIMUM is used in all query operations that retrieve RRs from a zone.Whenever a RR is sent in a response to a query, the TTL field is set to the maximum of the TTL field from the RR and the MINIMUM field in the appropriate SOA.Thus MINIMUM is a lower bound on the TTL field for all RRs in a zone.Note that this use of MINIMUM should occur when the RRs are copied into the response and not when the zone is loaded from a master file or via a zone transfer. The reason for this provison is to allow future dynamic update facilities to change the SOA RR with known semantics.
Constructors
| Improve this Doc View SourceSOARecord()
Creates a new instance of the SOARecord class.
Declaration
public SOARecord()
Remarks
Sets TTL to zero.
Properties
| Improve this Doc View SourceExpire
Specifies the upper limit on the time interval that can elapse before the zone is no longer authoritative.
Declaration
public TimeSpan Expire { get; set; }
Property Value
Type | Description |
---|---|
TimeSpan |
Mailbox
A domain-name which specifies the mailbox of the person responsible for this zone.
Declaration
public DomainName Mailbox { get; set; }
Property Value
Type | Description |
---|---|
DomainName |
Minimum
Minimum TTL field that should be exported with any RR from this zone.
Declaration
public TimeSpan Minimum { get; set; }
Property Value
Type | Description |
---|---|
TimeSpan |
PrimaryName
The domain-name of the name server that was the original or primary source of data for this zone.
Declaration
public DomainName PrimaryName { get; set; }
Property Value
Type | Description |
---|---|
DomainName |
Refresh
Interval before the zone should be refreshed.
Declaration
public TimeSpan Refresh { get; set; }
Property Value
Type | Description |
---|---|
TimeSpan |
Retry
interval that should elapse before a failed refresh should be retried.
Declaration
public TimeSpan Retry { get; set; }
Property Value
Type | Description |
---|---|
TimeSpan |
SerialNumber
The unsigned 32 bit version number of the original copy of the zone.
Declaration
public uint SerialNumber { get; set; }
Property Value
Type | Description |
---|---|
UInt32 |
Remarks
Zone transfers preserve this value. This value wraps and should be compared using sequence space arithmetic.
Methods
| Improve this Doc View SourceReadData(PresentationReader)
Read the textual representation of the data that is specific to the resource record Type.
Declaration
public override void ReadData(PresentationReader reader)
Parameters
Type | Name | Description |
---|---|---|
PresentationReader | reader | The source of the resource record's data. |
Overrides
Remarks
Derived classes must implement this method.
ReadData(WireReader, Int32)
Read the data that is specific to the resource record Type.
Declaration
public override void ReadData(WireReader reader, int length)
Parameters
Type | Name | Description |
---|---|---|
WireReader | reader | The source of the resource record's data. |
Int32 | length | The length, in bytes, of the data. |
Overrides
Remarks
Derived classes must implement this method.
WriteData(PresentationWriter)
Write the textual representation of the data that is specific to the resource record.
Declaration
public override void WriteData(PresentationWriter writer)
Parameters
Type | Name | Description |
---|---|---|
PresentationWriter | writer | The destination for the resource record's data. |
Overrides
Remarks
Derived classes should implement this method.
By default, this will write the hex encoding of the GetData() preceeded by "#" and the number integer bytes.
WriteData(WireWriter)
Write the data that is specific to the resource record Type.
Declaration
public override void WriteData(WireWriter writer)
Parameters
Type | Name | Description |
---|---|---|
WireWriter | writer | The destination for the DNS object's data. |
Overrides
Remarks
Derived classes must implement this method.