zoukankan      html  css  js  c++  java
  • 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地址
  • 相关阅读:
    Python变量、标识符
    PyCharm中设置作者信息
    去中心化
    复杂逻辑---取数
    行政机构处理
    2020.11案例分析
    中间表
    软考--项目管理名词
    软考--近6次上午考点分析
    软考--学习方法、做题方法
  • 原文地址:https://www.cnblogs.com/xing901022/p/3530892.html
Copyright © 2011-2022 走看看