<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Mapping the DNSRecord attribute</title>
	<atom:link href="http://www.indented.co.uk/index.php/2009/06/18/mapping-the-dnsrecord-attribute/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.indented.co.uk/index.php/2009/06/18/mapping-the-dnsrecord-attribute/</link>
	<description></description>
	<lastBuildDate>Tue, 10 Aug 2010 14:29:39 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
	<item>
		<title>By: John Cardenas</title>
		<link>http://www.indented.co.uk/index.php/2009/06/18/mapping-the-dnsrecord-attribute/comment-page-1/#comment-48</link>
		<dc:creator>John Cardenas</dc:creator>
		<pubDate>Mon, 04 Jan 2010 16:41:31 +0000</pubDate>
		<guid isPermaLink="false">http://www.highorbit.co.uk/?p=1097#comment-48</guid>
		<description>I was doing the same thing late summer.  I was writing a comprehensive DNS Health check web portal and needed to get to the Dynamic vs. Static for records of AD-Integrated DNS zones.  I was doing this from Linux machine using ldapsearch with -t flag to capture the dnsnode BLOBs.  I used Linux od (octal dump) to index into all the various integer data types, which made my effort trivial.  The only non-trivial part is the revese-engineering process.  Why doesn&#039;t Microsoft just publish this? Anyway, when I first started out, I captured field names from LDP.exe queries, assuming that whoever wrote it understands the real BLOB structure.  Maybe these field names will help or confuse matters more?  I believe your unknown_1 is actully 3 fields, the last of which is a little-endian storing bit-level flags of various meanings. Since it was reverse-engineered with minimal data, I also do not guarantee any of this to be correct! :)

Reverse Engineer of dnsRecord attribute BLOB - a work in progress
[code]
Bytes  Field            Data Type  Meaning
-----  -----            ---------  -------
1-2    wDataLength      16-bit int  declares RR variable length
3-4    wType            16-bit int  DNS RR Type (Standard)
5      Version          8-bit int   ?, values seen = 5
6      Rank             8-bit int   ?, values seen = 240
7-8    wFlags           16 bits     presumably various bit flags?
9-12   dwSerial         32-bit int  ? you show this as zone serial number upon update
13-16  dwTtlSeconds     32-bit int
17-20  dwTimeout        32-bit int  ? Zone-level TTL?
21-24  dwStartRefreshHr 32-bit int  record timestamp 0 for STATIC!
25     RRval_len        8-bit uint  byte length of RR string value
26     wNumLabels       8-bit uint  Number of DNS RR labels
27     label_len1       8-bit uint  size of first label
28 - X label_chars_lens 8-bit uints rest of labelsizes and labels
[/code]</description>
		<content:encoded><![CDATA[<p>I was doing the same thing late summer.  I was writing a comprehensive DNS Health check web portal and needed to get to the Dynamic vs. Static for records of AD-Integrated DNS zones.  I was doing this from Linux machine using ldapsearch with -t flag to capture the dnsnode BLOBs.  I used Linux od (octal dump) to index into all the various integer data types, which made my effort trivial.  The only non-trivial part is the revese-engineering process.  Why doesn&#8217;t Microsoft just publish this? Anyway, when I first started out, I captured field names from LDP.exe queries, assuming that whoever wrote it understands the real BLOB structure.  Maybe these field names will help or confuse matters more?  I believe your unknown_1 is actully 3 fields, the last of which is a little-endian storing bit-level flags of various meanings. Since it was reverse-engineered with minimal data, I also do not guarantee any of this to be correct! :)</p>
<p>Reverse Engineer of dnsRecord attribute BLOB &#8211; a work in progress</p>
<pre class="brush: plain;">
Bytes  Field            Data Type  Meaning
-----  -----            ---------  -------
1-2    wDataLength      16-bit int  declares RR variable length
3-4    wType            16-bit int  DNS RR Type (Standard)
5      Version          8-bit int   ?, values seen = 5
6      Rank             8-bit int   ?, values seen = 240
7-8    wFlags           16 bits     presumably various bit flags?
9-12   dwSerial         32-bit int  ? you show this as zone serial number upon update
13-16  dwTtlSeconds     32-bit int
17-20  dwTimeout        32-bit int  ? Zone-level TTL?
21-24  dwStartRefreshHr 32-bit int  record timestamp 0 for STATIC!
25     RRval_len        8-bit uint  byte length of RR string value
26     wNumLabels       8-bit uint  Number of DNS RR labels
27     label_len1       8-bit uint  size of first label
28 - X label_chars_lens 8-bit uints rest of labelsizes and labels
</pre>
]]></content:encoded>
	</item>
</channel>
</rss>
