IPv4&IPv6双重协议栈

简介:
IPV4 TCP客户与IPV6服务器之间的通信:
1 启动IPV6服务器,创建套接监听口,绑定通配地址
2 IPV4调用gethostbyname找到该服务器对应的A记录
3 调用connect,向服务器发送一个IPV4的SYN
4 服务器设置标志,表明是IPV4映射的IPV6地址,相应一个IPV4的SYN/ACK
5 所有通信使用IPV4
IPV6 TCP客户与IPV4服务器之间通信:
1 创建IPV4监听套接口
2 IPV6客户启动,调用gethostbyname询问IPV6地址
3 调用connect,在相应IPV6套接口地址结构中存放所得的IPV4映射的IPV6。内核检查到这个映射地址,自动向服务器发送IPV4的SYN
4 服务器用IPV4的SYN/ACK相应,连接通过IPV4数据报建立
IPV4客户不能调用Connect或sendto指定IPV6的地址,因为在IPV4的sockaddr_in结构里的4字节的in_addr结构中,放不下16字节的v6地址
本文转自博客园xingoo的博客,原文链接:IPv4&IPv6双重协议栈,如需转载请自行联系原博主。
相关文章
|
2天前
|
存储 缓存 算法
堆和栈的区别及应用场景
堆和栈的区别及应用场景
|
2天前
|
算法
数据结构与算法:栈与队列
数据结构与算法:栈与队列
|
5天前
|
存储 算法 调度
算法与数据结构-栈篇
算法与数据结构-栈篇
12 0
|
6天前
|
存储 人工智能 程序员
技术心得记录:堆(heap)与栈(stack)的区别
技术心得记录:堆(heap)与栈(stack)的区别
|
8天前
【海贼王的数据航海】栈和队列
【海贼王的数据航海】栈和队列
6 0
|
8天前
|
算法 C语言
【数据结构与算法 经典例题】使用栈实现队列(图文详解)
【数据结构与算法 经典例题】使用栈实现队列(图文详解)
|
8天前
|
存储 测试技术
【数据结构】操作受限的线性表,栈的具体实现
【数据结构】操作受限的线性表,栈的具体实现
17 5
|
8天前
|
算法 C语言
【数据结构与算法 经典例题】使用队列实现栈(图文详解)
【数据结构与算法 经典例题】使用队列实现栈(图文详解)
|
9天前
|
算法
【C/数据结构和算法】:栈和队列
【C/数据结构和算法】:栈和队列
16 1
|
13天前
|
C++
【洛谷 P1044】[NOIP2003 普及组] 栈 题解(递归+记忆化搜索)
**NOIP2003普及组栈问题**:给定操作数序列1到n,仅允许push(进栈)和pop(出栈)操作。目标是计算所有可能的输出序列总数。输入包含一个整数n(1≤n≤18)。示例输入3,输出5。当队列空时返回1,栈空则只能入栈,栈非空时可入栈或出栈。AC C++代码利用记忆化搜索求解。
11 1