局域网与外网通信原理

from:http://wenku.baidu.com/view/5a01ec6baf1ffc4ffe47ac3f.html

个人心得:

局域网域外网通信,简单而言即通过端口映射来实现的,一台主机的数据包可以被映射到外网IP的不同端口,不同时段下,外网IP的同一端口也可能被多态主机使用

说起局域网与外网通信原理,就不得不提起在学校里学到的NAT技术,NAT技术是在子网内部使用局部地址,而在子网外部使用少量的全局地址,通过路由器进行内部和外部地址的转换。局部地址是在子网内部独立编址的,可以与外部地址重叠。这种想法的基础是假定在任何时候子网中只有少数计算机与外部通信,也就说同时与外网通信的主机数量必须不大于自己的外网地址个数。NAT技术大家都有所了解,在此不再赘述,不过问题又出来了,如果我有三台电脑需要同时与外网通信,而自己的外网地址只用两个,甚至一个,譬如现在中小企业联网常使用的PPPoE,这样的话NAT技术就不能满足自己的需求了,如果在申请外网IP地址的话,那可是一笔不小的花销,于是就有了NAPT技术。        NAPT(Network Address Port Translation)即网络地址和端口翻译,,由于它是采用一个路由器的IP地址把子网中所有主机的IP地址都隐藏起来,采用端口号来辨别各个内网主机,所有又叫做伪装(masquerading)。在许多NAPT实现中专门保留一部分端口号给伪装使用,叫做伪装端口。这种方法的特点如下:       1、出口分组的源地址被路由器的外部IP地址所代替,出口分组的源端口号被一个未使用的伪装端口号所代替;         2.、如果进来的分组的目标地址是本地路由器的IP地址,而目标端口号是路由器的伪装的端口号,则NAT路由器就检查给分组是否为当前的一个伪装会话,并试图通过伪装对IP地址和端口号进行翻译。         下面给出一个实例,NAPT的基础过程与NAT类似,所不同的是:NAPT中内部端口与内部地址都进行了转换,而NAT仅仅只对内部地址进行转换。




在图中,4个带有内部地址的数据包到达HiPER,其中数据包1和2来自同一个内部地址但有不同的源端口号,数据包3和4来自不同的内部地址但具有相同的端口号。通过NAPT,4个数据包都被转换到同一个外部地址,但每个数据包都赋予了不同的源端口号,因此区分了这4个数据包,当回复数据包到达时,NAPT就能根据回复数据包的目标地址和端口来区分该数据包应转发到的内部主机。      在Internet中使用NAPT时,所有不同的TCP和UDP信息流看起来好像来源于同一个IP地址。这种方式常用于拨号上网,通过从ISP处申请的一个IP地址,将多个连接通过NAPT接入Internet。在实际使用中可以把NAPT和基本NAT结合起来,即将一组外部地址和端口转换结合起来。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值