《深入解析IPv6(第3版)》——11.3 隧道配置

简介:

本节书摘来自异步社区《深入解析IPv6(第3版)》一书中的第11章,第11.3节,作者: 【美】Joseph Davies 更多章节内容可以访问云栖社区“异步社区”公众号查看。

11.3 隧道配置

RFC 4213定义了如下可以穿越纯IPv4架构在IPv6/IPv4节点之间建立隧道IPv6流量的隧道配置环境:

  • 路由器到路由器;
  • 主机到路由器和路由器到主机;
  • 主机到主机。

11.3.1 路由器到路由器
在路由器到路由器的隧道配置环境中,两个IPv6/IPv4路由器穿越纯IPv4架构连接到了两个支持IPv6的架构中。隧道端点在源和目的地址间相隔一跳。每个支持IPv6架构的路由都指向其边缘的IPv6/IPv4路由器。对于每个IPv6/IPv4路由器,都存在代表IPv6-over-IPv4隧道的隧道接口和使用隧道接口的路由。

注释

支持IPv6的架构中包含有IPv6连接,这个连接既可以是本地的,也可以是基于隧道的连接。而具有IPv6功能的架构会含有本地的IPv6连接。
图11-6所示为路由器到路由器的隧道。


<a href=https://yqfile.alicdn.com/bf858e9333d4ace867ff44479dc900594173d9b5.png" >

这个隧道配置环境的示例包括如下内容。

  • 一个纯IPv6的测试实验室,穿过某机构的纯IPv4架构到达IPv6 Internet。
  • 一个机构中两个支持IPv6的站点,穿越IPv4 Internet建立隧道。
  • 6to4路由器穿越IPv4 Internet并与另一个6to4路由器建立隧道,或与一台6to4中继路由器建立隧道。如需进一步了解有关6to4的内容,请参阅第13章。

11.3.2 主机到路由器和路由器到主机
在主机到路由器的隧道配置环境中,一台位于纯IPv4架构中的IPv6/IPv4主机使用IPv6-over-IPv4的隧道到达一台IPv6/IPv4路由器。隧道端点为源和目的地址间的第一跳。

在IPv6/IPv4节点上,有一个隧道接口代表IPv6-over-IPv4隧道的隧道接口和一条或多条使用该隧道接口的路由(通常是默认路由)。IPv6/IPv4节点会根据匹配的路由、隧道接口和IPv6/IPv4路由器的下一跳IPv6地址,来将IPv6数据包通过隧道进行传送。

在路由器到主机的隧道配置环境中,IPv6/IPv4路由器会创建一条IPv6-over-IPv4隧道以穿越IPv4架构并到达IPv6/IPv4节点。隧道端点为源和目的地址间的最后一跳。

在IPv6/IPv4路由器上,有一个隧道接口代表IPv6-over-IPv4隧道的隧道接口和使用该隧道接口的路由(通常是子网路由)。IPv6/IPv4路由器会根据匹配的子网路由、隧道接口和IPv6/IPv4节点的目的IPv6地址,来将IPv6数据包通过隧道进行传送。

图11-7所示为主机到路由器的隧道(对于纯IPv4架构中节点A到节点B的流量量)和路由器到主机的隧道(对于节点B到节点A传输的流量)。


df06a99cb93d6b2226b933fe0fb4e883b450483f

主机到路由器和路由器到主机的示例包括如下内容。

  • 一台IPv6/IPv4主机通过某个机构的纯IPv4架构并建立通往IPv6 Internet的隧道(主机到路由器的隧道)。
  • 一台ISATAP主机通过内联网中只支持IPv4的部分,与一台ISATAP路由器建立隧道,以到达内联网中支持IPv6的那一部分(主机到路由器的隧道)。
  • 一台ISATAP路由器通过内联网中只支持IPv4的部分,与目的ISATAP主机建立隧道(路由器到主机的隧道)。

11.3.3 主机到主机
在主机到主机的隧道配置环境中,位于纯IPv4架构中的IPv6/IPv4主机会使用IPv6-over-IPv4隧道,到达位于同一个纯IPv4架构中的另一个IPv6/IPv4节点。隧道端点位于整条路径的两端,源和目的节点相隔一跳。

每个IPv6/IPv4节点都有一个代表IPv6-over-IPv4隧道的接口。有一条路由用来表示目的节点位于由纯IPv4架构定义的同一个逻辑子网中。发送方主机会根据发送接口、链路中的子网路由以及目的地址,将IPv6流量通过隧道发送到目的。

图11-8所示为主机到主机的隧道。


14bdfae136fbf4f48d993f61be456e295367d12b

主机到主机的隧道示例包括如下内容。

ISATAP主机之间跨越某机构的纯IPv4架构建立隧道。
6to4主机/路由器之间穿越IPv4 Internet通过隧道互相传送流量。
11.3.4 隧道类型
RFC 4213定义了如下隧道类型。

  • 手动配置的隧道。
  • 自动生成的隧道。

手动配置的隧道

手动配置的隧道需要人工配置本地和远程的隧道端点。在手动配置的隧道中,远程隧道端点的IPv4地址并不会内嵌或编码在目的IPv6地址的下一跳IPv6地址中。手动配置的隧道通常用于路由器到路由器的隧道。配置隧道接口的任务包括配置本地和远程隧道端点的IPv4地址,这些地址必须按照使用隧道接口的路由来人工指定。例如,使用手动配置的隧道,可以在不使用IPv6过渡技术(如ISATAP)的情况下,穿越纯IPv4内联网连接两个支持IPv6的测试实验室网络。

为了给Windows中的IPv6协议人工创建手动配置的隧道,需要使用如下命令:

netsh interface ipv6 add v6v4tunnel [interface=]Name[localaddress=] LocalIPv4Address [remoteaddress=]RemoteIPv4address
  • Name是新隧道接口的名称。
  • LocalIPv4Address是分配给正在执行命令的计算机的IPv4地址,该地址对应本地隧道端点。
  • RemoteIPv4address是远程隧道端点的IPv4地址。

必须在隧道两端的路由器上都创建隧道接口并且添加使用隧道接口的路由。

例如,有两个测试实验室子网分别位于内联网的不同部分。路由器1连接到IPv6子网2001:db8:0:1::/64,并且IPv4地址是131.107.47.121。路由器2连接到IPv6子网2001:db8:0:2::/64,并且IPv4地址是157.54.9.211。图11-9所示为这个配置。

  1. <a href=https://yqfile.alicdn.com/1b0cc2b01005215cfa106364a5b8fd25ae034447.png" >

    为了在路由器1和路由器2之间配置一个隧道,要在路由器1上运行下列命令:

    netsh interface ipv6 add v6v4tunnel TunnelTo2 131.107.47.121 157.54.9.211
    netsh interface ipv6 add route 2001:db8:0:2::/64 TunnelTo2
    

    同样,还要在路由器2上运行下列命令:

    netsh interface ipv6 add v6v4tunnel TunnelTo1 157.54.9.211 131.107.47.121
    netsh interface ipv6 add route 2001:db8:0:1::/64 TunnelTo1
    

    自动隧道

    自动隧道不需要手动配置。自动隧道的隧道端点由目的IPv6地址所使用的路由、隧道接口和下一跳地址决定。Windows的IPv6协议支持下列自动隧道技术。

    • ISATAP:用于纯IPv4内联网中的IPv6/IPv4主机之间的单播通信。如需进一步了解相关内容,请参阅第12章。
    • 6to4:用于IPv4 Internet中的IPv6/IPv4主机之间和支持IPv6的站点之间的单播通信,需要6to4路由器或6to4主机/路由器拥有公网的IPv4地址。如需进一步了解相关内容,请参阅第13章。
    • Teredo:用于IPv4 Internet中的IPv6/IPv4主机之间的单播通信。即使主机只有IPv4私有地址,而且位于NAT之后,通信也可以实现。如需进一步了解相关内容,请参阅第14章。

    在 Windows的自动隧道技术中,发送或转发节点会从下述内容中判断出IPv6-over-IPv4隧道的端点。

    远程隧道端点的IPv4地址嵌入或编码在下一跳IPv6地址中(该地址对应目的IPv6地址的匹配路由)。
    本地隧道端点的IPv4地址会通过到达目的IPv4地址(即远程隧道端点)的最佳源IPv4地址来进行判断。

相关文章
|
1月前
|
数据采集 消息中间件 监控
Flume数据采集系统设计与配置实战:面试经验与必备知识点解析
【4月更文挑战第9天】本文深入探讨Apache Flume的数据采集系统设计,涵盖Flume Agent、Source、Channel、Sink的核心概念及其配置实战。通过实例展示了文件日志收集、网络数据接收、命令行实时数据捕获等场景。此外,还讨论了Flume与同类工具的对比、实际项目挑战及解决方案,以及未来发展趋势。提供配置示例帮助理解Flume在数据集成、日志收集中的应用,为面试准备提供扎实的理论与实践支持。
35 1
|
2月前
|
缓存 网络协议 Linux
【Shell 命令集合 网络通讯 】Linux 配置DNS dnsconf 命令 使用教程
【Shell 命令集合 网络通讯 】Linux 配置DNS dnsconf 命令 使用教程
46 0
|
2月前
|
网络协议 Linux
Linux DNS服务详解——DNS主从架构配置
Linux DNS服务详解——DNS主从架构配置
422 4
|
3月前
|
域名解析 应用服务中间件 Linux
【服务器】使用域名解析服务器的IP地址并配置SSL证书
【服务器】使用域名解析服务器的IP地址并配置SSL证书
525 0
|
7天前
|
缓存 测试技术 Android开发
深入了解Appium:Capability 高级配置技巧解析
Appium 提供多种进阶配置项以优化自动化测试,如 deviceName 作为设备别名,udid 确保选择特定设备,newCommandTimeout 设置超时时间,PRINT_PAGE_SOURCE_ON_FIND_FAILURE 在错误时打印页面源,以及测试策略中的 noReset、shouldTerminateApp 和 forceAppLaunch 控制应用状态和重启。这些配置可提升测试效率和准确性。
16 2
|
8天前
|
存储 弹性计算 固态存储
阿里云服务器配置选择指南,2024年全解析
阿里云服务器配置选择涉及CPU、内存、带宽和磁盘。个人开发者或中小企业推荐使用轻量应用服务器或ECS经济型实例,如2核2G3M配置,适合网站和轻量应用。企业用户则应选择企业级独享型ECS,如计算型c7、通用型g7,至少2核4G起,带宽建议5M,系统盘考虑SSD云盘或ESSD云盘以保证性能。阿里云提供了多种实例类型和配置,用户需根据实际需求进行选择。
|
13天前
|
分布式计算 DataWorks 调度
DataWorks操作报错合集之DataWorks配置参数在开发环境进行调度,参数解析不出来,收到了 "Table does not exist" 的错误,该怎么处理
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
25 0
|
14天前
|
分布式计算 大数据 数据处理
MaxCompute操作报错合集之在开发环境中配置MaxCompute参数进行调度,但参数解析不出来,如何解决
MaxCompute是阿里云提供的大规模离线数据处理服务,用于大数据分析、挖掘和报表生成等场景。在使用MaxCompute进行数据处理时,可能会遇到各种操作报错。以下是一些常见的MaxCompute操作报错及其可能的原因与解决措施的合集。
|
16天前
|
监控 安全 网络协议
|
18天前
|
分布式计算 网络协议 Hadoop
Hadoop节点扩展配置DNS和主机名解析
【4月更文挑战第19天】
22 1

推荐镜像

更多