当一台小型商务企业的内部网计算机用户连接到 internet 资源时,该用户的 tcp/ip 协议产生一个 ip 数据包,该数据包包含以下值,这些值位于 ip 和 tcp 或 udp 标头中:(粗体内容表示受 nat 影响的项目):
• 目标 ip 地址:internet 资源 ip 地址
• 源 ip 地址:私有 ip 地址
• 目标端口:internet 资源 tcp 或 udp 端口
• 源端口: 源应用程序 tcp 或 udp 端口
请求源主机或者其它路由器将此 ip 数据包发送给 nat, 然后由 nat 将向外发送的数据包的地址解析如下:
• 目标ip地址:internet 资源 ip 地址
• 源ip 地址:isp 分配的公用地址
• 目标端口:internet 资源 tcp 或 udp 端口
• 源端口:重新映射的源应用程序 tcp 或 udp 端口
nat 将重新映射的 ip 数据包发送到 internet 。响应计算机将向 nat 返回一个响应。当 nat 接收到此响应时,该数据包将包含以下地址信息:
• 目标ip 地址:isp 分配的公用地址
• 源ip地址:internet 资源 ip 地址
• 目标端口:重新映射的源应用程序 tcp 或 udp 端口
• 源端口:internet 资源的 tcp 或者 udp 端口
当 nat 完成映射和解析地址后,将向 internet 客户端发送数据包,此数据包包含以下地址信息:
• 目标 ip 地址:私有 ip 地址
• 源 ip 地址:internet 资源 ip 地址
• 目标端口:源应用程序 tcp 或者 udp 端口
• 源端口:internet 资源 tcp 或 udp 端口
对于向外发送的数据包,源 ip 地址和 tcp/udp 端口号将被映射到一个公用源 ip 地址和一个可能变化的 tcp/udp 端口号。对于接收的数据包,目标 ip 地址和 tcp/udp 端口号将被映射到私有 ip 地址和初始 tcp/udp 端口号。
例如,一个小型办公网络使用 192.168.0.0/24 作为企业内部网络私有 id 并且其 internet 网络服务提供商分配的单一公用ip地址为131.107.0.1。当此小型内部网中一台内部私有地址为 192.168.0.99 的客户访问 ip 地址为 157.60.0.1的网站服务器时,此用户机的 tcp/ip 协议产生一个包含以下在 ip 和 tcp 或者 udp 标头中的数值的 ip 数据包:
• 目标ip地址:157.60.0.1
• 源ip地址: 192.168.0.99
• 目标端口:80
• 源端口:1025
请求源主机将此 ip 数据包发送给 nat 设备,然后由 nat 设备解析向外发送数据包的地址如下:
• 目标 ip 地址:157.60.0.1
• 源 ip 地址:131.107.0.1
• 目标端口:80
• 源端口:5000
nat 将重新映射后的 ip 数据包发送到 internet。网站服务器向 nat 返回一个响应。当 nat 接受到此响应时,数据包包含以下地址信息:
• 目标ip地址:131.107.0.1
• 源ip地址:157.50.0.1
• 目标端口:5000
• 源端口:80
当 nat 完成地址的映射和解析后,它将此数据包发送给 internet 客户端,数据包包含以下地址信息:
• 目标ip地址:192.168.0.99
• 源ip地址:157.60.0.1
• 目标端口:1025
• 源端口:80
感觉这个实例不错, 有一些tcp/ip基础看起来很容易懂.
阅读(4244) | 评论(0) | 转发(0) |