[Subject Prev][Subject Next][Thread Prev][Thread Next][Subject Index][Thread Index]

[linux-users:71982] 相手のIPアドレスの取得


こんばんは。吉です。

また質問です。簡単なTCP/IPの問題です(ちょっと恥ずかしい)。

listen用のソケットを生成して、acceptをしたら、
戻ってくる相手のソケットの情報がおかしいです。

// socket, bind, listen
while(1) {
  size_t len;
  sockadd_in sock_client;
  if((fd_accept = accept(fd_listen, (sockaddr*)&sock_client, &len))==-1){
    perror("accept");
    exit(1);
  }
  syslog(LOG_INFO, "accepted %s:%d",
    inet_ntoa(sock_client.sin_addr),
    (int)sock_client.sin_port);

  // create a new thread ...
}

クライアントのIPアドレスが 133.139.153.45 なのに
"accepted 132.251.255.191:16403"
が表示されます。

どこが間違いましたか。相手のIPアドレスはどう取れますか。

-----
william _at_ sdg.mdd.ricoh.co.jp

この情報があなたの探していたものかどうか選択してください。
yes/まさにこれだ!   no/違うなぁ   part/一部見つかった   try/これで試してみる

あなたが探していた情報はどのようなことか、ご自由に記入下さい。特に「まさにこれだ!」と言う場合は記入をお願いします。
例:「複数のマシンからCATV経由でipmasqueradeを利用してWebを参照したい場合の設定について」
Follow-Ups: