1. ホーム

[解決済み】AF_INETとは何ですか、なぜそれが必要なのですか?

2022-04-02 19:39:50

質問

ソケットプログラミングを始めようとしているのですが、次のようなものが目につきます。 AF_INET .

しかし、その代わりに他のものが使われているのを見たことがありません。私の講師はそれほど親切ではなく、ただ"You just need it"と言うだけです。

そこで質問です。

  • の目的は何ですか? AF_INET ?
  • 何か他のものが代わりに使われることはないのですか?
    • そうでない場合、なぜそれがあるのか?将来的に変更する可能性があるため?
    • もしそうなら、何を、なぜ?

解決方法は?

AF_INET a ドレス f ソケットが通信できるアドレスの種類を指定するために使用されるアミリです(この場合、Internet Protocol v4アドレス)。ソケットを作成する際に、そのアドレスファミリーを指定する必要があり、そのソケットでは、そのタイプのアドレスしか使用することができません。例えばLinuxカーネルは、UNIXなど29種類のアドレスファミリーをサポートしています( AF_UNIX )ソケットやIPX( AF_IPX )、また、IRDAやBluetoothによる通信( AF_IRDAAF_BLUETOOTH しかし、このような低レベルでこれらを使うことはないでしょう)。

ほとんどの場合 AF_INET をネットワーク上のソケットプログラミングに使用するのが最も安全な選択です。 また AF_INET6 は、Internet Protocol v6アドレス用です。

お役に立てれば幸いです。