Class: PacketGen::Header::DHCPv6::DUID_LLT

Inherits:
DUID
  • Object
show all
Defined in:
lib/packetgen/header/dhcpv6/duid.rb

Overview

DUID Based on Link-layer Address Plus Time

Author:

  • Sylvain Daubert

Since:

  • 2.5.0

Constant Summary collapse

BASE_TIME =

Base time for time computation

Since:

  • 2.5.0

Time.utc(2000, 1, 1)

Constants inherited from DUID

PacketGen::Header::DHCPv6::DUID::TYPES

Instance Attribute Summary collapse

Attributes inherited from DUID

#body, #type

Instance Method Summary collapse

Methods inherited from DUID

#human_type, #read

Instance Attribute Details

#htypeInteger

16-bit hardware protocol type

Returns:

  • (Integer)


83
# File 'lib/packetgen/header/dhcpv6/duid.rb', line 83

define_attr :htype, BinStruct::Int16, default: 1

Returns:



90
# File 'lib/packetgen/header/dhcpv6/duid.rb', line 90

define_attr :link_addr, Eth::MacAddr

#timeTime

Returns:

  • (Time)

Since:

  • 2.5.0



87
# File 'lib/packetgen/header/dhcpv6/duid.rb', line 87

define_attr :time, BinStruct::Int32, default: (Time.now - BASE_TIME).to_i

Instance Method Details

#to_humanString

Get human-readable DUID description

Returns:

  • (String)

Since:

  • 2.5.0



107
108
109
# File 'lib/packetgen/header/dhcpv6/duid.rb', line 107

def to_human
  "DUID_LLT<#{time},#{link_addr}>"
end