Linux网络 NAT、代理服务、内⽹穿透

目录

[一. NAT技术](#一. NAT技术)

[二. 代理服务](#二. 代理服务)

[1. 正向代理](#1. 正向代理)

[2. 反向代理](#2. 反向代理)

[3. 内网穿透](#3. 内网穿透)

[4. 内网打洞](#4. 内网打洞)


一. NAT技术

以上的图是一个例子解释NAT技术:路由器连接两个子网,在边的子网要和右边的子网进行通信,由于子网内的IP是私有iP只在局域网内有效,所以假设客户端A此时要向右边的服务器发送信息,此时传递到路由器的时候,会在网络层,把私用IP替换成路由器的WAN口IP(图中只显示中间只跨过了一个路由器,其实有很多个,这种替换也是一层层的替换的,最后一个替换的IP地址是出入口的路由器),在路由器的内部形成一个表结构,里面保存了私有IP和公有IP的映射关系,然后再发送给服务器,路由器处理后,发送回客户端A,此时到达了出入口路由器,然后根据之前建立的那张表的映射关系,找出下一个阶段要发送回的路由器IP,一层层的替换,直到返回给客户端A的指定端口。

那么问题来了, 如果局域⽹内, 有多个主机都访问同⼀个外⽹服务器, 那么对于服务器返回的数据中, ⽬的IP都是相同的。那么NAT路由器如何判定将这个数据包转发给哪个局域⽹的主机?

这时候NAPT来解决这个问题了. 使⽤IP+port来建⽴这个关联关系

二. 代理服务

1. 正向代理

正向代理(Forward Proxy)是⼀种常⻅的⽹络代理⽅式,它位于客⼾端和⽬标服务器之间,代表 客⼾端向⽬标服务器发送请求。正向代理服务器接收客⼾端的请求,然后将请求转发给⽬标服务 器,最后将⽬标服务器的响应返回给客⼾端。通过这种⽅式,正向代理可以实现多种功能,如提⾼ 访问速度、隐藏客⼾端⾝份、实施访问控制等。

2. 反向代理

反向代理服务器是⼀种⽹络架构模式,其作为Web服务器的前置服务器,接收来⾃客⼾端的请求, 并将这些请求转发给后端服务器,然后将后端服务器的响应返回给客⼾端。这种架构模式可以提升 ⽹站性能、安全性和可维护性等。

基本原理:反向代理服务器位于客⼾端和Web服务器之间,当客⼾端发起请求时,它⾸先会到达反向代理服务器。反向代理服务器会根据配置的规则将请求转发给后端的Web服务器,并将Web服务器的响应返 回给客⼾端。在这个过程中,客⼾端并不知道实际与哪个Web服务器进⾏了交互,它只知道与反向代理服务器进⾏了通信。

3. 内网穿透

我们在局域网内的一台主机和一个云服务器设置NAPT(相当于内网IP和特定的端口和服务器的IP和特点的端口,建立映射),然后建立起链接,然后外网(不再这个局域网内的)的一台主机,和这个云服务器建立链接,然后把这台主机发的请求,通过服务器转给这个局域网内部的主机。

4. 内网打洞
相关推荐
开开心心就好10 小时前
图片格式转换工具,右键菜单一键转换简化
linux·运维·服务器·python·django·pdf·1024程序员节
徐子童3 天前
网络协议---TCP协议
网络·网络协议·tcp/ip·面试题·1024程序员节
扫地的小何尚4 天前
NVIDIA RTX PC开源AI工具升级:加速LLM和扩散模型的性能革命
人工智能·python·算法·开源·nvidia·1024程序员节
数据皮皮侠AI5 天前
上市公司股票名称相似度(1990-2025)
大数据·人工智能·笔记·区块链·能源·1024程序员节
开开心心就好6 天前
系统清理工具清理缓存日志,启动卸载管理
linux·运维·服务器·神经网络·cnn·pdf·1024程序员节
Evan东少8 天前
[踩坑]笔记本Ubuntu20.04+NvidiaRTX5060驱动+cuda+Pytorch+ROS/Python实现人脸追踪(环境准备)
1024程序员节
不爱编程的小陈9 天前
C/C++每日面试题
面试·职场和发展·1024程序员节
开开心心就好10 天前
右键菜单管理工具,添加程序自定义名称位置
linux·运维·服务器·ci/cd·docker·pdf·1024程序员节
码农三叔11 天前
(4-2-05)Python SDK仓库:MCP服务器端(5)Streamable HTTP传输+Streamable HTTP传输
开发语言·python·http·大模型·1024程序员节·mcp·mcp sdk
西幻凌云15 天前
初始——正则表达式
c++·正则表达式·1024程序员节