1. ホーム
  2. c

[解決済み] バインドに失敗しました。アドレスはすでに使用中です

2022-03-04 17:10:27

質問

以下のポートにソケットをバインドしようとしています。

if( bind(socket_desc,(struct sockaddr *) &server, sizeof(server)) < 0)
{
    perror("bind failed. Error");
    return 1;
}
puts("bind done");

しかし、それは与える。

$ ./serve   
Socket created    
bind failed. Error: Address already in use

なぜこのようなエラーが発生するのでしょうか?

解決方法は?

このエラーは、通常、あなたが開こうとしているポートが他のアプリケーションによって既に使用されていることを意味します。netstatでどのポートが開いているかを確認し、利用可能なポートを使ってみてください。

また、正しいIPアドレスにバインドされているかどうかも確認してください(localhostと仮定しています)。