2.2.10.1 Name Record

The following diagram shows the format of a Name Record.


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

Name Length

Name (variable)

...

Padding (variable)

...

Reserved1

Flags

Group

Reserved2

Version Number Hi

Version Number Lo

Address Record (variable)

...

Reserved3

Name Length (4 bytes): An unsigned 32-bit integer that gives the length of the name, in bytes, including the terminating 0x00 byte.<8>

Name (variable): Name terminates with a 0x00 byte. It can include a NetBIOS scope identifier, as specified in [RFC1001]. The maximum length of the Name field is 255 bytes including the 0x00 byte. If no NetBIOS scope is included, then the length of the name is 17 including the 0x00 byte.

Padding (variable): If the Name field is 4-byte aligned, then the Padding field is 4 bytes in size. If the Name field is not 4-byte aligned, then the Padding field is of a size that achieves 4-byte alignment with the Name field. This field MUST be ignored upon receipt.

Reserved1 (3 bytes): An unsigned 24-bit integer. It MUST be set to 0 and MUST be ignored upon receipt.

Flags (1 byte): A byte providing various properties of the name. The following table specifies the details of the properties and the corresponding bits.

 Bits and name

 Field description

 Value

 Value description

7

(S flag)

How the name record was created in its owner NBNS server.

0

The name record was created through NetBT name registration by a client. It is called a dynamic record.

1

The name record was added by an administrator into the NBNS server through a management utility. It is called a static record.

6–5

(NT flag)

NetBIOS node type of the machine that the name corresponds to.

0

b-node, as defined in [RFC1001].

1

p-node, as defined in [RFC1001].

2

m-node, as defined in [RFC1001].

3

Reserved; if received MUST be treated as opaque data.

4

(L flag)

Whether this record is local or replica.

0

This record is a local record. That is, the name record is owned by the sending server.

1

This record is a replica. That is, the name record is not owned by the sending server, but by another NBNS server.

3–2

(ST flag)

The state of the name record (see section 3.1.1.1 for more information).

0

Active. States of a name record are defined in section 3.1.1.1.

2

Tombstoned record.

Other values

MUST NOT be used. If received, then it MUST be treated as opaque data.

1–0

(ET flag)

Entry type of the name record.

0

Unique name. One unique name has only one IPv4 address.

1

Normal group name. A normal group name does not contain multiple members. A normal group name always resolves to the limited broadcast address (255.255.255.255) for NetBT query of the normal group name.

2

Special group name. NBNS server special group names can contain multiple member addresses as in the group name, as defined in [RFC1001].

3

Multihomed machine name. This is a name for a machine that has several network interfaces, and thus has several IPv4 addresses.

Group (1 byte): An unsigned byte shows whether the name record is a group name or a unique name.

Value

Meaning

Unique name

0x00

When ET in the Flags field is 0 (unique name) or 3 (multihomed machine), Group MUST be set to 0.

Group name

1

When ET in the Flags field is 1 (normal group) or 2 (special group), Group MUST be set to 1.

Reserved

2 — 255

These values MUST NOT be used. If received, MUST be treated as 1.

Reserved2 (3 bytes): An unsigned 24-bit integer. It MUST be set to 0 and MUST be ignored upon receipt.

Version Number Hi (4 bytes): The higher 32-bit of the unsigned 64-bit integer version number of the name record.

Version Number Lo (4 bytes): The lower 32-bit of the unsigned 64-bit integer version number of the name record.

Address Record (variable): This field contains the address information for the name record. If the ET flag in the Flags field is 0 (unique name) or 1 (normal group), then the Address Record is an IPv4 address for the name. If the ET flag in the Flags field is 2 (special group) or 3 (multihomed machine), then the Address Record format is specified in the following section.

Reserved3 (4 bytes): An unsigned 32-bit integer. It MUST be set to 0xFFFFFFFF and MUST be ignored upon receipt.