设为首页收藏本站language→→ 语言切换

鸿鹄论坛

 找回密码
 论坛注册

QQ登录

先注册再绑定QQ

查看: 606|回复: 12
收起左侧

[求助] ip nat outside/inside source 问题

[复制链接]
发表于 2021-7-21 10:12:40 | 显示全部楼层 |阅读模式
本帖最后由 icebear_sx 于 2021-7-21 10:45 编辑

大神好!
现在有个关于ip nat outside source的转换问题想请教一下大家,问题如下!
1)先上拓扑图:
11111.png
2)实验目的:rx1 设备能够通过 10.10.10.254 来 telnet rx2设备
3)具体配置
RX1的配置:
interface f0/0
ipadd 172.168.1.1 255.255.255.252
ipnat inside
interface loopback 0
ipadd 10.10.10.1 255.255.255.0
ipnat outside
ip nat inside sourcestatic tcp 20.20.20.1 23 10.10.10.254 23
ip route 20.20.20.0255.255.255.0 172.168.1.2

RX2的配置:
interface f0/0
ipadd 172.168.1.2 255.255.255.252
interface loopback 0
ipadd 20.20.20.1 255.255.255.0
ip route 10.10.10.0255.255.255.0 172.168.1.1
line vty 0 4
password cisco

login
4)结果:rx1 无法通过 10.10.10.254 来实现 telnet rx2 设备
5)修正方法:在 rx1 设备上新增命令:ip nat outside source static10.10.10.1 10.10.10.254
6)问题:如果10.10.10.254 这个 ip 地址替换成 rx2 的 fa0/0 地址,上面这条 ip nat outside 就不用加了,为什么要加上这条命令?
7)以下是我的一些个人理解,请大神们帮忙看看理解是否有偏差,谢谢!
     个人的一些理解-1:从rx1 -》rx2 的过程,DIP(10.10.10.254:23)SIP(10.10.10.1:any),到了 outside 口,先nat后查路由表,变更后的ip包头信息为DIP(20.20.20.1:23)SIP(10.10.10.1:any);接下来回程rx2 -》rx1,DIP(10.10.10.1:any)SIP(20.20.20.1:23),到了inside口,先查路由后nat,变更后的ip包头信息为DIP(10.10.10.1:any)SIP(20.20.20.1:23),这个时候个人感觉DIP的10.10.10.1是可以访问的,不存在路由问题,应该回包是能到达rx1的,那最后实验结果却是无法创建 telnet 的 tcp 连接,请问这个什么原因?
     个人的一些理解-2:   ip nat inside sourc:就是在 ouside -》inside方向上针对 DIP 将 inside global 地址转换为 inside local,inside -》outside 方向上针对 SIP 将 inside local 地址转换为 inside global。
     个人的一些理解-3:inside global:10.10.10.254,inside local:20.20.20.1,outside global:10.10.10.1,outside local:10.10.10.254


发表于 2021-7-21 11:29:20 | 显示全部楼层
SNAT 执行原则,先路由,再考虑NAT
沙发 2021-7-21 11:29:20 回复 收起回复
回复 支持 反对

使用道具 举报

发表于 2021-7-21 11:29:55 | 显示全部楼层
DNAT,是先查NAT会话表,再执行查路由表
板凳 2021-7-21 11:29:55 回复 收起回复
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-7-21 12:14:08 | 显示全部楼层
本帖最后由 icebear_sx 于 2021-7-21 14:14 编辑
zeally 发表于 2021-7-21 11:29
SNAT 执行原则,先路由,再考虑NAT

同样是SNAT,有个问题,针对这条命令:ip nat inside sourcestatic tcp 20.20.20.1 23 10.10.10.254 23
1)如果从外到内访问(outside-》inside),如果按照你的说法先路由再nat,这个时候的数据包DIP(10.10.10.254)SIP(10.10.10.1),这个时候无法路由吧?
2)相反,如果从内到外访问(inside-》outside),这个时候的数据包DIP(10.10.10.1)SIP(10.10.10.254),到了nat路由器,先查路由表,是可以找到目的ip,然后再针对SIP进行转换,您看下面思科官方的解释是区分方向的
1111.png



地板 2021-7-21 12:14:08 回复 收起回复
回复 支持 反对

使用道具 举报

发表于 2021-7-21 14:10:38 | 显示全部楼层
1. 你要带上source IP 去 telnet,
5# 2021-7-21 14:10:38 回复 收起回复
回复 支持 反对

使用道具 举报

发表于 2021-7-21 14:11:06 | 显示全部楼层
2. NAT是需要满足条件的,不然NAT转换会发生失败
6# 2021-7-21 14:11:06 回复 收起回复
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-7-21 14:16:02 | 显示全部楼层
zeally 发表于 2021-7-21 14:11
2. NAT是需要满足条件的,不然NAT转换会发生失败

那我请问一下,我不加outside source,只有inside source的理解过程哪里有问题?
7# 2021-7-21 14:16:02 回复 收起回复
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-7-21 14:39:46 | 显示全部楼层
zeally 发表于 2021-7-21 14:11
2. NAT是需要满足条件的,不然NAT转换会发生失败

哈哈哈,发现问题所在了,果然是出口问题,要带源,谢谢高手了!!
8# 2021-7-21 14:39:46 回复 收起回复
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-7-21 14:48:54 | 显示全部楼层
zeally 发表于 2021-7-21 14:11
2. NAT是需要满足条件的,不然NAT转换会发生失败

诶,高手,前面瞎激动了一般,带源也不对,也telnet不通
9# 2021-7-21 14:48:54 回复 收起回复
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-7-23 11:15:05 | 显示全部楼层
zeally 发表于 2021-7-21 14:11
2. NAT是需要满足条件的,不然NAT转换会发生失败

大神,大神,在嘛?指教一下?
10# 2021-7-23 11:15:05 回复 收起回复
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-7-27 11:15:13 | 显示全部楼层
zeally 发表于 2021-7-21 14:11
2. NAT是需要满足条件的,不然NAT转换会发生失败

大神,在不?
13# 2021-7-27 11:15:13 回复 收起回复
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 论坛注册

本版积分规则

QQ|Archiver|手机版|小黑屋|sitemap|鸿鹄论坛 ( 京ICP备14027439号 )  

GMT+8, 2024-3-29 06:05 , Processed in 0.064938 second(s), 10 queries , Redis On.  

  Powered by Discuz!

  © 2001-2024 HH010.COM

快速回复 返回顶部 返回列表