ipv6info_t Structure

The ipv6info_t structure is a DTrace translated version of the IPv6 header.

typedef struct ipv6info {
        uint8_t ipv6_ver;               /* IP version (6) */
        uint8_t ipv6_tclass;            /* traffic class */
        uint32_t ipv6_flow;             /* flow label */
        uint16_t ipv6_plen;             /* payload length */
        uint8_t ipv6_nexthdr;           /* next header protocol */
        string ipv6_nextstr;            /* next header protocol, as a string*/
        uint8_t ipv6_hlim;              /* hop limit */
        in6_addr_t *ipv6_src;           /* source address */
        in6_addr_t *ipv6_dst;           /* destination address */
        string ipv6_saddr;              /* source address, string */
        string ipv6_daddr;              /* destination address, string */
        ip6_t *ipv6_hdr;                /* pointer to raw header */
} ipv6info_t;

Table 11-53 ipv6info_t Members

Member Description

ipv6_ver

IP version 6.

ipv6_tclass

IPv6 traffic class.

ipv6_plen

IPv6 payload length at time of tracing, in bytes.

ipv6_nexthdr

IPv6 next header protocol number. See /usr/include/netinet/in.h for the protocol list (IPPROTO_*).

ipv6_nextstr

IPv6 next header protocol, as a string. For example, "TCP".

ipv6_hlim

IPv6 hop limit.

ipv6_src

IPv6 source address, as an in6_addr_t.

ipv6_dst

IPv6 destination address, as an in6_addr_t.

ipv6_saddr

IPv6 source address, as an RFC 1884 convention 2 string with lower case hexadecimal digits.

ipv6_daddr

IPv6 destination address, as an RFC 1884 convention 2 string with lower case hexadecimal digits.

ipv6_hdr

Pointer to raw IPv6 header at the time of tracing.

See RFC 2460 for a detailed explanation for these IPv6 header fields. If the packet is IPv4, these members are either "<null>", 0, or NULL depending on type.