Pläne der Hersteller von Werkzeugen wie Perl, Tcl/Tk, Java und ähnlichen, das Internet-Protokoll Version 6 zu unterstützen, sind gegenwärtig nicht bekannt. Die folgende Untersuchung beschränkt sich daher auf die in der Programmiersprache C notwendigen Änderungen.
Um auf die Funktionalität des neuen Internet-Protokolls zugreifen zu können, sind einige Erweiterungen der Socket-Schnittstelle notwendig. Grundlegende Erweiterungen wie eine neue Datenstruktur zur Aufnahme von IPv6-Adressen und zur Namensauflösung werden in [Gilligan 97] beschrieben. Zusätzliche Erweiterungen für den Zugriff auf Raw Sockets und die Erweiterungsheader schlägt [Stevens 97] vor.
Für die Änderungen der Schnittstelle waren mehrere Designüberlegungen maßgebend:
Zur Veranschaulichung der grundlegenden Erweiterungen wird im folgenden ein kleines Beispiel zur Client-Server-Programmierung entwickelt und von der IPv4-Socket-Schnittstelle auf die erweiterte, nun IPv6-fähige Socket-Schnittstelle portiert. Die Auswahl der im Beispiel verwendeten Funktionen erhebt keinen Anspruch auf Vollständigkeit, versucht aber, alle wichtigen Funktionen zu berücksichtigen. Dieses Thema könnte z.B. in einem Systempraktikum ausführlich behandelt werden.
Das Beispiel besteht aus zwei Programmen, einem Server, der auf TCP-Verbindungswünsche wartet und empfangene Mitteilungen ausgibt, und einem Client, der Mitteilungen an den Server schicken kann. Die kompletten Quelltexte sind in Anhang B zu finden.