Linux网络NAT、代理服务和内网穿透
NAT技术
NAT(Network Address Translation,网络地址转换)是一种将私有IP地址与公有IP地址相互映射的技术,主要用于解决IPv4地址短缺问题。它允许局域网内的多台设备共享单一公有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 发送数据时就会生成表中的映射关系;
NATP

NATP(Network Address Translation and Port)是一种结合网络地址转换(NAT)和端口映射的技术,用于在私有网络与公共网络之间实现地址和端口的动态转换。它通常用于解决IPv4地址短缺问题,允许多个设备共享单一公网IP地址。
路由器在替换的时候会维护一张映射表,叫NAT转化表。实际上就是把LAN口IP转为路由器的WAN口IP。如果两个报文源端口一样,那么路由器要改映射端口。整个过程目的端口和IP没变(公网IP全局唯一性,内网IP局部唯一性)。
当返回时就根据映射关系变换目的地址。没有映射关系消息是发布出去的!两个不同子网如果想要通信,要不路由器相连,要不VPN技术,当然还有别的办法。
内网穿透
简单来说内网穿透就是:一个子网想要访问另外一个子网,只需要访问和目的子网穿透的云服务器就行,穿透就是公网和内网打通,能够通信。
运用场景:
- 远程办公:在家访问公司内网的文件服务器、办公软件(如 OA 系统、项目管理工具),无需到岗即可处理工作。
- 家庭设备访问:在外通过手机 / 电脑,远程控制家里的智能设备(如摄像头、路由器、NAS 存储),查看监控或调取文件。
- 本地服务外网访问:开发测试时,让外部用户 / 客户访问本地搭建的网站、API 接口或小程序原型,无需部署到公网服务器。
- 物联网设备管理:远程管理分布在各地的物联网终端(如传感器、控制器),收集数据或下发指令,无需现场操作。
- 游戏 / 私有服务共享:与异地朋友共享本地搭建的游戏服务器、影音服务(如私人影院),无需依赖公共平台。
内网打洞
内网打洞就是内网穿透后,子网获得目标子网经过网络运行商的路由器映射IP核端口,可以做到不经过云服务器直接与目标子网通信(双方获得对方映射地址)。
- 云服务器仅起 “牵线搭桥” 作用,负责让两个内网设备交换各自的公网映射 IP 和端口。
- 映射地址由运营商路由器分配,是内网设备在公网的 “临时身份”,支持点对点直接通信。
- 通信建立后云服务器可退出,数据直接在两个子网间传输,减少延迟和带宽占用。
内网打洞的核心优势是 “点对点直接通信”,场景集中在需要低延迟、大带宽、数据隐私性高的跨网需求。
代理服务器
正向代理
正向代理(Forward Proxy)是一种常见的网络代理方式,它位于客户端和目标 服务器之间,代表客户端向目标服务器发送请求。正向代理服务器接收客户端的请 求,然后将请求转发给目标服务器,最后将目标服务器的响应返回给客户端。通过这 种方式,正向代理可以实现多种功能,如提高访问速度、隐藏客户端身份、实施访问控制等。

工作原理:
• 客户端将请求发送给正向代理服务器。
• 正向代理服务器接收请求,并根据配置进行处理,如缓存查找、内容过滤等。
• 正向代理服务器将处理后的请求转发给目标服务器。
• 目标服务器处理请求,并将响应返回给正向代理服务器。
• 正向代理服务器将响应返回给客户端
功能特点:
• 缓存功能:正向代理服务器可以缓存经常访问的资源,当客户端再次请求这些资 源时,可以直接从缓存中获取,提高访问速度。
• 内容过滤:正向代理可以根据预设的规则对请求或响应进行过滤,如屏蔽广告、 阻止恶意网站等。
• 访问控制:通过正向代理,可以实现对特定网站的访问控制,如限制员工在工作 时间访问娱乐网站。
• 隐藏客户端身份:正向代理可以隐藏客户端的真实 IP 地址,保护客户端的隐私。
• 负载均衡:在多个目标服务器之间分配客户端请求,提高系统的可扩展性和可靠 性。
应用场景:
企业网络管理:企业可以通过正向代理实现对员工网络访问的管理和控制,确保员工 在工作时间内专注于工作,避免访问不良网站或泄露公司机密。
公共网络环境:在公共场所如图书馆、学校等提供的网络环境中,通过正向代理可以 实现对网络资源的合理分配和管理,确保网络使用的公平性和安全性。
内容过滤与保护:家长可以通过设置正向代理来过滤不良内容,保护孩子免受网络上 的不良信息影响。
提高访问速度:对于经常访问的网站或资源,正向代理可以通过缓存机制提高访问速度,减少网络延迟。
跨境电商与海外访问:对于跨境电商或需要访问海外资源的企业和个人,正向代理可 以帮助他们突破网络限制,顺畅地访问海外网站和资源。
反向代理
反向代理服务器是一种网络架构模式,其作为 Web 服务器的前置服务器,接收 来自客户端的请求,并将这些请求转发给后端服务器,然后将后端服务器的响应返回 给客户端。这种架构模式可以提升网站性能、安全性和可维护性等。

原理:反向代理服务器位于客户端和 Web 服务器之间,当客户端发起请求时,它首先 会到达反向代理服务器。反向代理服务器会根据配置的规则将请求转发给后端的 Web 服务器,并将 Web 服务器的响应返回给客户端。在这个过程中,客户端并不知道实际 与哪个 Web 服务器进行了交互,它只知道与反向代理服务器进行了通信。
应用场景:
• 负载均衡:反向代理服务器可以根据配置的负载均衡策略,将客户端的请求分发 到多个后端服务器上,以实现负载均衡。这有助于提升网站的整体性能和响应速度, 特别是在高并发场景下。
• 安全保护:反向代理服务器可以隐藏后端 Web 服务器的真实 IP 地址,降低其被直接攻击的风险。同时,它还可以配置防火墙、访问控制列表(ACL)等安全策略, 对客户端的请求进行过滤和限制,以保护后端服务器的安全。
• 缓存加速:反向代理服务器可以缓存后端 Web 服务器的响应内容,对于重复的 请求,它可以直接从缓存中返回响应,而无需再次向后端服务器发起请求。这可以大 大减少后端服务器的负载,提升网站的响应速度。
• 内容过滤和重写:反向代理服务器可以根据配置的规则对客户端的请求进行过滤 和重写,例如添加或删除请求头、修改请求路径等。这有助于实现一些特定的业务需求,如 URL 重写、用户认证等。
• 动静分离:在大型网站中,通常需要将静态资源和动态资源分开处理。通过将静 态资源部署在反向代理服务器上,可以直接从反向代理服务器返回静态资源的响应, 而无需再次向后端服务器发起请求。这可以大大提升静态资源的访问速度。
• CDN(Content Delivery Network,内容分发网络)就是采用了反向代理的原理
NAT和代理服务器区别
• 从应用上讲, NAT 设备是网络基础设备之一, 解决的是 IP 不足的问题. 代理服务器则是更贴近具体应用, 比如通过代理服务器进行fq, 另外像迅游这样的加速器, 也是使用代理服务器.
• 从底层实现上讲, NAT 是工作在网络层, 直接对 IP 地址进行替换. 代理服务器往往工作在应用层.
• 从使用范围上讲, NAT 一般在局域网的出口部署, 代理服务器可以在局域网做, 也可以在广域网做, 也可以跨网.
• 从部署位置上看, NAT 一般集成在防火墙, 路由器等硬件设备上, 代理服务器则 是一个软件程序, 需要部署在服务器上.
总结:NAT在网络层,ARP和MAC在数据面路层,代理服务器在应用层!
