设为首页收藏本站language 语言切换
查看: 2716|回复: 12
收起左侧

[求助] 求助!内网地址在ping公网地址时的流程

[复制链接]
发表于 2015-12-9 11:42:27 | 显示全部楼层 |阅读模式
3鸿鹄币
如图所示,PC1或PC2是标准的内网C段IP地址。如果PC1 ping处于公网上的一台服务器的IP地址时,那分组在经过内网的两台路由器时,路由器内的路由表并没有公网的路由条目,请问这个时候路由器不是应该把分组丢弃吗?为何能把分组发到边界路由并由边界路由转发给公网服务器呢?

QQ截图20151209113824.jpg

最佳答案

查看完整内容

这个就涉及到NAT地址转换了。如果边界路由器没有配置NAT,则路由器直接丢包,因为路由器没有公网的路由条目,如果边界路由器配置了NAT,当边界路由器收到一个访问公网的包时,会将数据包的源IP地址(私网的地址),转换为公网的地址,发到公网路由,直到公网服务器。服务器响应也是一样,到达边界路由器的时候,公网地址会转换为私网的地址,然后由边界路由器发往内网的PC。 假设PC1 地址为192.168.1.2 访问公网服务器200.1.1.100 ...
发表于 2015-12-9 11:42:28 | 显示全部楼层
这个就涉及到NAT地址转换了。如果边界路由器没有配置NAT,则路由器直接丢包,因为路由器没有公网的路由条目,如果边界路由器配置了NAT,当边界路由器收到一个访问公网的包时,会将数据包的源IP地址(私网的地址),转换为公网的地址,发到公网路由,直到公网服务器。服务器响应也是一样,到达边界路由器的时候,公网地址会转换为私网的地址,然后由边界路由器发往内网的PC。
假设PC1 地址为192.168.1.2 访问公网服务器200.1.1.100.边界路由器配置NAT后
当边界路由器收到该数据包后,会将源地址192.168.1.2转换为200.1.1.10,发到公网上路由,访问到服务器
服务器响应也是一样,回包时,源IP地址为200.1.1.100,目的IP地址为200.1.1.10.当边界路由器收到服务器回包时,会将200.1.1.10转换为192.168.1.2,然后发送到内网。
边界路由器对包的处理基本的过程就是这样
——————————————————————
地址转换有:NAT和PAT(有静态NAT,动态NAT和静态PAT和动态PAT)
具体配置哪个,根据实际需求来配置、
沙发 2015-12-9 11:42:28 回复 收起回复
回复

使用道具 举报

发表于 2015-12-9 13:03:47 | 显示全部楼层
私网地址转换为公网地址(具体转换为哪个公网地址,是由你自己配置的)
板凳 2015-12-9 13:03:47 回复 收起回复
回复

使用道具 举报

发表于 2015-12-9 13:23:24 | 显示全部楼层
首先  内网的路由器可以互相通信 在此基础上需要建立 默认路由 来把外网的ip地址匹配住  通过默认路由传到边界路由器做NAT  将内网地址转换成外网地址  外网回数据包到边界路由器再由NAT转换成内网的ip地址 这里会有源ip地址和目的ip地址   此时的源ip是公网地址 目的ip地址是边界路由器的公网地址   边界路由器收到这个数据包之后会用nat把自己的公网地址转换成相应的内网地址 通过内网的路由协议传递到目的路由器
地板 2015-12-9 13:23:24 回复 收起回复
回复

使用道具 举报

发表于 2015-12-9 13:29:51 | 显示全部楼层
NAT啊 !!建议认真学CCNA.  
5# 2015-12-9 13:29:51 回复 收起回复
回复

使用道具 举报

 楼主| 发表于 2015-12-9 13:49:38 | 显示全部楼层
H_Allen 发表于 2015-12-9 12:59
这个就涉及到NAT地址转换了。如果边界路由器没有配置NAT,则路由器直接丢包,因为路由器没有公网的路由条目 ...

内网的两台路由器首先要具备动态或静态路由协议能够互通,然后还要有默认路由对吧,因为只有这样,才能把目的IP地址为公网地址的分组发到边界路由器上。
如果没有默认路由,内网的两台路由查看目的ip地址不是路由表中存在的条目就会把分组丢弃对吧?
6# 2015-12-9 13:49:38 回复 收起回复
回复

使用道具 举报

 楼主| 发表于 2015-12-9 13:49:46 | 显示全部楼层
79455 发表于 2015-12-9 13:23
首先  内网的路由器可以互相通信 在此基础上需要建立 默认路由 来把外网的ip地址匹配住  通过默认路由传到 ...

内网的两台路由器首先要具备动态或静态路由协议能够互通,然后还要有默认路由对吧,因为只有这样,才能把目的IP地址为公网地址的分组发到边界路由器上。
如果没有默认路由,内网的两台路由查看目的ip地址不是路由表中存在的条目就会把分组丢弃对吧?
7# 2015-12-9 13:49:46 回复 收起回复
回复

使用道具 举报

发表于 2015-12-9 13:55:43 | 显示全部楼层
小麦0412 发表于 2015-12-9 13:49
内网的两台路由器首先要具备动态或静态路由协议能够互通,然后还要有默认路由对吧,因为只有这样,才能把 ...

肯定需要再配置一条默认路由指向外网的
8# 2015-12-9 13:55:43 回复 收起回复
回复

使用道具 举报

发表于 2015-12-9 13:59:23 | 显示全部楼层
小麦0412 发表于 2015-12-9 13:49
内网的两台路由器首先要具备动态或静态路由协议能够互通,然后还要有默认路由对吧,因为只有这样,才能把 ...

内网互通也是必须的,不然还没到边界路由器就已经丢包了。我看你问的主要是边界路由器私网地址和公网地址的一个转换问题,所以只讲了边界路由器的NAT地址转换。我觉得内网互通,这个你应该懂的吧。
9# 2015-12-9 13:59:23 回复 收起回复
回复

使用道具 举报

 楼主| 发表于 2015-12-9 22:22:48 | 显示全部楼层
H_Allen 发表于 2015-12-9 13:59
内网互通也是必须的,不然还没到边界路由器就已经丢包了。我看你问的主要是边界路由器私网地址和公网地址 ...

这个懂,其实我主要是想知道帧在从PC1到公网服务器之间的MAC和IP封装变化
10# 2015-12-9 22:22:48 回复 收起回复
回复

使用道具 举报

发表于 2015-12-11 12:03:56 | 显示全部楼层
小麦0412 发表于 2015-12-9 22:22
这个懂,其实我主要是想知道帧在从PC1到公网服务器之间的MAC和IP封装变化

数据包在内网传输时的封装和解封装变化你懂不?懂的话内网和外网包的封装和解封装都是一样的,只是到边界路由器时,私网地址转换为公网地址而已,然后包在公网传输时的封装和解封装也是一样的。最后看你访问什么服务,还要看你访问的目的端口号。
11# 2015-12-11 12:03:56 回复 收起回复
回复

使用道具 举报

发表于 2015-12-13 15:50:14 | 显示全部楼层
小麦0412 发表于 2015-12-9 13:49
内网的两台路由器首先要具备动态或静态路由协议能够互通,然后还要有默认路由对吧,因为只有这样,才能把 ...

没错
12# 2015-12-13 15:50:14 回复 收起回复
回复

使用道具 举报

发表于 2015-12-13 15:53:34 | 显示全部楼层
小麦0412 发表于 2015-12-9 13:49
内网的两台路由器首先要具备动态或静态路由协议能够互通,然后还要有默认路由对吧,因为只有这样,才能把 ...

实际应用中 内网的边界路由器都会有一条默认路由指向isp   因为你不可能让isp特意为你写一条路由
13# 2015-12-13 15:53:34 回复 收起回复
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-2-9 01:41 , Processed in 0.096590 second(s), 16 queries , Redis On.  

  Powered by Discuz!

  © 2001-2025 HH010.COM

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