sockaddrstruct sockaddr_in addr是什么意思?求大神解答

sockaddr  时间:2021-07-19  阅读:()

SOCKADDR_IN的基本结构

在windows/linux下有下面结构: sockaddr结构 struct sockaddr { unsigned short sa_family;/*addressfamily,AF_xxx*/ char sa_data[14];/*14bytesofprotocoladdress*/ }; sa_family是地址家族,一般都是“AF_xxx”的形式。

通常大多用的是都是AF_INET,代表TCP/IP协议族。

sa_data是14字节协议地址。

此数据结构用做bind、connect、recvfrom、sendto等函数的参数,指明地址信息。

但一般编程中并不直接针对此数据结构操作,而是使用另一个与sockaddr等价的数据结构 sockaddr_in(/in.h中定义): struct?sockaddr_in{short?sin_family;/*Address?family一般来说AF_INET(地址族)PF_INET(协议族)*/unsigned?short?sin_port;/*Port?number(必须要采用网络数据格式,普通数字可以用htons()函数转换成网络数据格式的数字)*/struct?in_addr?sin_addr;/*IP?address?work?byte?order(?address)*/unsigned?char?sin_zero[8];/*Same?size?as?struct?sockaddr没有实际意义,只是为了 跟SOCKADDR结构在内存中对齐*/};(在ws2def.h中定义): struct?sockaddr_in{????#if(_WIN32_WINNT<0x0600)????short?sin_family;????#else//(_WIN32_WINNT<0x0600)????address_family?sin_family;????#endif//(_WIN32_WINNT<0x0600)????ushort?sin_port;????in_addr?sin_addr;????char?sin_zero[8];} (在WinSock2.h中定义): struct?sockaddr_in?{????????short???sin_family;????????u_short?sin_port;????????struct??in_addr?sin_addr;????????char????sin_zero[8];}; 在linux下: in_addr结构 typedef?uint32_t?in_addr_t;struct?in_addr??{????in_addr_t?s_addr;??};在windows下: typedef?struct?in_addr{????union{????????????struct?{?unsigned?char?s_b1,s_b2,s_b3,s_b4;?}?S_un_b;????????????struct?{?unsigned?short?s_w1,s_w2;?}?S_un_w;????????????unsigned?long?S_addr;????}S_un;}in_addr;更多参考:in_addr

如何将IP地址转换成sockaddr

地址的字节序不用转换 SockAdd_In.sin_addr.S_addr :=_addr(PAnsiChar(IP)); 另外请注意delphi的版本, 如果高版本的(delphi2009以上)用下面的 SockAdd_In.sin_addr.S_addr :=_addr(PAnsiChar(AnsiString(IP)));

在套接字编程里常出现(struct sockaddr *)&server,这个结构是什么意思?

这个是说把server变量所在地址的数据类型转换为sockaddr,sockaddr从字面上理解就是地址的意思。

在API里,套接字不仅仅可以用于TCP/IP协议下,也可以用于NETBOIS等早期的协议。

简单说就是多协议公用的标识地址的结构

struct sockaddr_in addr是什么意思?求大神解答

struct sockaddr_in是已经声明了的结构名,这里当作类型名来使用,如基础类型名int,double等等,addr被声明为struct sockaddr_in类型的变量,就像int a;中的a一样。

CloudCone(1.99美元),可以额外选择Voxility高防IP

CloudCone 商家也是比较有特点的,和我们熟悉的DO、Vultr、Linode商家均是可以随时删除机器开通的小时计费模式。这个对于有需要短租服务器的来说是比较有性价比的。但是,他们还有一个缺点就是机房比较少,不同于上面几个小时计费服务商可以有多机房可选,如果有这个多机房方案的话,应该更有特点。这次我们可以看到CloudCone闪购活动提供洛杉矶三个促销方案,低至月付1.99美元。商家也可以随...

台湾CN2云服务器 2核2G 5M 5IP 台湾物理服务器 E5x2 64G 20M 5IP

提速啦(www.tisula.com)是赣州王成璟网络科技有限公司旗下云服务器品牌,目前拥有在籍员工40人左右,社保在籍员工30人+,是正规的国内拥有IDC ICP ISP CDN 云牌照资质商家,2018-2021年连续4年获得CTG机房顶级金牌代理商荣誉 2021年赣州市于都县创业大赛三等奖,2020年于都电子商务示范企业,2021年于都县电子商务融合推广大使。资源优势介绍:Ceranetwo...

10GBIZ(月$2.36 ), 香港和洛杉矶CN2 GIA

10GBIZ服务商经常有看到隔壁的一些博客分享内容,我翻看网站看之前有记录过一篇,只不过由于服务商是2020年新成立的所以分享内容比较谨慎。这不至今已经有将近两年的服务商而且云服务产品也比较丰富,目前有看到10GBIZ服务商有提供香港、美国洛杉矶等多机房的云服务器、独立服务器和站群服务器。其中比较吸引到我们用户的是亚洲节点的包括香港、日本等七星级网络服务。具体我们看看相关的配置和线路产品。第一、香...

sockaddr为你推荐
大蟒蛇平台PY平台是什么?常用软件开发工具网站开发过程中常用的工具有哪些达内学院成都达内学校在什么地方?安卓系统软件删除安卓系统中如何删除无用程序?微软将停止支持32位Win10系统WIN10系统Microsoft Office已停止工作怎么解决微软将停止支持32位Win10系统win10 64位怎么兼容32位淘气鸟八哥鸟忽然死了?magento2心慌方2是什么意思?创业好项目论坛谁能提供点真实可靠的,网络创业赚钱项目?1518qq几开头的QQ号好
apache虚拟主机 vps论坛 ubuntu更新源 lamp配置 php免费空间 hnyd 东莞数据中心 万网主机管理 smtp虚拟服务器 什么是web服务器 学生服务器 1美元 学生机 godaddy域名 shuangshiyi 海尔t68驱动 ddos攻击 小米电视主机 dell服务器论坛 邮件服务器是什么 更多