The DNSSRV_QUERY2_STATS structure contains DNS server statistics related to query processing by type. This structure MUST be formatted as follows:
0
|
1
|
2
|
3
|
4
|
5
|
6
|
7
|
8
|
9
|
1 0
|
1
|
2
|
3
|
4
|
5
|
6
|
7
|
8
|
9
|
2 0
|
1
|
2
|
3
|
4
|
5
|
6
|
7
|
8
|
9
|
3 0
|
1
|
|---|
|
Header
|
|
...
|
|
TotalQueries
|
|
Standard
|
|
Notify
|
|
Update
|
|
TKeyNego (optional)
|
|
TypeA
|
|
TypeNs
|
|
TypeSoa
|
|
TypeMx
|
|
TypePtr
|
|
TypeSrv
|
|
TypeAll
|
|
TypeIxfr
|
|
TypeAxfr
|
|
TypeOther
|
-
Header (8 bytes): A structure of type DNSSRV_STAT_HEADER (section 2.2.10.2.1).
-
TotalQueries (4 bytes): The total number of queries received by the server, as an unsigned 32-bit integer. If the value is too large to be stored in the field, the value modulo 232 is stored instead.
-
Standard (4 bytes): The number of standard DNS queries received by the server, as an unsigned 32-bit integer. If the value is too large to be stored in the field, the value modulo 232 is stored instead. [RFC1034]
-
Notify (4 bytes): The number of zone notification requests received by the server, as an unsigned 32-bit integer. If the value is too large to be stored in the field, the value modulo 232 is stored instead.
-
Update (4 bytes): The number of dynamic update requests received by the server, as an unsigned 32-bit integer. If the value is too large to be stored in the field, the value modulo 232 is stored instead.
-
TKeyNego (4 bytes): The number of TKEY [RFC2930] negotiation requests received by the server, as an unsigned 32-bit integer. If the value is too large to be stored in the field, the value modulo 232 is stored instead. This field SHOULD be present. A client can tell whether the field is present based on the size of the buffer holding this structure.<49>
-
TypeA (4 bytes): The number of queries received for record type DNS_TYPE_A, as an unsigned 32-bit integer. If the value is too large to be stored in the field, the value modulo 232 is stored instead.
-
TypeNs (4 bytes): The number of queries received for record type DNS_TYPE_NS, as an unsigned 32-bit integer. If the value is too large to be stored in the field, the value modulo 232 is stored instead.
-
TypeSoa (4 bytes): The number of queries received for record type DNS_TYPE_SOA, as an unsigned 32-bit integer. If the value is too large to be stored in the field, the value modulo 232 is stored instead.
-
TypeMx (4 bytes): The number of queries received for record type DNS_TYPE_MX, as an unsigned 32-bit integer. If the value is too large to be stored in the field, the value modulo 232 is stored instead.
-
TypePtr (4 bytes): The number of queries received for record type DNS_TYPE_PTR, as an unsigned 32-bit integer. If the value is too large to be stored in the field, the value modulo 232 is stored instead.
-
TypeSrv (4 bytes): The number of queries received for record type DNS_TYPE_SRV, as an unsigned 32-bit integer. If the value is too large to be stored in the field, the value modulo 232 is stored instead.
-
TypeAll (4 bytes): The number of queries received for record type DNS_TYPE_ALL, as an unsigned 32-bit integer. If the value is too large to be stored in the field, the value modulo 232 is stored instead.
-
TypeIxfr (4 bytes): The number of queries received for record type DNS_TYPE_IXFR, as an unsigned 32-bit integer. If the value is too large to be stored in the field, the value modulo 232 is stored instead.
-
TypeAxfr (4 bytes): The number of queries received for record type DNS_TYPE_AXFR, as an unsigned 32-bit integer. If the value is too large to be stored in the field, the value modulo 232 is stored instead.
-
TypeOther (4 bytes): The number of queries received for any other record type not mentioned above, as an unsigned 32-bit integer. If the value is too large to be stored in the field, the value modulo 232 is stored instead.