目录

简介

先决条件

要求

使用的组件

配置

网络图

配置

验证

故障排除

相关信息

简介

本文档通过一个配置示例介绍如何在 Cisco IOS® 设备上实施静态 NAT-PT。在此示例中，IPv6 网络节点通过 IPv6 前缀和 IPv4 地址之间的静态映射与 IPv4 网络节点通信。该静态映射在网络地址转换-协议转换 (NAT-PT) 路由器上配置。

NAT-PT 功能是一种 IPv6 与 IPv4 间的转换机制，使仅支持 IPv6 的设备可以与仅支持 IPv4 的设备进行通信，反之亦然。与传统 IPv4 NAT 类似，NAT-PT 允许静态、动态和端口地址转换 (PAT) 操作，以实现在仅支持 IPv6 的网络和仅支持 IPv4 的网络之间进行直接通信。

先决条件

要求

Cisco 建议您了解以下主题：

- 关于 NAT 概念和操作的基础知识

- 关于 IPv6 寻址方案的基础知识

- 关于 IPv6 静态路由的基础知识

注意：NAT-PT 已被 IETF 弃用，因为它与域名系统 (DNS) 紧密结合，并且在转换方面存在一般性限制，而且事实证明此技术过于复杂以致无法维持可扩展的转换服务。随着NAT-PT的弃用和用户之间IPv6转换的增加，NAT64应运而生。有关NAT64的详细信息，请参阅以下文档：

-NAT64 技术：连接 IPv6 和 IPv4 网络

-NAT64 无状态与有状态

-IPv6 有状态 NAT64 配置示例

使用的组件

本文所述的配置基于运行 Cisco IOS 软件版本 12.4 (15)T 13 的思科 3700 系列路由器。

本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始（默认）配置。如果您的网络处于活动状态，请确保您了解所有命令的潜在影响。

配置

在此示例中，三台路由器（R1、R2 和 R3）通过串行接口连接。R1 充当 NAT-PT 路由器，使用 IPv4 地址连接到 R2，并使用 IPv6 地址连接到 R3。

注意：思科快速转发 (CEF) 技术不支持 NAT-PT。必须禁用 CEF，才能使 NAT-PT 正常工作。

网络图

此示例使用下图中所示的网络设置：

配置

此示例使用以下配置：

- 路由器 R1 配置

- 路由器 R2 配置

- 路由器 R3 配置

R1 的配置

hostname R1

ipv6 unicast-routing

!

interface Serial0/0

ip address 192.168.30.10 255.255.255.0

duplex auto

speed auto

ipv6 nat

!

interface Serial0/1

no ip address

duplex auto

speed auto

ipv6 address 2001:DB8:3002::9/64

ipv6 enable

ipv6 nat

!

ipv6 route ::/0 2001:DB8:3002::10

ipv6 nat v4v6 source 192.168.30.9 2000::960B:202

!--- Translates the ipv4 add of R2 fa0/0 to ipv6 address.

ipv6 nat v6v4 source 3001:11:0:1::1 150.11.3.1

!--- Translates the ipv6 add of loop0 of R3 to ipv4 address.

ipv6 nat prefix 2000::/96

!--- The destination prefixes that matches 2000::/96

!--- are translated by NAT-PT.

!

end

R2 配置

hostname R2

!

interface Serial0/0

ip address 192.168.30.9 255.255.255.0

duplex auto

speed auto

!

ip route 0.0.0.0 0.0.0.0 192.168.30.10

!

!

end

R3 配置

hostname R3

ipv6 unicast-routing

!

interface Loopback0

no ip address

ipv6 address 3001:11:0:1::1/64

!

interface Serial0/0

no ip address

duplex auto

speed auto

ipv6 address 2001:DB8:3002::10/64

!

ipv6 route ::/0 2001:DB8:3002::9

!

验证

使用本部分可确认配置能否正常运行。

在路由器R3中

从R3的Loopback0接口(3001:11:0:1::1)的IPv6地址(R3)生成的ICMP回应请求数据包应使用IPv6地址2000到达R2的Serial0/0接口(192.168.30.9)的IPv4地址：:960B:202。工作示例如下所示：

ping

R3#ping 2000::960b:202 source Loopback0

Type escape sequence to abort.

Sending 5, 100-byte ICMP Echos to 2000::960B:202, timeout is 2 seconds:

Packet sent with a source address of 3001:11:0:1::1

!!!!!

Success rate is 100 percent (5/5), round-trip min/avg/max = 8/60/124 ms

!--- This shows that the router R3 is able to reach

!--- the router R2 through lo address 3001:11:0:1::1.

在路由器R2中

R2生成的ICMP回应请求数据包(将自动从192.168.30.9（R2的Serial0/0接口的IPv4地址）到达R3的Loopback0接口(3001:11:0:1::1)的IPv6地址，使用IPv4地址150.11.3.1。工作示例如下所示：

ping

R2#ping 150.11.3.1

Type escape sequence to abort.

Sending 5, 100-byte ICMP Echos to 150.11.3.1, timeout is 2 seconds:

!!!!!

Success rate is 100 percent (5/5), round-trip min/avg/max = 24/68/120 ms

!--- The successful ping response shows that the router R2

!--- is able to reach the IPv6 network.

在路由器R1中

在 R1 上，可以通过 show ipv6 nat translations 命令的输出来观察 R2 和 R3 之间的活动 NAT-PT 转换。

show ipv6 nat translations

R1#show ipv6 nat translations

Prot  IPv4 source              IPv6 source

IPv4 destination         IPv6 destination

---   ---                      ---

192.168.30.9             2000::960B:202

---   150.11.3.1               3001:11:0:1::1

---                      ---

R1#show ipv6 nat translations

Prot  IPv4 source              IPv6 source

IPv4 destination         IPv6 destination

---   ---                      ---

192.168.30.9             2000::960B:202

---   150.11.3.1               3001:11:0:1::1

---                      ---

!--- This command displays the active NAT-PT translations in the router.

在 R2 和 R3 之间执行 ICMP ping 操作时，使用 debug ipv6 nat detail 命令激活详细的 IPv6 NAT 调试，结果显示 R1 按照预期正常转换流量。

debug ipv6 nat detailed

R1#debug ipv6 nat detailed

R1#

*Mar  1 09:12:41.877: IPv6 NAT: Found prefix 2000::/96

*Mar  1 09:12:41.881: IPv6 NAT: IPv4->IPv6:

src (192.168.30.9 -> 2000::960B:202)

dst (0.0.0.0 -> ::)

ref_count = 1, usecount = 0, flags = 513,

rt_flags = 0, more_flags = 0

*Mar  1 09:12:41.881: IPv6 NAT: IPv4->IPv6:

src (0.0.0.0 -> ::)

dst (150.11.3.1 -> 3001:11:0:1::1)

ref_count = 1, usecount = 0, flags = 257,

rt_flags = 0, more_flags = 0

*Mar  1 09:12:41.925: IPv6 NAT: IPv6->IPv4:

src (3001:11:0:1::1 -> 150.11.3.1)

dst (2000::960B:202 -> 192.168.30.9)

ref_count = 1, usecount = 0, flags = 2,

rt_flags = 0, more_flags = 0

*Mar  1 09:12:41.925: IPv6 NAT: icmp src (3001:11:0:1::1) -> (150.11.3.1),

dst (2000::960B:202) -> (192.168.30.9)

*Mar  1 09:12:41.965: IPv6 NAT: Found prefix 2000::/96

*Mar  1 09:12:41.965: IPv6 NAT: IPv4->IPv6:

src (192.168.30.9 -> 2000::960B:202)

dst (150.11.3.1 -> 3001:11:0:1::1)

ref_count = 1, usecount = 0, flags = 2,

rt_flags = 0,

!--- This command displays detailed information about NAT-PT events.

故障排除

目前没有针对此配置的故障排除信息。

相关信息

- IP 编址服务

- Cisco IOS IPv6 命令参考

- IPv6 技术支持

- 技术支持和文档 - Cisco Systems