NATC矿池
1. (0t6rca6natc)【k_k】
解方程得: 根据题意得:(2k﹣6)+(4﹣k)=0 解得:k=2 故选B. 【关键
2. NAT的几个概念
内部本地(IL,Inside Local)--分配给内部设备的地址,这些地址不会对外公布。
内部全局(IG,Inside Global)--通过这个地址,外部可以知道内部的设备。
外部全局(OG,Outside Golbal)--分配给外部设备的地址。这些地址不会向内部公布。
外部本地(OL,Outside Local)--通过这个地址,内部可以知道外部设备。
例如一个路由器连接了两个网段相同的网络,比如可能是因为公司之间使用了两个相同的网络的IP地址空间,如都像用了192.168.1.0/24。这样的话,如果跨路由器的话,他们是无法通信的。
因些我们可以这样做 NAT:假设两个相同的网段,为 A 和 B ,A=B。
当A要防问B时,在A的路由器上设置一个外出替换的IP地址,假设为C,C就是本地内部全局地址。
可是A要访问B时,A为认为B和自己是一个网段,不用跨路由通信,就访问不到B了。这时只能这么做:
做一个地址为D,是B地址的映射,这样当A防问B时,只用防问D就可以了。D就是外部全局地址,B就是外部本地地址。
当来自B的数据防问A时,它的步骤是这样:
B防问A的内部全局地址C,包的原地址为B,目标地址为C。到达A网络的边界路由器时,将原地址B转化为D,当目标地址为C转化为A。
当来自A的数据回应时,包的原地址为A ,目标地址为D,在A的边界路由上转化,将原地址A转化为C,目标地址D转化为B。
3. NAT原理简介
nat网络地址转换(NAT,Network Address Translation)属接入广域网(WAN)技术,是一种将私有(保留)地址转化为合法IP地址的转换技术,它被广泛应用于各种类型Internet接入方式和各种类型的网络中。原因很简单,NAT不仅完美地解决了lP地址不足的问题,而且还能够有效地避免来自网络外部的攻击,隐藏并保护网络内部的计算机。编辑本段网络地址转换(NAT)简介 NAT概述 NAT(Network Address Translation,网络地址转换)是将IP 数据报报头中的IP 地址转换为另一个IP 地址的过程。在实际应用中,NAT 主要用于实现私有网络访问公共网络的功能。这种通过使用少量的公有IP 地址代表较多的私有IP 地址的方式,将有助于减缓可用IP 地址空间的枯竭。[1] 说明: 私有 IP 地址是指内部网络或主机的IP 地址,公有IP 地址是指在因特网上全球唯一的IP 地址。 RFC 1918 为私有网络预留出了三个IP 地址块,如下: A 类:10.0.0.0~10.255.255.255 B 类:172.16.0.0~172.31.255.255 C 类:192.168.0.0~192.168.255.255 上述三个范围内的地址不会在因特网上被分配,因此可以不必向ISP 或注册中心申请而在公司或企业内部自由使用。 NAT技术的产生 虽然NAT可以借助于某些代理服务器来实现,但考虑到运算成本和网络性能,很多时候都是在路由器上来实现的。 随着接入Internet的计算机数量的不断猛增,IP地址资源也就愈加显得捉襟见肘。事实上,除了中国教育和科研计算机网(CERNET)外,一般用户几乎申请不到整段的C类IP地址。在其他ISP那里,即使是拥有几百台计算机的大型局域网用户,当他们申请IP地址时,所分配的地址也不过只有几个或十几个IP地址。显然,这样少的IP地址根本无法满足网络用户的需求,于是也就产生了NAT技术。 NAT技术的作用 借助于NAT,私有(保留)地址的"内部"网络通过路由器发送数据包时,私有地址被转换成合法的IP地址,一个局域网只需使用少量IP地址(甚至是1个)即可实现私有地址网络内所有计算机与Internet的通信需求。 NAT将自动修改IP报文的源IP地址和目的IP地址,Ip地址校验则在NAT处理过程中自动完成。有些应用程序将源IP地址嵌入到IP报文的数据部分中,所以还需要同时对报文的数据部分进行修改,以匹配IP头中已经修改过的源IP地址。否则,在报文数据都分别嵌入IP地址的应用程序就不能正常工作。 NAT技术实现方式 NAT的实现方式有三种,即静态转换Static Nat、动态转换Dynamic Nat 和端口多路复用OverLoad。 静态转换是指将内部网络的私有IP地址转换为公有IP地址,IP地址对是一对一的,是一成不变的,某个私有IP地址只转换为某个公有IP地址。借助于静态转换,可以实现外部网络对内部网络中某些特定设备(如服务器)的访问。 动态转换是指将内部网络的私有IP地址转换为公用IP地址时,IP地址是不确定的,是随机的,所有被授权访问上Internet的私有IP地址可随机转换为任何指定的合法IP地址。也就是说,只要指定哪些内部地址可以进行转换,以及用哪些合法地址作为外部地址时,就可以进行动态转换。动态转换可以使用多个合法外部地址集。当ISP提供的合法IP地址略少于网络内部的计算机数量时。可以采用动态转换的方式。 端口多路复用(Port address Translation,PAT)是指改变外出数据包的源端口并进行端口转换,即端口地址转换(PAT,Port Address Translation).采用端口多路复用方式。内部网络的所有主机均可共享一个合法外部IP地址实现对Internet的访问,从而可以最大限度地节约IP地址资源。同时,又可隐藏网络内部的所有主机,有效避免来自internet的攻击。因此,目前网络中应用最多的就是端口多路复用方式。 网络地址转换(NAT)的实现 在配置网络地址转换的过程之前,首先必须搞清楚内部接口和外部接口,以及在哪个外部接口上启用NAT。通常情况下,连接到用户内部网络的接口是NAT内部接口,而连接到外部网络(如Internet)的接口是NAT外部接口。 1).静态地址转换的实现 </B>假设内部局域网使用的lP地址段为192.168.0.1~192.168.0.254,路由器局域网端(即默认网关)的IP地址为192.168.0.1,子网掩码为255.255.255.0。网络分配的合法IP地址范围为61.159.62.128~61.159.62.135,路由器在广域网中的IP地址为61.159.62.129,子网掩码为255.255.255.248可用于转换的IP地址范围为61.159.62.130~61.159.62.134。要求将内部网址192.168.0.2~192.168.0.6分别转换为合法IP地址61.159.62.130~61.159.62.134。 第一步,设置外部端口。 interface serial 0 ip address 61.159.62.129 255.255.255.248 ip nat outside 第二步,设置内部端口。 interface ethernet 0 ip address 192.168.0.1 255.255.255.0 ip nat inside 第三步,在内部本地与外部合法地址之间建立静态地址转换。 ip nat inside source static 内部本地地址内部合法地址。 示例: ip nat inside source static 192.168.0.2 61.159.62.130 //将内部网络地址192.168.0.2转换为合法IP地址61.159.62.130 ip nat inside source static 192.168.0.3 61.159.62.131 //将内部网络地址192.168.0.3转换为合法IP地址61.159.62.131 ip nat inside source static 192.168.0.4 61.159.62.132 //将内部网络地址192.168.0.4转换为合法IP地址61.159.62.132 ip nat inside source static 192.168.0.5 61.159.62.133 //将内部网络地址192.168.0.5转换为合法IP地址61.159.62.133 ip nat inside source static 192.168.0.6 61.159.62.134 //将内部网络地址192.168.0.6转换为合法IP地址61.159.62.134 至此,静态地址转换配置完毕。 2).动态地址转换的实现 假设内部网络使用的IP地址段为172.16.100.1~172.16.100.254,路由器局域网端口(即默认网关)的IP地址为172.16.100.1,子网掩码为255.255.255.0。网络分配的合法IP地址范围为61.159.62.128~61.159.62.191,路由器在广域网中的IP地址为61.159.62.129,子网掩码为255.255.255.192,可用于转换的IP地址范围为61.159.62.130~61.159.62.190。要求将内部网址172.16.100.1~172.16.100.254动态转换为合法IP地址61.159.62.130~61.159.62.190。 第一步,设置外部端口。 设置外部端口命令的语法如下: ip nat outside 示例: interface serial 0 //进入串行端口serial 0 ip address 61.159.62.129 255.255.255.192//将其IP地址指定为61.159.62.129,子网掩码为255.255.255.192 ip nat outside //将串行口serial 0设置为外网端口 注意,可以定义多个外部端口。 第二步,设置内部端口。 设置内部接口命令的语法如下: ip nat inside 示例: interface ethernet 0 //进入以太网端口Ethernet 0 ip address 172.16.100.1 255.255.255.0 // 将其IP地址指定为172.16.100.1,子网掩码为255.255.255.0 ip nat inside //将Ethernet 0 设置为内网端口。 注意,可以定义多个内部端口。 第三步,定义合法IP地址池。 定义合法IP地址池命令的语法如下: ip nat pool 地址池名称起始IP地址 终止IP地址子网掩码 其中,地址池名字可以任意设定。 示例: ip nat pool chinanet 61.159.62.130 61.159.62.190 netmask 255.255.255.192 //指明地址缓冲池的名称为chinanet,IP地址范围为61.159.62.130~61.159.62.190,子网掩码为255.255.255.192。需要注意的是,即使掩码为255.255.255.0,也会由起始IP地址和终止IP地址对IP地址池进行限制。 或ip nat pool test 61.159.62.130 61.159.62.190 prefix-length 26 注意,如果有多个合法IP地址范围,可以分别添加。例如,如果还有一段合法IP地址范围为"211.82.216.1~211.82.216.254",那么,可以再通过下述命令将其添加至缓冲池中。 ip nat pool cernet 211.82.216.1 211.82.216.254 netmask 255.255.255.0 或 ip nat pool test 211.82.216.1 211.82.216.254 prefix-length 24 第四步,定义内部网络中允许访问Internet的访问列表。 定义内部访问列表命令的语法如下: access-list 标号 permit 源地址通配符(其中,标号为1~99之间的整数) access-list 1 permit 172.16.100.0 0.0.0.255 //允许访问Internet的网段为172.16.100.0~172.16.100.255,反掩码为0.0.0.255。需要注意的是,在这里采用的是反掩码,而非子网掩码。反掩码与子网掩码的关系为:反掩码+子网掩码=255.255.255.255。例如,子网掩码为255.255.0.0,则反掩码为0.0.255.255;子网掩码为255.0.0.0,则反掩码为0.255.255.255;子网掩码为255.252.0.0,则反掩码为0.3.255.255;子网掩码为255.255.255.192,则反掩码为0.0.0.63。 另外,如果想将多个IP地址段转换为合法IP地址,可以添加多个访问列表。例如,当欲将172.16.98.0~172.16.98.255和172.16.99.0~172.16.99.255转换为合法IP地址时,应当添加下述命令: access-list2 permit 172.16.98.0 0.0.0.255 access-list3 permit 172.16.99.0 0.0.0.255 第五步,实现网络地址转换。 在全局设置模式下,将第四步由access-list指定的内部本地地址列表与第三步指定的合法IP地址池进行地址转换。命令语法如下: ip nat inside source list 访问列表标号 pool 内部合法地址池名字 示例: ip nat inside source list 1 pool chinanet 如果有多个内部访问列表,可以一一添加,以实现网络地址转换,如 ip nat inside source list 2 pool chinanet ip nat inside source list 3 pool chinanet 如果有多个地址池,也可以一一添加,以增加合法地址池范围,如 ip nat inside source list 1 pool cernet ip nat inside source list 2 pool cernet ip nat inside source list 3 pool cernet 至此,动态地址转换设置完毕。 3).端口复用动态地址转换(PAT) </B>内部网络使用的IP地址段为10.100.100.1~10.100.100.254,路由器局域网端口(即默认网关)的IP地址为10.100.100.1,子网掩码为255.255.255.0。网络分配的合法IP地址范围为202.99.160.0~202.99.160.3,路由器广域网中的IP地址为202.99.160.1,子网掩码为255.255.255.252,可用于转换的IP地址为202.99.160.2。要求将内部网址10.100.100.1~10.100.100.254 转换为合法IP地址202.99.160.2。 第一步,设置外部端口。 interface serial 0 ip address 202.99.160.1 255.255.255.252 ip nat outside 第二步,设置内部端口。 interface ethernet 0 ip address 10.100.100.1 255.255.255.0 ip nat inside 第三步,定义合法IP地址池。 ip nat pool onlyone 202.99.160.2 202.99.160.2 netmask 255.255.255.252 // 指明地址缓冲池的名称为onlyone,IP地址范围为202.99.160.2,子网掩码为255.255.255.252。由于本例只有一个IP地址可用,所以,起始IP地址与终止IP地址均为202.99.160.2。如果有多个IP地址,则应当分别键入起止的IP地址。 第四步,定义内部访问列。 access-list 1 permit 10.100.100.0 0.0.0.255 允许访问Internetr的网段为10.100.100.0~10.100.100.255,子网掩码为255.255.255.0。需要注意的是,在这里子网掩码的顺序跟平常所写的顺序相反,即0.0.0.255。 第五步</B>,设置复用动态地址转换。 在全局设置模式下,设置在内部的本地地址与内部合法IP地址间建立复用动态地址转换。命令语法如下: ip nat inside source list访问列表号pool内部合法地址池名字overload 示例: ip nat inside source list1 pool onlyone overload //以端口复用方式,将访问列表1中的私有IP地址转换为onlyone IP地址池中定义的合法IP地址。 注意:overload是复用动态地址转换的关键词。 至此,端口复用动态地址转换完成。 还可以这样写: ip nat inside source list 1 interface serial 0 overload
4. 什么是NAT以及NAT的工作原理
原理:
a,内部地址翻译(Translation inside local addresses):
这是比较通用的一种方法,将内部IP一对一的翻译成外部地址。
在内部主机连接到外部网络时,当第一个数据包到达NAT路由器时,router检查它的NAT表,因为是NAT是静态配置的,故可以查询出来(simply entry),然后router将数据包的内部局部IP(源地址)更换成内部全局地址,再转发出去。外部主机接受到数据包用接受到的内部全局地址来响应,NAT接受到外部回来的数据包,再根据NAT表把地址翻译成内部局部IP,转发过去。
b,内部全局地址复用(overloading inside glogal addresses)
使用地址和端口pair将多个内部地址影射到比较少的外部地址。这也是所谓的PAT。和内部地址翻译一样,NAT router同样也负责查表和翻译内部IP地址,唯一的区别就是由于使用了overloading,router将复用同样的内部全局IP地址,并存储足够的信息以区分它和其他地址,这样查询出来的是extended entry。NAT router和外部主机的通讯采用翻译过的内部全局地址,故同一般的通信没有差别,router到内部主机通讯时,同样要查NAT表。
c,TCP负载重分配(TCP load distributing)和以上两种操作不同,这是NAT由外到内的翻译,所以那种以为WEB server一定要放置到
NAT外部的说法是错误的。
工作原理:外部主机向虚拟主机(定义为内部全局地址)通讯,NAT router接受外部主机的请求并依据NAT表建立与内部主机的连接,把内部全局地址(目的地址)翻译成内部局部地址,并转发数据包到内部主机,内部主机接受包并作出响应。NAT router再使用内部局部地址和端口查询数据表,根据查询到的外部地址和端口做出响应。
此时,如果同一主机再做第二个连接,NAT router将根据NAT表将建立与另一虚拟主机的连接,并转发数据。
d,处理重叠网络。
这种方法主要用于两个intranet的互连,同样给我们处理两个重叠网络提供了方法。它的实现要求DNS server的支持(用于区别两个不同的主机)。
1,主机A要求向主机C建立连接,先象DNS server做地址查询。
2,NAT router截获DNS的响应,如果地址有重叠,将翻译返回的地址。它将创建一个simply entry把重叠的外部全局地址(目的地址)翻译成外部局部地址。
3,路由器转发DNS响应到主机A,它已经把主机C的地址(外部全局地址)翻译成外部局部地址。
4,当路由器接受到主机C的数据包时,它将建立内部局部、全局,外部全局、局部地址间的转换,主机A将由内部局部地址(源地址)翻译成内部全局地址,主机C将由外部全局地址(目的地址)翻译成外部局部地址。
5,主机C接受数据包并继续通讯。
5. 什么是NATNAT有哪些类型
网络地址转换(NAT,Network Address Translation)属接入广域网(WAN)技术,是一种将私有(保留)地址转化为合法IP地址的转换技术,它被广泛应用于各种类型Internet接入方式和各种类型的网络中。原因很简单,NAT不仅完美地解决了lP地址不足的问题,而且还能够有效地避免来自网络外部的攻击,隐藏并保护网络内部的计算机虽然NAT可以借助于某些代理服务器来实现,但考虑到运算成本和网络性能,很多时候都是在路由器上来实现的。
随着接入Internet的计算机数量的不断猛增,IP地址资源也就愈加显得捉襟见肘。事实上,除了中国教育和科研计算机网(CERNET)外,一般用户几乎申请不到整段的C类IP地址。在其他ISP那里,即使是拥有几百台计算机的大型局域网用户,当他们申请IP地址时,所分配的地址也不过只有几个或十几个IP地址。显然,这样少的IP地址根本无法满足网络用户的需求,于是也就产生了NAT技术。
以前上网主要分为代理和NAT(网络地址转化)两种模式,目前则主要采用NAT上网。NAT有三种类型:静态NAT(staticNAT)、NAT池(pooledNAT)和端口NAT(PAT)。
1、静态NAT:设置起来最为简单,内部网络中的每个主机都被永久映射成 外部网络中的某个合法的地址。多用于服务器。
2、NAT池:在外部网络中定义了一系列的合法地址,采用动态分配的方法映射到内部网络。多用于网络中的工作站。
3、PAT则是把内部地址映射到外部网络的一个IP地址的不同端口上。
6. 简述NAT的工作原理
原理:
a,内部地址翻译(Translation inside local addresses):
这是比较通用的一种方法,将内部IP一对一的翻译成外部地址。
在内部主机连接到外部网络时,当第一个数据包到达NAT路由器时,router检查它的NAT表,因为是NAT是静态配置的,故可以查询出来(simply entry),然后router将数据包的内部局部IP(源地址)更换成内部全局地址,再转发出去。外部主机接受到数据包用接受到的内部全局地址来响应,NAT接受到外部回来的数据包,再根据NAT表把地址翻译成内部局部IP,转发过去。
b,内部全局地址复用(overloading inside glogal addresses)
使用地址和端口pair将多个内部地址影射到比较少的外部地址。这也是所谓的PAT。和内部地址翻译一样,NAT router同样也负责查表和翻译内部IP地址,唯一的区别就是由于使用了overloading,router将复用同样的内部全局IP地址,并存储足够的信息以区分它和其他地址,这样查询出来的是extended entry。NAT router和外部主机的通讯采用翻译过的内部全局地址,故同一般的通信没有差别,router到内部主机通讯时,同样要查NAT表。
c,TCP负载重分配(TCP load distributing)和以上两种操作不同,这是NAT由外到内的翻译,所以那种以为WEB server一定要放置到
NAT外部的说法是错误的。
工作原理:外部主机向虚拟主机(定义为内部全局地址)通讯,NAT router接受外部主机的请求并依据NAT表建立与内部主机的连接,把内部全局地址(目的地址)翻译成内部局部地址,并转发数据包到内部主机,内部主机接受包并作出响应。NAT router再使用内部局部地址和端口查询数据表,根据查询到的外部地址和端口做出响应。
此时,如果同一主机再做第二个连接,NAT router将根据NAT表将建立与另一虚拟主机的连接,并转发数据。
d,处理重叠网络。
这种方法主要用于两个intranet的互连,同样给我们处理两个重叠网络提供了方法。它的实现要求DNS server的支持(用于区别两个不同的主机)。
1,主机A要求向主机C建立连接,先象DNS server做地址查询。
2,NAT router截获DNS的响应,如果地址有重叠,将翻译返回的地址。它将创建一个simply entry把重叠的外部全局地址(目的地址)翻译成外部局部地址。
3,路由器转发DNS响应到主机A,它已经把主机C的地址(外部全局地址)翻译成外部局部地址。
4,当路由器接受到主机C的数据包时,它将建立内部局部、全局,外部全局、局部地址间的转换,主机A将由内部局部地址(源地址)翻译成内部全局地址,主机C将由外部全局地址(目的地址)翻译成外部局部地址。
5,主机C接受数据包并继续通讯。
7. NAT的主要功能是什么
随着接入Internet的计算机数量的不断猛增,IP地址资源也就愈加显得捉襟见肘。事实上,除了中国教育和科研计算机网(CERNET)外,一般用户几乎申请不到整段的C类IP地址。在其他ISP那里,即使是拥有几百台计算机的大型局域网用户,当他们申请IP地址时,所分配的地址也不过只有几个或十几个IP地址。显然,这样少的IP地址根本无法满足网络用户的需求,于是也就产生了NAT技术。
NAT英文全称是“Network Address Translation”,中文意思是“网络地址转换”, 它是一种把内部私有网络地址(IP地址)翻译成合法网络IP地址的技术。如图
NAT就是在局域网内部网络中使用内部地址,而当内部节点要与外部网络进行通讯时,就在网关处,将内部地址替换成公用地址,从而在外部公网(internet)上正常使用,NAT屏蔽了内部网络,所有内部网计算机对于公共网络来说是不可见的.
NAT的实现方式有三种,即静态转换(Static Nat)、动态转换(Dynamic Nat) 和端口多路复用(OverLoad)
静态转换是指将内部网络的私有IP地址转换为公有IP地址,IP地址对是一对一的,是一成不变的,某个私有IP地址只转换为某个公有IP地址。借助于静态转换,可以实现外部网络对内部网络中某些特定设备(如服务器)的访问。
动态转换是指将内部网络的私有IP地址转换为公用IP地址时,IP地址是不确定的,是随机的,所有被授权访问上Internet的私有IP地址可随机转换为任何指定的合法IP地址。也就是说,只要指定哪些内部地址可以进行转换,以及用哪些合法地址作为外部地址时,就可以进行动态转换。动态转换可以使用多个合法外部地址集。当ISP提供的合法IP地址略少于网络内部的计算机数量时。可以采用动态转换的方式。
端口多路复用(Port address Translation,PAT)是指改变外出数据包的源端口并进行端口转换,即端口地址转换(PAT,Port Address Translation).采用端口多路复用方式。内部网络的所有主机均可共享一个合法外部IP地址实现对Internet的访问,从而可以最大限度地节约IP地址资源。同时,又可隐藏网络内部的所有主机,有效避免来自internet的攻击。因此,目前网络中应用最多的就是端口多路复用方式。
8. nat转换的类型及常用的类型!!!
NAT可以分为很多种,但是最为普遍的是传统NAT,或者称为向外NAT。向外NAT在默认情况下只允许向外的Session穿越NAT,这就是我们最为常见的情况。
这种向外NAT又可以分为基本NAT(Basic NAT)和NAPT(Network Address/Port Translation)。
1. 基本NAT
基本NAT只转换IP地址,而不转换端口。一个基本NAT往往需要具有多个公网IP来满足多个内网节点中具有相同端口的应用程序的同时访问。由于这种类型的NAT设备限制大,现在已不常见。
2. NAPT
(注:Endpoint表示一个IP地址和端口对)
与基本NAT只转换IP地址不同,NAPT转换整个Endpoint。由于NAPT允许内网内的多个节点通过共享的方式使用同一个IP地址,因此,如今NAPT类型的NAT设备已经越来越多。
NAPT又可以进一步分为以下四种类型: (1) 完全锥型NAT(FULL CONE NAT)
完全锥型NAT在内网用户A(Private Endpoint)首次向外部主机发送数据包时创建地址映射会话,并为A分配一个公网地址和端口(Public Endpoint),以后任何A向外部发送的数据都将使用这个Public Endpoint。此后,任何外部主机想要与A通信,只要将数据包发送到Public Endpoint上,A就能够顺利的进行接收。
(2) 限制锥型NAT (RESTRICT CONE NAT)
限制锥型NAT在内网用户A(Private Endpoint)首次向外部主机发送数据包时创建地址映射会话,并为A分配一个公网地址和端口(Public Endpoint),以后任何A向外部发送的数据包都将使用这个Public Endpoint。此后,如果某个外部主机(Endpoint IP:PORT)想要与A通信,只要将数据包发送到Public Endpoint并且保证A曾用当前与NAT的会话向该外部主机的IP地址发送过数据,A就能够正常收到外部主机(Endpoint IP:PORT)发送来的数据包。
(3) 端口限制锥型NAT(PORT RESTRICT CONE NAT)
端口限制锥型在内网用户A(Private Endpoint)首次向外部主机发送数据包时创建地址映射会话,并为A分配一个公网地址和端口(Public Endpoint),以后任何A向外部发送的数据都将使用这个Public Endpoint。此后,如果某个外部主机(Endpoint IP:PORT)想要与A通信,只要将数据包发送到Public Endpoint并且保证A曾用当前与NAT的会话向该外部主机的Endpoint发送过数据,A就能够正常收到外部主机(Endpoint IP:PORT)发送来的数据包。
(4) 对称型NAT(SYMMETRIC NAT)
对称型NAT是一种比较特殊的NAT。内网用户A(Private Endpoint)首次向外部主机S1发送数据包时创建地址映射会话Session1,并为A分配一个公网地址和端口(Public Endpoint1),以后A所有发向S1的数据包都使用这个Public Endpoint1。如果之后A用同一个Socket向外部主机S2发送数据包,这时对称型NAT又为其分配一个地址映射会话,并为A分配一个新的公网地址和端口对(Public Endpoint2),以后A所有发向S2的数据包都使用这个Public Endpoint2。对称型NAT规定Public Endpoint1和Public Endpoint2一定不相同。此外,如果任何外部主机想要发送数据给A,那么它首先应该收到A发给他的数据,然后才能往回发送,否则即使他知道内网主机的Public Endpoint也不能发送数据给A。这种NAT可以通过端口猜测等方法进行穿透,但是效果并不是很好,很难实现UDP-P2P通信。
参考资料:http://wenku..com/link?url=0mMdF_wpljAf_I8EaxowntJ8Se2eh5c_aMjBi
9. NAT是做什么的
随着接入Internet的计算机数量的不断猛增,IP地址资源也就愈加显得捉襟见肘。事实上,除了中国教育和科研计算机网(CERNET)外,一般用户几乎申请不到整段的C类IP地址。在其他ISP那里,即使是拥有几百台计算机的大型局域网用户,当他们申请IP地址时,所分配的地址也不过只有几个或十几个IP地址。显然,这样少的IP地址根本无法满足网络用户的需求,于是也就产生了NAT技术。
NAT英文全称是“Network Address Translation”,中文意思是“网络地址转换”, 它是一种把内部私有网络地址(IP地址)翻译成合法网络IP地址的技术。如图
NAT就是在局域网内部网络中使用内部地址,而当内部节点要与外部网络进行通讯时,就在网关处,将内部地址替换成公用地址,从而在外部公网(internet)上正常使用,NAT屏蔽了内部网络,所有内部网计算机对于公共网络来说是不可见的.
NAT的实现方式有三种,即静态转换(Static Nat)、动态转换(Dynamic Nat) 和端口多路复用(OverLoad)