套接口地址结构及IP端口转换函数简介
来源:互联网 发布:虚拟充值退款淘宝介入 编辑:程序博客网 时间:2024/04/29 07:59
1.早期通用地址结构sockaddr:
typedef unsigned short sa_family;
#include <sys/socket.h>
struct sockaddr{
sa_family_t sa_family; //地址族
char sa_data[14]; //地址值,实际可能更长
};
2.IPv4 “国际套接口地址结构”sockaddr_in
#include <netinet/in.h>
struct in_addr{
in_addr_t s_addr; //32-bit 网络序
};
struct sockaddr_in{
sa_family_t sin_family; //AF_INET
in_port_t sin_port; //16-bit 网络序
struct in_addr sin_addr;
char sin_zreo[8]; //unused
};
3.字节排序函数——端口转换
#include <netinet/in.h>
uint16_t htons(uint16_t host16bitvalue);
uint32_t htonl(uint32_t host32bitvalue);
返回值:网络字节序值
uint16_t ntohs(uint16_t net16bitvalue);
uint32_t ntohl(uint32_t net32bitvalue);
返回值:主机字节序
4. IP地址 ——ASCII字符串与网络序二进制值转换
#include <arpa/inet.h>
int inet_aton(const char *strptr,struct in_addr *addrptr);
参数1:strptr是指向 ASCII字符串的指针 *指针如果为NULL仍然检查有效性,但不存储结果
参数2:addrpt是r指向 存储32位网络序二进制的指针
返回值:1——字符串有效,0——无效
in_addr_t inet_addr(const char *strptr);
参数:strptr是指向 ASCII字符串的指针
返回值:成功返回 32位二进制网络序地址,失败返回INADDR_NONE
char *inet_ntoa(struct in_addr inaddr);
返回:指向点分十进制数串的指针
int inet_pton(int family,const char *strptr,void *addrptr);
参数1:AF_INET AF_INET6
参数2:strptr是指向 ASCII字符串的指针
参数3:addrpt是r指向 存储32位网络序二进制的指针
返回值:1——成功,0——输入不是有效的表达格式,-1——出错
const cahr *inet_ntop(int family,const void *addrptr,char *strptr,size_t len);
参数1:AF_INET AF_INET6
参数2:addrpt是r指向 存储32位网络序二进制的指针
参数3:strptr是指向 ASCII字符串的指针
参数4:#define INET_ADDRSTRLEN 16 IPv4
#defien INET6_ADDRSTRLEN 46 IPv6
返回值:成功——指针,出错——NULL
- 套接口地址结构及IP端口转换函数简介
- 套接口地址结构
- 套接口地址结构
- 1.套接口地址结构
- (1)套接口地址结构和数据类型
- 套接口地址结构和数据类型
- ip地址转换函数
- IP地址转换函数:
- IP地址转换函数
- IP地址转换函数
- IP地址转换函数
- IP地址转换函数
- IP地址转换函数
- IP地址转换函数
- socket结构和几个IP地址转换函数
- socket结构和几个IP地址转换函数
- socket结构和几个IP地址转换函数
- socket结构和几个IP地址转换函数
- 第一天
- 复制字符串strcpy —— 编译器的诡异
- [sql server] 问题总结9- 字符串拼接
- linux(fedora)开机启动服务
- HashMap遍历的两种方式
- 套接口地址结构及IP端口转换函数简介
- 向量
- 新建自己的windows service
- Android自由的游戏开发框架
- type parameter, type argument & parameteried type
- 入库,出库数据,自动生成库存,简单实用的仓库管理表格或ERP系统.请发一份到我的邮箱545451757@qq.com.谢谢
- guichan控件学习之一
- jpa的基本映射
- RtspProxy RTSP 重定向 Redirect 的实现