打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
电脑网络知识:内外网实现原理,网络地址协转换(NAT)的学习

一. NAT简介

二. NAT转换表 1. 使用一个IP地址 2. 使用IP地址池 3. 同时使用IP地址和端口号三. NAT的地址转换方式 1. 静态地址转换 2. 动态地址转换

二. NAT转换表 NAT使用一个转换表来记录内部专用地址和外部地址之间的映射。1. 使用一个IP地址 最简单的形式是一个转换表只有两列;专用地址和外部地址。当这个路由器对出数据包的源地址进行转换时,它也记下来目的地址。当响应从这个目的地址返回时,路由器就使用这个数据包的源地址(作为外部地址)来找出这个数据包的专用地址。这里描述的NAT机制要求通信是由专用网发起的。下图给出了使用一个IP地址的情况。

图12-1 使用一个IP地址的NAT转换表

2. 使用IP地址池 使用一个IP地址的NAT,只允许一个专用网主机连接一个外部主机。要去掉这个限制,NAT路由器可以使用全球地址池。例如,不是仅使用一个全球地址(200.24.5.8),NAT路由器可以使用4个地址(100.24.5.8、100.24.5.9、100.24.5.10、100.24.5.11)。在这种情况下,4个专用网主机可同时接入到同一个外部主机,因为每一对地址定义一条连接。但是,这种方法仍然有一些缺点。到同一个目的地址的连接不能超过4条。没有一个专用网主机可以同时访问两个外部服务器程序。同样地,两个专用网主机也不能同时访问同一个外部服务器程序。3. 同时使用IP地址和端口号 要允许在专用网主机和外部服务器程序之间有多对多的关系,就需要在转换表中有更多的信息。例如,假定在专用网内有两个主机,地址为172.18.3.1和172.18.3.2,它们需要访问主机25.8.3.2上的HTTP服务器。如果转换表有5列而不是两列,即包括源端口号和目的端口号,以及传输层协议,那么这种二义性就消失了。下表给出了转换表的例子。

表12-1 同时使用IP地址和端口号

当从HTTP返回响应时,源地址(25.8.3.2)和目的端口号(1400)的组合定义了这个响应应当指向专用网主机。要使这样的转换能够正常的工作,临时端口号必须是惟一的。三. NAT的地址转换方式(动画演示) 1. 静态地址转换 所谓静态地址转换是指专用地址和外部网络地址之间是静态一一映射的。这种转换通常用在内部网上的主机需要对外提供服务(如Web、E-mail服务等)的情况下。2. 动态地址转换 在动态地址转换的方式下,一组专用地址与一个外部网络地址池之间建立起一种动态的一一映射关系。这种地址转换形式下,内部主机可以访问外部网络,外部主机也能对内部网络进行访问,但必须是在内网专用IP地址与外部网络地址之间存在映射关系时才能成功,并且这种映射关系是动态的。

静态地址转换

各主机打开工具区的'拓扑验证工具',选择相应的网络结构,配置网卡后,进行拓扑验证,如果通过拓扑验证,关闭工具继续进行实验,如果没有通过,请检查网络连接。 本练习将主机A、B、C、D、E、F作为一组进行实验。 本练习中主机B作为NAT服务器(主机B的b1接口连接到Internet,b2接口连接到内部局域网),主机A、C、D作为Internet上的主机,主机E、F作为内部服务器。1. 主机E启动实验平台工具栏中的'UDP工具',作为UDP服务器端来监听2828端口。 主机F启动实验平台工具栏中的'UDP工具',作为UDP服务器端来监听2929端口。2. 为主机B启动静态NAT服务,配置方法如下: (1)在主机B上启动NAT服务('nat_config'); (2)主机B在命令行下使用'nat_config 'b1' full'命令将172.16.1.1接口设置为'公用接口连接到Internet'。 (3)主机B在命令行下使用'nat_config 'b2' private'命令将172.16.0.1接口设置为'专用接口连接到专用网络'。 (4)主机B在命令行下使用'nat_config 'b1' addrpool 172.16.1.1 172.16.1.1 255.255.255.0'命令将地址池设置为从172.16.1.1到172.16.1.1(一个地址)。 (5)主机B在命令行下使用'nat_config 'b1' portmap udp 172.16.1.1 6000 172.16.0.2 2828'命令选择映射UDP协议,并添加一个新映射(从172.16.1.1:6000到172.16.0.2:2828)。 (6)主机B在命令行下使用'nat_config 'b1' portmap udp 172.16.1.1 6001 172.16.0.3 2929'命令选择映射UDP协议,并添加一个新映射(从172.16.1.1:6001到172.16.0.3:2929)。3. 主机A、B、C、F启动协议分析器开始捕获数据并设置过滤条件(提取UDP协议)。4. 主机A启动'实验平台工具栏中的UDP工具'并向主机B(172.16.1.1)的6000端口发送一条数据。 主机C启动'实验平台工具栏中的UDP工具'并向主机B(172.16.1.1)的6001端口发送一条数据。5. 主机A、B、C、F停止捕获数据,分析捕获到的数据。 ● 分析主机B捕获到的数据,结合静态NAT的原理,试填写会话映射表:

表12-2 实验结果

● 结合本练习的结果,绘制第4步发送的UDP数据包在网络中的传输路径图。6. 主机B在命令行下使用'recover_config'命令停止NAT服务。

动态地址转换

本练习将主机A、B、C、D、E、F作为一组进行实验。 本练习中主机B作为NAT服务器(主机B的b1接口连接到Internet,b2接口连接到内部局域网),主机A作为Internet上的服务器,主机C、D作为Internet上的主机,主机E、F作为局域网内部主机。1. 主机A启动实验平台工具栏中的'UDP工具',作为UDP服务器来监听2828端口。2. 在主机B启动动态NAT服务,配置方法如下: (1)在主机B上重新启动NAT服务('nat_config')。 (2)主机B在命令行下使用'nat_config 'b1' full'命令将172.16.1.1接口设置为'公用接口连接到Internet'。 (3)主机B在命令行下使用'nat_config 'b2' private'命令将172.16.0.1接口设置为'专用接口连接到专用网络'。 (4)主机B在命令行下使用'nat_config 'b1' addrpool 172.16.1.1 172.16.1.1 255.255.255.0'命令将地址池设置为从172.16.1.1到172.16.1.1。3. 主机B、F启动协议分析器开始捕获数据,设置过滤条件(提取UDP协议)。4. 主机F启动实验平台工具栏中的'UDP工具'并向主机A(172.16.1.2)的2828端口发送一条数据。5. 察看主机B捕获到的数据。 ● 分析主机B捕获到的数据,结合动态NAT的原理,试填写会话映射表:

表12-3 实验结果

6. 主机C和主机D分别ping主机E(172.16.0.2)的IP地址,观察是否ping通。7. 主机B、F停止捕获数据,分析捕获到的数据。 ● 结合实验结果,简述动态NAT在网络安全上所起到的作用以及在对等通信(在对等通信模型中,对等的双方即可以作为客户端,也可以作为服务器来使用,它们通过直接将数据包发送给对方进行通信,双方均可以主动建立连接)的影响。 ● 主机B在命令行下使用'recover_config'命令停止NAT服务。

1. 简述NAT的主要作用。列出3个使用NAT的例子。2. 找出一种使用动态NAT可以从外部网络上的主机发起通信的方法。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
CISCO路由命令大全
各种nat类型
iptables学习笔录
计算机网络常见面试题总结
nat和pat的区别
P2P之UDP穿透NAT的原理与实现(shootingstars)--增强篇(附源代码) - lithe的专栏
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服