Packet IPv6RouterAdvertisement

File: src/inet/networklayer/icmpv6/IPv6NDMessage.msg

C++ definition

Router Advertisement Message Format RFC 2461 Section 4.2 RFC 3775 Section 7.1, RFC 5175 Section 3. (homeAgentFlag)

Usage diagram:

The following diagram shows usage relationships between types. Unresolved types are missing from the diagram.

Inheritance diagram:

The following diagram shows inheritance relationships for this type. Unresolved types are missing from the diagram.

Extends:

Name Type Description
IPv6NDMessage packet

Neighbour Discovery for IPv6. RFC 2461

Fields:

Name Type Description
curHopLimit unsigned short

Additional ICMP fields

managedAddrConfFlag bool

M-bit

otherStatefulConfFlag bool

O-bit

homeAgentFlag bool

H-bit

routerLifetime unsigned short

0 indicates router is not a default router

reachableTime unsigned int
retransTimer unsigned int
sourceLinkLayerAddress MACAddress

Possible Options

MTU unsigned int

MTU option

prefixInformation IPv6NDPrefixInformation[]

Prefix Information Option

advInterval MIPv6NDAdvertisementInterval

New Advertisement Interval Option (MIPv6)

haInformation MIPv6HAInformation

New Home Agent Information Option (MIPv6)

code int

customize=true;

type int

int code; //TODO: this should be specific to different ICMP types.

Source code:

//
// Router Advertisement Message Format
// RFC 2461 Section 4.2
// RFC 3775 Section 7.1, RFC 5175 Section 3. (homeAgentFlag)
//
packet IPv6RouterAdvertisement extends IPv6NDMessage
{
    //Additional ICMP fields
    unsigned short curHopLimit;
    bool managedAddrConfFlag;    //M-bit
    bool otherStatefulConfFlag;    //O-bit
    bool homeAgentFlag = false;        //H-bit
    unsigned short routerLifetime;  // 0 indicates router is not a default router
    unsigned int reachableTime;
    unsigned int retransTimer;

    //Possible Options
    MACAddress sourceLinkLayerAddress;        //source link layer option
    unsigned int MTU;                //MTU option
    IPv6NDPrefixInformation prefixInformation[];    //Prefix Information Option
    MIPv6NDAdvertisementInterval advInterval;    //New Advertisement Interval Option (MIPv6)
    MIPv6HAInformation haInformation;    //New Home Agent Information Option (MIPv6)
}