当前位置: 首页 > 软件库 > 程序开发 > 网络工具包 >

fnat46

IPv4/IPv6 协议转换网关
授权协议 MIT
开发语言 Google Go
所属分类 程序开发、 网络工具包
软件类型 开源软件
地区 国产
投 递 者 商琛
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

IPv4/IPv6 协议转换网关,用于在当前 IPv4 单栈局域网内,客户端访问外部 IPv6 单栈网络资源。

整体思路

局域网内终端接入协议转换网关,通过 DNS46 完成域名解析,对访问 IPv6 资源的网络请求通过 NAT46 协议转换设备完成协议转换(请求、响应),以完成全程网络会话。

流程时序

  1. Pv4 客户端向域名服务器 DNS46 发起资源服务网络请求(A记录);
  2. DNS46 通过递归查询公网该服务域名的 A 记录。如果得到 A 记录,则返回给客户端,客户端继续使用 A 记录的 IPv4 完成网络请求;
  3. 如果 DNS46 查询到该域名只有 AAAA 记录,则表示该域名服务只提供了 IPv6 单栈服务,需要 NAT46 的转换服务;
  4. DNS46 从可用 IPv4 资源池中选择一个 IP,注册该 IPv4 与服务域名 IPv6 的映射,将该映射同步至 NAT46 网关,然后将该 IPv4 返回给客户端;
  5. 客户端向该 IPv4 发起网络会话请求,该请求通过路由到达 DNS46 网关;
  6. DNS46 网关以报头目的 IP 查询映射,得到真实的 IPv6 目的地址,将 IPv4 协议报头替换为 IPv6 报头,通过 NAT46 网关的 IPv6 出口以 IPv6 协议向服务域名发起请求;
  7. NAT46 网关收到响应后,通过查询映射表,将 IPv6 报头转换为 IPv4 报头,返回给 IPv4 客户端,会话完成。

 

 相关资料
  • 如果你对 Hprose 协议本身有所了解的话,你还可以直接在 Hprose 过滤器中对输入输出数据进行协议转换。 在 Hprose for PHP 中已经提供了现成的 JSONRPC 的过滤器。使用它,你可以将 Hprose 服务器变身为 Hprose + JSONRPC 双料服务器。也可以将 Hprose 客户端变身为 Hprose + JSONRPC 双料客户端。 main.go packag

  • This file describes the network protocol used by Ceph. In order to understand the way the structures are defined it is recommended to read the introduction of Network Encoding first. Hello The protoco

  • 问题内容: 我有以下代码。如何解决最后一行中的错误? 问题答案: 更新: 此问题已在Swift 1.2+(Xcode 6.3+)中修复。Xcode 6.3 beta发行说明说: 现在,只要没有关联类型,动态类型转换(“ as!”,“ as?”和“ is”)就可以使用Swift协议类型。 只能检查协议一致性(其包括,,和用) 协议。不是。 请参阅Swift书中的“ 检查协议一致性”部分。 注意 仅当

  • 两台计算机是怎样进行数据传递的

  • 只有当我将ios-driver jar作为node.js子级生成时,才会发生此错误。 错误为 版本信息: 为什么会发生这个错误,我如何修复它?

  • 是否有一个工具或库可以将PROBUFF对象映射到POJO。我想让pojo实现我无法使用PROBUFF对象实现的其他接口。或者我必须手动执行此转换?

  • 主要内容:RPL协议,CORPL协议,CARP协议,6LoWPAN,6LowPAN安全措施,6LowPAN协议的属性网络层分为两个子层:处理从源到目的地的数据包传输的路由层,以及形成数据包的封装层。 RPL协议 RPL代表低功耗和有损网络的路由协议。它是一种距离矢量协议,支持各种数据链路协议。RPL构建了一个面向目标的有向无环图(DODAG),它只有一个从每个叶节点到根节点的路由。此DODAG中的所有流量都通过根路由。最初,每个节点发送一个DODAG信息对象(DIO),声明它们是自己的根。这些信

  • 问题内容: 仅当我将iOS驱动程序 jar生成为Node.js子级时,才会发生此错误。 错误是 selenium-test.js: webdriverjs-test.js (webdriverjs) 通过创建以上文件,在一个窗口中运行selenium-test.js并在另一个窗口中运行webdriverjs-test.js,重现此错误。你首先需要和 版本信息: 为什么会发生此错误,我该如何解决?