UNP 学习笔记——套接字编程简介

栏目: IT技术 · 发布时间: 6年前

内容简介:UNP 学习笔记——套接字编程简介

1、IPv4 套接字地址结构是什么?

struct sockaddr_in{
    uint8_t sin_len;
    sa_family_t sin_family;
    in_port_t sin_port;

    struct in_addr sin_addr;
    char sin_zero[8];
};

struct in_addr{
    in_addr_t s_addr; // 4 bytes
};

2、通用套接字地址结构是什么?

struct sockaddr{
    uint8_t sa_len;
    sa_family_t sa_family;
    char sa_data[14]; 
};

struct sockaddr_in serv;
bind (sockfd, (struct sockaddr *) &serv, sizeof (serv)); // 强制类型转换

3、IPv6 套接字地址的结构是什么?

struct sockaddr_in6{
    uint8_t sin6_len;
    sa_family_t sin6_family;
    in_port_t sin6_port;

    uint32_t sin6_flowinfo; 

    struct in6_addr sin6_addr;
    uint32_t sin6_scope_id; 
};

struct in6_addr {
    uint8_t s6_addr[16];
};

4、新的通用套接字地址结构是什么?

struct sockaddr_storage{
    uint8_t ss_len;
    sa_family_t ss_family; 

    ...
};

5、字节 排序 函数有哪些?

uint16_t htons(uint16_t ); 
uint32_t htonl(uint32_t );
uint16_t ntohs(uint16_t ); 
uint32_t ntohl(uint32_t );

6、地址字符串与网络字节序转化的函数有哪些?

int inet_pton(int family, const char* strptr, void* addptr); 
const char* inet_ntop(int family, const void* addptr, char* strptr, size_t len); 

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Linux命令行大全

Linux命令行大全

绍茨 (William E.Shotts) / 郭光伟、郝记生 / 人民邮电出版社 / 2013-3-1 / 69.00元

《Linux命令行大全》主要介绍Linux命令行的使用,循序渐进,深入浅出,引导读者全面掌握命令行的使用方法。 《Linux命令行大全》分为四部分。第一部分开始了对命令行基本语言的学习之旅,包括命令结构、文件系统的导引、命令行的编辑以及关于命令的帮助系统和使用手册。第二部分主要讲述配置文件的编辑,用于计算机操作的命令行控制。第三部分讲述了从命令行开始执行的常规任务。类UNIX操作系统,比如L......一起来看看 《Linux命令行大全》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

随机密码生成器
随机密码生成器

多种字符组合密码

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具