In this paper, we discuss the design and implementation of libpcapv6, a packet capture library for IPv6. Libpcapv6 is an extended version of libpcap; libpcap is a packet capture library for IPv4 developed at the Lawrence Berkeley Laboratory which has been widely used to develop well-known TCP/IP test tools for Unix based systems such as tcpdump, sniffit, snoop etc. One of the useful features of these tools is sophisticated filter expressions provided by libpcap. However, because libpcap does not support IPv6, these applications could not provide filter expressions for IPv6. Due to some significant differences between IPv4 and IPv6, it was difficult to extend libpcap so as to support IPv6. As a result, the use of those tools has been limited to testing of IPv4. With libpcapv6, these applications can be extended and new IPv6 applications can be developed conveniently. In order to show the usefulness of libpcapv6, we compiled a variation of tcpdump so that it can support IPv6 filter. Also, we developed a utility called nd (or neighbor discovery); nd gathers and displays information on the local IPv6 network configuration.
展开▼