in_addr结构通常赋值给sockaddr_in结构的sin_addr成员,而sockaddr_in结构需要赋值给Linux套接字编程中connect调用和bind调用的第二个参数。还是上代码吧:
struct sockaddr_in address
address.sin_family=AF_INET
address.sin_port=htons(8080) // 端口号
address.sin_addr.s_addr=inet_addr("127.0.0.1")
int len=sizeof(address)
connect(sockfd, (struct sockaddr *)&address, len)
额,并不用获取对方地址,服务器端创建socket时会指定地址类型,传输方式,协议类型等,然后bind绑定一个地址和一个端口号,例如本机地址和自己定义的端口号,在listen监听就行了。客户端类似,然后connect一个地址和端口号,只要和刚才服务器定义的一样就可以连接上了。
tcp传输时的报文头中的源、目地端口号(每个端口号代表不同的应用进程)。而套接字地址正是ip地址与端口号的结合
简单说就是应用层与传输层之层的接口的pdu
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)