NAT、代理服务、内网穿透

目录

NAT

NAT技术出现的原因(目的)

NAPT

代理服务器

正向代理

反向代理

内网穿透

内网打洞


NAT

NAT是一种网络技术,主要用于将一个IP地址空间的地址转换为另一个IP地址空间的地址。

NAT技术出现的原因(目的)
  • 解决IPv4地址不足的问题:互联网设备数量不断增加,NAT可以通过将多个私有IP地址映射到少量的公网IP地址,有效缓解IPv4地址不足的问题。
  • 网络隔离与安全:NAT可以隐藏内部网络的结构,防止外部网络直接访问内部设备,从而增强网络的安全性。
  • 简化网络管理:通过NAT,企业可以使用私有IP地址规划内部网络,同时通过少量的公网IP地址与外部网络通信,简化了网络配置和管理。

NAT 路由器向外部发送数据时,将源地址从 10.0.0.10 替换成全局的 IP 202.244.174.37

NAT 路由器收到外部的数据时, 又会把目标 IP 从 202.244.174.37 替换回 10.0.0.10

在NAT路由器内部有一张自动生成的表,这张表用于地址转换

当10.0.0.10第一次向163.221.120.9发送数据时就会生成表中的映射关系

当同一个局域网中有多台主机都访问同一个外网服务器,那么对于服务器返回的数据中目的IP都是相同的,NAT路由器就无法判定将这个数据包发给局域网中的哪台主机

这时候就需要NAPT来解决问题了

NAPT

NAPT是NAT的一种扩展形式,它通过同时转换IP地址和端口号,允许多个内部设备共享同一个公网IP地址,从而进一步提高了IP地址的利用率。

NAPT的核心思想是在NAT的基础上引入端口号的转换,以区分不同的内部设备和会话。

代理服务器

代理服务器是一种位于客户端和目标服务器之间的中间服务器,它在客户端和服务器之间转发请求和响应。

正向代理

正向代理是一种代理服务器,它代表客户端向目标服务器发起请求。

客户端将请求发送到正向代理服务器,代理服务器再将请求转发到目标服务器,并将目标服务器的响应返回给客户端。

工作原理:

  1. 客户端配置代理服务器的地址和端口。

  2. 客户端将请求发送到正向代理服务器。

  3. 正向代理服务器接收请求,根据请求的目标地址(URL)将请求转发到目标服务器。

  4. 目标服务器处理请求后,将响应发送回正向代理服务器,代理服务器再将响应返回给客户端。

功能特点:

  • 缓存功能:正向代理服务器可以缓存经常访问的资源,当客户端再次请求这些资源时,可以直接从缓存中获取,提高访问速度。
  • 内容过滤:正向代理可以根据预设的规则对请求或响应进行过滤,如屏蔽广告、阻止恶意网站等。
  • 访问控制:通过正向代理,可以实现对特定网站的访问控制,如限制员工在工作时间访问娱乐网站。
  • 隐藏客户端身份:正向代理可以隐藏客户端的真实 IP 地址,保护客户端的隐私。
  • 负载均衡:在多个目标服务器之间分配客户端请求,提高系统的可扩展性和可靠性。

应用场景:

  • 访问控制:企业可以使用正向代理限制员工访问某些网站。
  • 匿名访问:用户可以通过正向代理隐藏自己的IP地址,实现匿名访问。
  • 缓存加速:正向代理可以缓存常用资源,减少对目标服务器的请求,提高访问速度。
  • 负载均衡:正向代理可以将请求分发到多个目标服务器,实现负载均衡。
  • 公共网络环境:在公共场所如图书馆、学校等提供的网络环境中,通过正向代理可以实现对网络资源的合理分配和管理,确保网络使用的公平性和安全性。

反向代理

反向代理是一种代理服务器,它代表目标服务器接收客户端的请求。

客户端直接将请求发送到反向代理服务器,反向代理服务器再将请求转发到后端服务器,并将后端服务器的响应返回给客户端。

工作原理:

  1. 客户端将请求发送到反向代理服务器。

  2. 反向代理服务器接收请求,根据请求的目标地址将请求转发到后端服务器。

  3. 后端服务器处理请求后,将响应发送回反向代理服务器。

  4. 反向代理服务器将响应返回给客户端。

应用场景:

  • 负载均衡:反向代理可以将客户端的请求分发到多个后端服务器,实现负载均衡。
  • 缓存加速:反向代理可以缓存静态资源,减少对后端服务器的请求,提高响应速度。
  • 安全防护:反向代理可以隐藏后端服务器的IP地址,增强安全性。
  • 内容过滤和重写:反向代理服务器可以根据配置的规则对客户端的请求进行过滤 和重写,例如添加或删除请求头、修改请求路径等。这有助于实现一些特定的业务需 求,如 URL 重写、用户认证等。

内网穿透

内网穿透是一种网络技术,通过穿透网络边界,使得外部网络用户能够访问和连接到内部网络资源。

在传统的网络环境中,内网通常被防火墙、路由器等设备保护,外部网络无法直接访问内网资源。内网穿透技术打破了这种限制,允许外部用户通过互联网访问内网资源。

应用场景:

  • 远程办公:员工可以在外网环境下访问公司内部的办公系统、文件服务器等。
  • 远程访问家庭设备:用户可以远程访问家中的电脑、NAS设备或监控摄像头。
  • 开发调试:开发者可以将本地开发的服务暴露到公网,方便测试和调试。
  • 多地分支机构数据共享:企业可以通过内网穿透实现多地分支机构之间的数据共享。

让一个局域网内的主机能够访问另一个局域网内的主机

内网打洞

内网打洞是一种通过NAT设备建立两个内网设备之间直接连接的技术,通常用于解决NAT环境下内网设备无法直接相互通信的问题。

核心原理是利用NAT设备的映射机制,让内网设备能够通过公网IP和端口建立直接连接。

工作原理:

  1. 内网设备通过NAT路由器向外部公网发起请求,NAT路由器会为这些连接分配一个公网端口,并保持映射关系。

  2. 内网设备通过STUN服务器检测自己所在的NAT类型,并得知自己外部可访问的公共IP和端口。

  3. 两个内网设备通过中间服务器交换自己的公网IP地址和映射的端口信息。

  4. 两个设备通过NAT路由器的"映射"端口,发起相互的连接请求。如果NAT路由器的配置允许它们建立直接的连接,则数据流可以直接传输。

应用场景:

  • P2P通信:如文件共享(BitTorrent)、即时通讯、在线游戏等,通过打洞技术建立直接连接,减少延迟和带宽消耗。
  • 视频通话:支持音视频通话的应用通常利用内网打洞技术建立端对端连接。
  • 远程访问:如远程桌面、SSH等应用可以通过内网打洞技术让外部设备访问内网设备。
  • 物联网:一些智能设备和摄像头等IoT设备,常通过内网打洞技术实现远程控制和监控。

优点:

  • 直接连接:减少数据传输的延迟和中转服务器的带宽消耗。
  • 节省资源:避免了中继服务器的使用,减轻了服务器的负担。

缺点:

  • 对NAT类型要求高:某些对称NAT类型的路由器可能无法成功打洞。
  • 安全性问题:直接连接可能暴露设备的端口,存在一定的安全风险。
  • 可靠性较低:在复杂的NAT环境下,打洞失败的可能性较高。

让两个局域网内的主机不通过任何媒介就能直接通信


相关推荐
Bruce_Liuxiaowei2 小时前
常见高危端口风险分析与防护指南
网络·网络安全·端口·信息搜集
tmacfrank3 小时前
Android 网络全栈攻略(四)—— TCPIP 协议族与 HTTPS 协议
android·网络·https
liulilittle3 小时前
深度剖析:OPENPPP2 libtcpip 实现原理与架构设计
开发语言·网络·c++·tcp/ip·智能路由器·tcp·通信
cui_win3 小时前
【内存】Linux 内核优化实战 - net.ipv4.tcp_tw_reuse
linux·网络·tcp/ip
夏天想4 小时前
优化 WebSocket 实现单例连接用于打印【待测试 】
网络·websocket·网络协议
我是小bā吖5 小时前
阿里云服务网格ASM实践
网络·阿里云·云计算·服务发现
吴free6 小时前
mac电脑wireshark快速实现http接口抓包
网络·测试工具·http·wireshark
艾希逐月6 小时前
TCP数据的发送和接收
服务器·网络·tcp/ip
D-海漠9 小时前
Modbus_TCP_V4 客户端
网络
虚!!!看代码10 小时前
【Sentinel学习】
网络·sentinel