我*近终于搞清楚路由器的作用了,原来路由器是用来连接两层网络的。我发现给某个远程服务器发包时,途中经过n个路由器,也就是说途中要经过n-1层网络,每穿越一层网络,ip包的地址都要改写一次,这样怪不得网络延时会很高了。要是ipv6普及后,我们是不是可以不需要这么多层网络,所有的网络设备都在一层网络上,这样数据包就不需要穿越n层网络了,这样就节省了ip包地址改写的时间,那时候网络的延时就会下降到很可观,对不对?真是好憧憬呀!大家积*畅想呀!
网络 路由器 IP12 条回复 • 1970-01-01 08:00:00 +08:00
Zhang 1
Zhang 2012-06-18 14:59:27 +08:00
个人感觉多层网络简直就是灾难呀?这种网络根本不是平的!
lululau 2
lululau 2012-06-18 15:01:22 +08:00
路由器主要功能是还路由吧。。。。
dndx 3
dndx 2012-06-18 15:11:43 +08:00
LZ你的理解是不正确的,如果你没有公网IP,边界路由器需要做SNAT才能保证你的数据包能正确回传。一旦数据包的IP被改写为公网IP后,在互联网的传输过程中,中继路由器不会再改动你的源IP而只负责接力传输。如果真的像你说的那样,那么互联网就根本不可能实现,因为同时传输的数据量大到无法估计,如果每一跳都做SNAT,那么没有任何一个路由器能存储这么多的链接信息。
iyten 4
iyten 2012-06-18 15:24:22 +08:00
我就觉得奇怪。难道说ttl没减1那么ip就被改动一次?这个是不可能的。在公网上传输ip 要nat的估计就是isp的安全措施了。比如说电信骨干网上不可能大量出现铁通的ip,如果有那就说明有问题了,那么这时候就会nat,还有企业内部出去的话也是要做nat的。欢迎下面继续喷。
013231 5
013231 2012-06-18 15:25:56 +08:00
樓主的理解是完全錯誤的.
1. IP報文的源IP和目標IP在傳輸時通常不會變化(也有例外, 比如NAT).
2. 路由節點間不是”分層”關係.
3. IPv6對減少路由節點的數量沒有明顯幫助.
clowwindy 6
clowwindy 2012-06-18 15:39:27 +08:00
楼主的理解适用于长城宽带和宽带通 XD
blank_dlh 7
blank_dlh 2012-06-18 15:56:00 +08:00
不是每层都NAT的亲。。
局域网和公网(相对来说)连接处的路由做NAT,公网上的路由节点只是做转发用的。
ichigo 8
ichigo 2012-06-18 16:28:32 +08:00
其实你还是没明白路由功能..
Zhang 9
Zhang 2012-06-18 17:42:45 +08:00
@ichigo 你明白吗?
Zhang 10
Zhang 2012-06-18 17:49:42 +08:00
每经过一次NAT,应该说目的地ip不会变,而来源地ip会变的
billryan 11
billryan 2012-06-18 18:21:03 +08:00
IPV6的出现主要是为了解决IPV4地址不够的问题,NAT正是由于IPV4地址不够才出现的临时性解决方案,但是NAT违背了网络设计的初衷(分层结构设计)。IPV6普及后NAT后慢慢消失,确实节约了地址映射的那部分时间,但这与路由器没有直接的关系,路由器主要的功能是根据目的地址进行路由选路(是工作在第三层(网络层)的网络设备)。NAT只适用于那些无法分配到足够公网IP地址的场合,而且这是由一个叫做「NAT盒」来干的事,与路由器没半毛钱关系… 建议楼主看看潘爱民翻译的《计算机网络》补一补网络方面的知识
dndx 12
dndx 2012-06-18 18:32:24 +08:00
@Zhang 正如 @billryan 所说,SNAT是为了解决IP地址不足的问题,比如你有一个IP地址192.168.1.2,你要请求8.8.8.8一些信息,如果没有路由器帮你做SNAT,你的数据包【有可能】被8.8.8.8收到,【但是】8.8.8.8不知道怎么将包回复给192.168.1.2,这种目标地址是私有地址的数据包在Internet上是无意义的,会直接被BGP路由器丢弃。

同 @ichigo ,建议LZ补一补基础知识…