This paper presents an implementation of an IPv6 stack within the network simulator NS-3. The implementation adds support for key IPv6 features like neighbor discovery and multihoming. It describes the architecture of NS-3 and how it currently only supports IPv4. Then it discusses the key components and mechanisms of IPv6, followed by details of the authors' implementation of IPv6 support in NS-3, including neighbor discovery. It presents simulation scenarios demonstrating IPv6 features like multihoming and dual stack operation.