TCP服务器怎么获得客户端socket连接的IP
你是想知道代码还是想了解原理,一般的C/灶嫌配S模型都由客户端发出连接请求(客户端在代码中都是存有服务器端的具体ip地址和端口信息(也就是服务器端的INET协议族地址结构)的),当客户端发送连接请求后,服务器端通过accpet函数接收连接请求,accpet函数示例:accept(ServerSocket,(struct sockaddr *)&from,&len) (from是一个INET协议族地址结构变量,(struct sockaddr *)的作用是把INET协议族地址结构强隐指制转换为通用者瞎地址结构) ,accpet函数在接收连接的同时会把客户端的具体ip和端口信息赋值给from,所以说客户端socket连接的ip(非绑定的话客户机随机绑定ip和端口)是包含在连接报文数据里,服务器端只有接收到客户端发送的连接信息后,才会获得客户端的ip和端口信息,获得具体ip的方式是通过函数,这个函数可以提取出 IPv4地址 结构中的点分十进制地址,函数用法:inet_ntoa(from.sin_addr)。

TCP/IP是指什么?
TCP是网络传输协议,IP是网络地址协议,TCP/IP是一个四层的分层体系结构。高层为传输控制协议,它负责聚集信息或把文件拆分成更小的包。这些包通过网络传送到接收端的TCP层,接收端的TCP层把包还原为原始文件。低层是网际协议,它处理每个包的地址部分,使这些包正确的到达目的地。网络上的网关计算机根据信息的地址来进行路由选择。即使来自同一文件的分包路由也有可能不同,但最后会在目的地汇合。 TCP/IP使用客户端/服务器模式进行通信。TCP/IP通信是点对点的,意思是通信是网络中的一台主机与另一台主机之间的。TCP/IP与上层应用程序之间可以说是“没有国籍的”,因为每个客户请求都被看做是与上一个请求无关的。正是它们之间的“无国籍的”释放了网络路径,才是每个人都可以连续不断的使用网络。
TCP/IP是英文Transmission Control Protocol/Internet Protocol的缩写,意思是“传输控制协议/网际协议”。 TCP/IP是Internet使用的一组协议(Protocol)。 在Internet上传输控制协议和网际协议是配合进行工作的。网际协议(IP)负责将消息从一个主机传送到另一个主机。为了安全消息在传送的过程中被分割成一个个的小包。
TCP/IP 是供已连接因特网的计算机进行通信的通信协议。 TCP/IP 指传输控制协议/网际协议 (Transmission Control Protocol / Internet Protocol)。TCP/IP 定义了电子设备(比如计算机)如何连入因特网,以及数据如何在它们之间传输的标准。TCP/IP(传输控制协议/网际协议)是互联网中的基本通信语言或协议。在私网中,它也被用作通信协议。当你直接网络连接时,你的计算机应提供一个TCP/IP程序的副本,此时接收你所发送的信息的计算机也应有一个TCP/IP程序的副本。 TCP/IP是一个四层的分层体系结构。高层为传输控制协议,它负责聚集信息或把文件拆分成更小的包。这些包通过网络传送到接收端的TCP层,接收端的TCP层把包还原为原始文件。低层是网际协议,它处理每个包的地址部分,使这些包正确的到达目的地。网络上的网关计算机根据信息的地址来进行路由选择。即使来自同一文件的分包路由也有可能不同,但最后会在目的地汇合。 TCP/IP使用客户端/服务器模式进行通信。TCP/IP通信是点对点的,意思是通信是网络中的一台主机与另一台主机之间的。TCP/IP与上层应用程序之间可以说是“没有国籍的”,因为每个客户请求都被看做是与上一个请求无关的。正是它们之间的“无国籍的”释放了网络路径,才是每个人都可以连续不断的使用网络。 许多用户熟悉使用TCP/IP协议的高层应用协议。包括万维网的超文本传输协议(HTTP),文件传输协议(FTP),远程网络访问协议(Telnet)和简单邮件传输协议(SMTP)。这些协议通常和TCP/IP协议打包在一起。 使用模拟电话调制解调器连接网络的个人电脑通常是使用串行线路接口协议(SLIP)和点对点协议(P2P)。这些协议压缩IP包后通过拨号电话线发送到对方的调制解调器中。 与TCP/IP协议相关的协议还包括用户数据包协议(UDP),它代替TCP/IP协议来达到特殊的目的。其他协议是网络主机用来交换路由信息的,包括Internet控制信息协议(ICMP),内部网关协议(IGP),外部网关协议(EGP),边界网关协议(BGP)。

客服端和服务端建立TCP连接后,怎么从服务端获取客户端的IP地址?
Socket clientSock = ServerSocket.Accpet(); 接受客户端连接DateTime connectTime = DateTime.Now;连接一个客户端后,当前时间就是连接时间。(clientSock.RemoteEndPoint as IPEndPoint).IPAddress;ip地址(clientSock.RemoteEndPoint as IPEndPoint).Port; 端口号

TCP/IP的IP地址和客户端IP地址有什么区别?
这个tcp/ip的地址是指局域网内设定的IP地址,如果客户端IP指的是一个局域网内服务器和客户端这个的软件的话那是一样的IP,如果是互联网上的服务器和客户端,那IP就是你登陆互联网电信分配给你的ip,有些服务器是电信给的固定的ip,一般上网的公众用户的iP都是随机分配的
客户端 是相对而言的这个“客户”看是谁说的了如果是运营商说的客户 那就是你的公网IP了 如果你本局域网内有DHCP服务器当然 你的苦户端IP就是你的内网IP地址了TCP/IP是一种协议 外界的攻击一般来说首先是通过有外网地址(公网IP地址)的机器开始的 但是这不是绝对的情况。内网IP的机器也可能直接被通过U盘传播的病毒感染到,从而开启后门等给黑客提供攻击的平台。
TCP/IP的IP地址通常指互联网上的公用地址. 客户端IP地址指本机的网络地址目前两种通称为本机地址 先获取内网地址.通过互联网的地址发送
TCP/IP就是IP地址呀,就是叫法不一样,客户端IP就是你相对服务器而言的你的电脑的IP 而TCP/IP则是相对自己而言的IP
一样。

TCP服务器如何检测客户端的IP和端口?
你熟悉socket API不?如果不熟悉的话建议先看看socket编程的文档。这是链接地址:http://msdn.microsoft.com/en-us/library/ms738545(v=VS.85).aspx一般服务端的sokcetAPI调用顺序为:bind()//设置服务端口listen()//等待客户端连接accept()//与客户端建立连接请参考:http://msdn.microsoft.com/en-us/library/ms737526(v=VS.85).aspx这是accept函数的原型:SOCKETaccept(__inSOCKETs,__outstructsockaddr*addr,__inoutint*addrlen);第二个参数, addr,包含了客户端的IP地址和端口。你可以认为这就是客户端的IP和端口。但是,要注意的是这个IP不一定就完全等价于客户端本机的端口。比如:客户端在一个局域网里,IP地址是192.168.1.100,然后它通过ADSL路由连接到internet,再通过internet连接到服务端。这个时候,服务端获得的客户端IP地址就可能是那个ADSL路由的IP。

本文由 在线网速测试 整理编辑,转载请注明出处。