2.2.5.5 ExtendedAddressHeader

The ExtendedAddressHeader specifies the host address from which a message was received.<8> This header MUST be ignored if the AddressType field is 0x0000.


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

HeaderSize

AddressLength

AddressType

AddressScope

Address (16 bytes)

...

...

HeaderSize (4 bytes): A ULONG ([MS-DTYP] section 2.2.51) that specifies the size, in bytes, of the ExtendedAddressHeader.

AddressLength (2 bytes): A USHORT ([MS-DTYP] section 2.2.58) that MUST be the actual address length in the Address field.

AddressType (2 bytes): A USHORT that MUST be set to one of the following values.

Value

Meaning

0x0000

This header MUST be ignored.

IP_ADDRESS_TYPE

0x0001

The address specified in the Address field is an IPv4 address.

IPV6_ADDRESS_TYPE

0x0006

The address specified in the Address field is an IPv6 address.

AddressScope (4 bytes): A ULONG that MUST be set either to the IPv6 address scope if the AddressType field is IPV6_ADDRESS_TYPE or otherwise to 0x00000000. See [RFC2553] section 3.3.

Address (16 bytes): An array of UCHAR ([MS-DTYP] section 2.2.45) that MUST contain the host address from which the message was received. If the AddressType field is IP_ADDRESS_TYPE, the address MUST be in IPv4 address format. If the AddressType field is IPV6_ADDRESS_TYPE, the address MUST be in IPv6 address format. See [RFC2553] section 3.3.