我的服务器报告需要在报告中显示服务器处理的客户端IP地址,即我需要显示报告发送的客户端。 我该怎么做呢? 有人可以帮帮我吗?
用这个 :
char clntName[INET6_ADDRSTRLEN]; char portName[6]; if (getnameinfo(&client_address, sizeof client_address, clntName, sizeof(clntName), NULL, 0, NI_NUMERICHOST|NI_NUMERICSERV|NI_NUMERICSCOPE) == 0) { printf("Client = %s/%sn",clntName,portName); } else { printf("Unable to get addressn"); }
以下代码中的’remoteIp’字符数组将为您提供客户端的IP地址,您可以使用字符串函数进行打印。 ‘fd’是服务器端口的监听套接字..
struct sockaddr_in remoteAddr; int size = sizeof(remoteAddr); char remoteIp[10] = {0}; acceptFd = accept(fd, (struct sockaddr *)&remoteAddr, &size); inet_ntop(AF_INET, &remoteAddr.sin_addr, remoteIp, INET_ADDRSTRLEN)
以上就是c/c++开发分享如何使用c套接字程序在报告中显示客户端的IP地址?相关内容,想了解更多C/C++开发(异常处理)及C/C++游戏开发关注计算机技术网(www.ctvol.com)!)。
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/c-cdevelopment/562395.html