当前位置:首页 > 网络黑客 > 正文内容

web服务器是什么(nat转换的三种方式)

访客56年前 (1970-01-01)网络黑客1026

NAT

网络地址转换(NAT)技术的理论部分可以看博客——网络层——NAT。NAT 的功能大致为:在局域网中组织会为内部主机分配私有地址,当内部主机发送数据包到外部网络时私有地址就会自动转换为公有 IP 地址,公有 IP 地址返回的流量的目的地址也会自动转换为内部私有地址。NAT 通常工作在末节网络的边界。

在 NAT 术语中,NAT 转换后的地址称之为全局地址,NAT 转换前的地址为本地地址。内部本地地址是需要进行 NAT 转换的主机的私有地址,外部本地地址是与 ISP 相连的路由器接口的地址,这会是个公有地址。进行 NAT 转换时,内部本地地址将会转换为内部全局地址,外部全局地址会成为目的地址。

地址类型

含义

内部本地地址

转换前的内部源地址

外部本地地址

转换后的目标地址

内部全局地址

转换后的源地址

外部全局地址

转换前的外部目标地址

相关视频讲解:

网络穿透,P2P,打洞的核心原理,NAT,穿透的蓝盟超越网原理:「链接」

网络穿透,NAT,打洞,了解p2p的秘密:「链接」

NAT 的优缺点

优点

允许内网使用私有地址,从而节省了 ISP 分配的公网地址; 增强了与公有网络连接的灵活性; 在内网使用私有地址,可以让公有地址的更换提供方便; 隐藏内网的 IP 地址的细节。

缺点

NAT 转换有一定的时间开销,会使性能下降; 基于端到端的功能可能无法实现; 由于更改了 IP 地址,端到端的 IP 地址因此无法追踪; 修改了报头的值,导致数据包的完整性检查失败; TCP 连接可能因此中断。

NAT 的类型

静态 NAT

静态 NAT 实现本地地址和全局地址的一对一映射,这些映射由网络管理员进行配置。当配置静态 NAT 的设备向互联网发送流量时,内部本地地址会被转换为已配置的内部全局地址,内部全局地址是共有的 IPv4 地址。很显然,静态 NAT 并不能节省共有 IP 地址的使用。例如有如图所示拓扑,可用的公网地址有 170.168.2.2、170.168.2.3、170.168.2.4,则 NAT 转换表可能是:

内部本地 IP 地址

内部全局 IP 地址

192.168.1.21

170.168.2.2

192.168.1.22

170.168.2.3

192.168.1.23

170.168.2.4

例如主机 192.168.1.21 向外部网络发送分组,则配置了 NAT 的路由器发现分组的源 IP 地址是内部本地 IP 地址,则就将该地址转换为内部全局 IP 地址并记录在 NAT 表中,例如这里转换为 170.168.2.2。转换后分组会被转发到外部接口,当路由器收到外部主机返回的分组时,路由器会根据 NAT 表把内部全局 IP 地址转换回内部本地 IP 地址。

动态 NAT

动态 NAT 实现本地地址和全局地址之间的多对多映射,将使用公有地址池,以先到先得的原则分配地址的使用。当配置了动态 NAT 的内部设备访问外部网络时,动态 NAT 会分配 NAT 地址池中可用的 IPv4 地址。动态 NAT 的转换也会受到 IP 地址池的 IP 地址数量限制,例如内部网络有 50 个使用私有地址的设备,IP 地址池有 5 个公有地址,则只能将这 50 个私有地址映射到这 5 个公有地址上。

PAT

端口地址转换 PAT实现本地地址和全局地址之间的多对一映射,地址将通过端口号进行重载。由于端口号可以是 0 ~ 65536,所以一个公有 IP 地址可以重载 65536 次。内部本地地址进行转换时,PAT 会将唯一的源端口号添加到内部全局地址上。端口号会用来区分流量,当目的主机返回响应时,端口号会决定路由器将数据包转发到哪个设备上。在实际情况下端口号可能会被其他会话或者应用占用,此时如果使用的端口号已经被使用了,则 PAT 会从端口号组中分配一个可用的端口号。如果已经没有可用的端口号了,PAT 会进入下一个公网地址进行转换,并且重新分配端口号。例如有如图所示拓扑,可用的公网地址只有 170.168.2.2,则 NAT 转换表可能是:

内部本地 IP 地址

内部全局 IP 地址

192.168.1.21:12000

170.168.2.2:12000

192.168.1.22:12000

170.168.2.3:12001

192.168.1.23:24000

170.168.2.4:12002

PAT 可以使用端口号对一个公网地址进行重载,例如主机 192.168.1.21 向外部网络发送分组,则配置了 NAT 的路由器发现分组的源 IP 地址是内部本地 IP 地址,则就将该地址转换为内部全局 IP 地址并加上一个可用的端口号记录在 NAT 表中,例如这里转换为 170.168.2.2:12000。当路由器收到外部主机返回的分组时,路由器会根据 NAT 表,根据端口号把内部全局 IP 地址转换回内部本地 IP 地址。

C/C Linux后台服务器开发高级架构师学习视频 点击 正在跳转 获取,内容知识点包括Linux,Nginx,ZeroMQ,MySQL,Redis,线程池,MongoDB,ZK,Linux内核,CDN,P2P,epoll,Docker,TCP/IP,协程,DPDK等等。免费学习地址:C/C Linux服务器开发/后台架构师【零声教育】-学习视频教程-腾讯课堂

配置静态 NAT

静态 NAT 的配置比较简单,因为只需要将一个内部地址映射到一个外部地址就行。在配置模式使用的命令如下,local-ip 表示进行 NAT 转换的内部地址,global-ip 表示进行 NAT 转换的外部地址,这样就可以建立起地址的映射关系。

 Router(config)# ip nat inside source static local-ip global-ip

接着需要将接口配置为相对于 NAT 的内部接口和外部接口,内部接口使用如下命令在接口配置模式下定义:

 Router(config-if)# ip nat inside

外部接口使用如下命令在接口配置模式下定义:

Router(config-if)# ip nat outside

配置动态 NAT

动态 NAT 的配置需要先定义用于转换的地址池,并且为这个地址池命名,使用的命令如下。“pool-name” 是地址池名,“start-ip” 是第一个可用 ip,“end-ip” 是最后一个可用的 ip,这 2 个参数将表示 ip 地址的范围。netmask 关键字指示哪些地址位属于网络位。

 Router(config)# ip nat pool pool-name start-ip end-ip {netmask netmask | prefix-length prefix-length}

接着需要定义一个 ACL 把需要进行 NAT 转换的流量筛选出来,使用命令如下,使用命名 ACL 也可以:

Router(config)# access-list access-list-number permit source [ source-wildcard ]

接下来要将 ACL 和 NAT 地址池进行绑定,使用的命令如下:

 Router(config)# ip nat inside source list access-list-number pool pool-name

最后接着需要将接口配置为相对于 NAT 的内部接口和外部接口,内部接口使用如下命令定义:

 Router(config-if)# ip nat inside

外部接口使用如下命令定义:

Router(config-if)# ip nat outside

配置 PAT

实验拓扑

思科 11.2.3.7 Lab 配置 NAT 地址池过载和 PAT 的实验拓扑如下。

地址分配表:

设备

接口

IP 地址

子网掩码

默认网关

Gateway

G0/1

192.168.1.1

255.255.255.0

N/A

S0/0/1

209.165.201.18

255.255.255.252

N/A

ISP

S0/0/0 (DCE)

209.165.201.17

255.255.255.252

N/A

Lo0

192.31.7.1

255.255.255.255

N/A

PC-A

NIC

192.168.1.20

255.255.255.0

192.168.1.1

PC-B

NIC

192.168.1.21

255.255.255.0

192.168.1.1

PC-C

NIC

192.168.1.22

255.255.255.0

192.168.1.1

配置并检验 NAT 地址池过载

配置 NAT 地址池过载

配置网关路由器,将来自 192.168.1.0/24 网络的 IP 地址转换为 209.165.200.224/29 范围内的六个可用地址中的一个。首先定义与 LAN 私有 IP 地址相匹配的访问控制列表,由于要对 G0/1 接口的网段 192.168.1.0/24 做 NAT,因此定义 ACL 1 用来允许对 192.168.1.0/24 的流量能够被转换。标准 ACL 筛选流量的作用也可以从此处体现。

Gateway(config)# access-list 1 permit 192.168.1.0 0.0.0.255

定义可用的公有 IP 地址池,和动态 NAT 一样,使用的命令为 “ip nat pool pool-name start-ip end-ip { netmask netmask | prefix-length prefix-length }”。“pool-name” 是地址池名,“start-ip” 是第一个可用 ip,“end-ip” 是最后一个可用的 ip,这 2 个参数将表示 ip 地址的范围。netmask 关键字指示哪些地址位属于网络位。

 Gateway(config)# ip nat pool public_access 209.165.200.225  209.165.200.230 netmask 255.255.255.248

定义从内部源列表到外部地址池的 NAT,使用 “ip nat inside source list access-list-number pool pool-name overload” 命令绑定 ACL 和地址池。注意到示例命令后面跟了个关键字 overload,该关键字表示过载,用于配置 PAT。

Gateway(config)# ip nat inside source list 1 pool public_access overload

指定接口,对接口使用 “ip nat inside” 配置内部接口,“ip nat outside” 命令配置外部接口。

Gateway(config)# interface g0/1
Gateway(config-if)# ip nat inside
Gateway(config-if)# interface s0/0/1
Gateway(config-if)# ip nat outside

检验 NAT 地址池过载

每台 PC 对 192.31.7.1 地址执行 ping 操作后,显示网关路由器上的 NAT 统计数据。

Gateway# show ip nat statistics

该命令可以显示总转换数,NAT 配置参数、地址池地址数量和已分配地址数量。

显示网关路由器上的 NAT。

Gateway# show ip nat translations

该命令可以显示活动的 NAT 转换。

命令列出了 3 个内部本地 IP 地址,分别是 192.168.1.20、192.168.1.21、192.168.1.22,列出了 1 个内部全局 IP 地址 209.165.200.225。

删除 NAT 配置

删除可用公有 IP 地址池。

Gateway(config)# no ip nat pool public_access 209.165.200.225 209.165.200.230 netmask 255.255.255.248

删除从内部源列表到外部地址池的 NAT 转换

 Gateway(config)# no ip nat inside source list 1 pool public_access overload

接口定义外部地址配置并检验 PAT

使用接口定义外部地址

首先定义与 LAN 私有 IP 地址相匹配的访问控制列表,ACL 1 用来允许对 192.168.1蓝盟超越网.0/24 进行转换。标准 ACL 筛选流量的作用也可以从此处体现。

Gateway(config)# access-list 1 permit 192.168.1.0 0.0.0.255

指定接口,对接口使用 ip nat inside 和 ip nat outside 命令。

Gateway(config)# interface g0/1
Gateway(config-if)# ip nat inside
Gateway(config-if)# interface s0/0/1
Gateway(config-if)# ip nat outside

使用接口而不是地址池来定义外部地址,进而配置 PAT,将源列表与外部接口相关联。

Gateway(config)# ip nat inside source list 1 interface serial 0/0/1 overload

检验 PAT

每台 PC 对 192.31.7.1 地址执行 ping 操作后,显示网关路由器上的 NAT 统计数据。

Gateway# show ip nat statistics

显示网关路由器上的 NAT。

Gateway# show ip nat translations

扫描二维码推送至手机访问。

版权声明:本文由专业黑客技术知识发布,如需转载请注明出处。

本文链接:https://hkjdpt.com/98828.html

标签: 网站随笔
分享给朋友:

“web服务器是什么(nat转换的三种方式)” 的相关文章

最适合穷人开的6款车,十大最省油的车排行榜

的省油,消费者报告,我朋友车有启辰R50自动的,空间要大,7万的裸车价,当然,咱们来看看是哪十款?三菱Mirage百公里油耗6,R50的手动或自动吧。 的.全是十分适合的。不论在哪个档位。 1点6油耗8个以内,城市综合油耗控制在7点3没什么问题 L致炫丰田车在全球都拥有好评,拿现在很省油的一款车比亚...

web服务器是什么(nat转换的三种方式)

NAT 网络地址转换(NAT)技术的理论部分可以看博客——网络层——NAT。NAT 的功能大致为:在局域网中组织会为内部主机分配私有地址,当内部主机发送数据包到外部网络时私有地址就会自动转换为公有 IP 地址,公有 IP 地址返回的流量的目的地址也会自动转换为内部私有地址。NAT 通常工作在末节网...

40秒破华为锁屏密码 华为手机万能密码是多少

周六的情况下,有一个好朋友在微信上跟我说是否有华为设备的原始用户名和密码的文本文档,花了礼拜天夜里的3个钟头给我们梳理一下,最先看一下接下来会给各位共享华为公司什么设施的信息内容: 华为设备类型也是蛮丰富多彩的,不赔是华为公司! 1、无线路由器 用户名admin 密码Admin@huawei...

2022冬奥闭幕式在哪举行 冬奥会开幕式具体时间

2022残奥会闭幕式时间是2022年3月13日.地点是国家体育场.国家体育场国家体育场(National Stadium,鸟巢),位于北京市国家体育场南路1号奥林匹克公园,总占地. 2022年有望北京鸟巢 再看看别人怎么说的....

汇率换算器在线查询系统(国家外汇管理局查汇率)

网址是http/wsagcn/model,实时发布的外汇牌价进行计算的。一日银行间外汇市场形成的价格,探亲、按1元人民币兑换17点42日元的比值,往年各种货币之间的汇率可以登录各大银行网页,关于您的问题,的价格。各地区。 港币,国家外汇管理局只公布人民币对?汇率(亦称“外汇行市”或“汇价,CNY,或...

上网本和笔记本有什么区别(上网本和笔记本有什么区别显卡)

  Intel调整上网本指导配置 区别笔记本   2011年05月11日 00:59作者:吴宗蔚编辑:吴宗蔚文章出处:泡泡网原创   分享   泡泡网笔记本频道5月11日 据国外媒体报道,Intel将把上网本全线转换到Cedar Trail,同时将双核处理器以及2~4GB DDR3内存列入标配选项。...

评论列表

断渊一镜
3年前 (2022-06-02)

组时,路由器会根据 NAT 表,根据端口号把内部全局 IP 地址转换回内部本地 IP 地址。C/C Linux后台服务器开发高级架构师学习视频 点击 正在跳转 获取,内容知识点包括Lin

囤梦浪胚
3年前 (2022-06-02)

)# access-list access-list-number permit source [ source-wildcard ]接下来要将 ACL 和 NAT 地址池进行绑定,使用的命令如下: Router(config)# ip

冬马痛言
3年前 (2022-06-02)

配置静态 NAT静态 NAT 的配置比较简单,因为只需要将一个内部地址映射到一个外部地址就行。在配置模式使用的命令如下,local-ip 表示进行 NAT 转换的内部地址,global-ip 表示进行 NAT 转换的外

嘻友十驹
3年前 (2022-06-02)

T 可以使用端口号对一个公网地址进行重载,例如主机 192.168.1.21 向外部网络发送分组,则配置了 NAT 的路由器发现分组的源 IP 地址是内部本地 IP 地址,则就将该地址转换

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。