本文へジャンプ

WinSockによるIPv6ソケットプログラミング

Windows OSにおけるIPv6ソケットプログラミング。

WinSock API

Windows OSが提供するネットワークプログラミングAPIであるWinSockを用いてIPv6プログラミングを行います。IPv6のサポートは、正式にはWindows XP以降のバージョンとなります。WinSockのバージョンは2.0以上を使用します。

RFC対応状況

ソケットAPIについて定義した"Basic Socket Interface Extension for IPv6"

RFC 2133→RFC 2553→RFC 3493
Windows XPまでは、以下の関数がサポートされていません。
関数名 XP Vista 備考
if_nametoindex
N/A <netioapi.h> RFC 3493 §4.1
if_indextoname
N/A <netioapi.h> RFC 3493 §4.2
if_nameindex
N/A N/A RFC 3493 §4.3
if_freenameindex
N/A N/A RFC 3493 §4.4

RAWソケット・拡張ヘッダについて定義した"Advanced Sockets API for IPv6"

RFC 2292 → RFC 2292bis → RFC 3542

インクルードファイルおよびリンクライブラリ

インクルード

<WinSock2.h>および<WS2tcpio.h>

リンク

ws2_32.libをリンクします。
参考文献

IPv6styleサイトで公開されているWinSockプログラミング技術情報