私はソケットプログラミングを始めたばかりですが、これを何度も目にしますAF_INET
。
しかし、私はその代わりに何か他のものが使われているのを見たことがありません。私の講師はそれほど役に立たず、ただ「必要なだけ」と言うだけです。
私の質問は次のとおりです:
- の目的は何ですか
AF_INET
? - 代わりに何か他のものが使用されることはありますか?
- そうでない場合、なぜそこに存在するのでしょうか? 将来的に変更される可能性があるからでしょうか?
- もしそうなら、それは何で、なぜですか?
ベストアンサー1
AF_INET
は、ソケットが通信できるアドレスの種類を指定するために使用されるアドレス ファミリです(この場合は、インターネット プロトコル v4 アドレス)。ソケットを作成するときは、そのアドレス ファミリを指定する必要があり、その後は、そのソケットでその種類のアドレスのみを使用できます。たとえば、Linux カーネルは、UNIX ( ) ソケットや IPX ( ) などの 29 個の他のアドレス ファミリをサポートし、IRDA や Bluetooth (および、ただし、このような低レベルで使用することはまずないでしょう)との通信もサポートしています。AF_UNIX
AF_IPX
AF_IRDA
AF_BLUETOOTH
ほとんどの場合、AF_INET
ネットワーク上のソケット プログラミングに固執するのが最も安全なオプションです。AF_INET6
インターネット プロトコル v6 アドレスにも同様のオプションがあります。