网络地址转换基础

网络工程 思科 纳特 思科-ios
2021-07-08 04:59:55

有人可以帮我理解NAT的概念吗?我以为我明白这是如何工作的,但我对有两个公共地址而不是只有一个公共互联网地址感到困惑。

我对 NAT 的理解是这样的:

本地内部- RFC 1918 私有地址或转换前的地址

外部本地- 连接到 ISP 的路由器的传出接口 IP(这也是 RFC 1918 私有地址吗???)

Inside Global - 转换后的本地 IP 地址

外部全球- 真实的互联网地址

如果我错了,请在这里纠正我。

当我看到 NAT 转换的例子时,我明白内部本地地址是本地私有 IP 范围,内部全局地址是转换后的本地地址地址。我不明白的是外部本地外部全球的公共地址来自哪里。

我问这个的原因是因为当我配置 PAT 时,我会使用以下命令,例如:

ip nat pool test 2.2.2.2 2.2.2.2 net 255.255.255.0
access list 10 permit 192.168.100.0 0.0.0.255
ip nat pool inside source list 1 pool test overload

然后我会在内部本地界面上应用以下内容:

ip nat inside

用下面的串行接口去ISP

ip nat outside

根据定义,我已经指定了要使用的 NAT 池地址,并使用ip nat inside命令指定了允许的网络,那么我是否需要为实际的公共地址配置一些额外的东西?

任何帮助将不胜感激,因为我很难理解这里的概念。

3个回答

我可以帮你理解NAT地址的名称。

每个名称分解为...

The {inside | outside} device is {globally | locally} known as <Address Name>.

出于本说明的目的,内部和本地均指 NAT 内部接口所在的网络一侧。外部和全局均指 NAT 外部接口所在的网络一侧。

例如,内部本地地址。内部装置被当地称为内部本地地址。在标准过载 NAT 中,这是实际分配给内部网络主机的私有 IP 空间。

接下来是Inside Global地址。内部装置,在全球范围内被称为内部全局地址。在标准过载 NAT 中,这是 Internet 将本地主机视为路由器的公共 IP 地址。

现在是外部本地地址。所述外部装置被局部被称为外部本地地址。在标准过载 NAT 上,这是内部客户端将其 IP 数据包定向到的公共 Internet IP 地址。

最后,外部全球地址。外部设备在全球范围内被称为外部全局地址。在标准过载 NAT 中,这是内部客户端将其 IP 数据包定向到的公共 IP 地址。请注意,它与外部本地地址相同,因为内部客户端和公共 Internet 看到设备的相同 IP。

至于“使用两个公共 IP 地址”:在您的示例中,“测试”池定义了要使用的公共 IP 地址。您的另一个选择是使用“interface interface ”命令而不是池。您只需定义一次公共 IP(或 IP 池)。

由于您使用了 Cisco 标签,我将提供 Cisco 定义。简单地说,NAT 是在数据包中转换一个或多个地址。

Cisco 设备有多种 NAT 版本:内部源、内部目标和外部源。您似乎想了解内部来源。

NAT 与 RFC 1918 地址空间没有任何关系。您可以对任何地址进行 NAT,无论是公共地址还是私有地址。最常见的用途是将本地私有寻址转换为公共寻址,但这不是 NAT 的要求。

搜索一下,思科有很多关于NAT的文档,例如:

NAT:本地和全局定义

术语定义

思科将这些术语定义为:

  • 内部本地地址- 分配给内部网络上的主机的 IP 地址。这是配置为计算机操作系统参数或通过动态地址分配协议(如 DHCP)接收的地址。该地址可能不是由网络信息中心 (NIC) 或服务提供商分配的合法 IP 地址。
  • 内部全局地址— 由 NIC 或服务提供商分配的合法 IP 地址,代表一个或多个内部本地 IP 地址到外部世界。
  • 外部本地地址- 外部主机在内部网络中显示的 IP 地址。不一定是合法地址,它是从内部可路由的地址空间分配的。
  • 外部全局地址- 主机所有者分配给外部网络上的主机的 IP 地址。该地址是从全局可路由地址或网络空间分配的。

这些定义仍然有很多需要解释的地方。对于此示例,本文档通过首先定义本地地址和全局地址来重新定义这些术语。请记住,内部和外部的术语是 NAT 定义。NAT 路由器上的接口使用 NAT 配置命令ip nat inside destinationip nat outside source定义为内部或外部这些接口连接的网络可以分别被认为是内部网络或外部网络。

  • 本地地址— 本地地址是出现在网络内部的任何地址。
  • 全局地址— 全局地址是出现在网络外部的任何地址。

来自网络内部部分的数据包具有作为源地址的内部本地地址和作为数据包的目标地址的外部本地地址,而数据包驻留在网络的内部部分。当同一个数据包切换到外部网络时,数据包的源现在称为内部全局地址,数据包的目的地称为外部全局地址。

相反,当数据包来自网络的外部部分时,当它位于外部网络时,其源地址称为外部全局地址。数据包的目的地称为内部全局地址。当同一个数据包被切换到内部网络时,源地址被称为外部本地地址,数据包的目的地被称为内部本地地址。

此图像提供了一个示例。

在此处输入图片说明

如果您想更好地了解 NAT 基础知识。观看一些介绍性视频会有所帮助。这是一个很棒的视频,可以帮助您入门。https://www.youtube.com/watch?v=711xYxaRPwM