内网穿透什么意思?内网穿透基础知识原理内网穿透服务器搭建可以干嘛服务器端口映射无需公网IP教程方法

article/2025/9/14 2:43:09


内网穿透什么意思?内网穿透基础知识原理内网穿透服务器搭建可以干嘛服务器端口映射无需公网IP教程方法

 

什么是内网今天说点大家都能听得懂的!!!

通常情况下,内网 可以简单的理解为路由器创建的网络,连接到这个网络的电脑之间可以相互访问。

举个例子,假设我们的网络架构是这样的:

 

直接通过网线连接到小明的路由器上的电脑A电脑B 电脑C 之间互相访问没有问题,例如:

  • 小明在 电脑A 上启动了游戏服务器,监听端口 20000
  • 小明使用 电脑B 打开游戏,连接192.168.1.2:20000
  • 电脑B 告诉路由器它想连接 192.168.1.2 的20000 端口
  • 路由器知道这个地址对应 电脑A,于是建立 (电脑B-电脑A)的连接,这样小明就成功连上了游戏服务器

同理,连接到 李华的路由器上的几台电脑间相互访问也没有问题。

我们就可以认为小明的路由器下的几台电脑就位于同一个 内网 中,而李华的路由器下的几台电脑位于 另外一个内网 中。

小明和李华相互通信

当小明想和李华通信时,问题就出现了。因为 小明的路由器 和 李华的路由器 之间没有直接连接,也没有连接到同一个上级路由,它们并不知道如何连接到对方。

如果有公网 IP...

假如运营商给 小明的路由器 或 李华的路由器 分配了公网 IP,这个问题就迎刃而解。

 

举个例子,假如小明有一个公网 IP ,1.1.1.1,那么李华就可以发起对 1.1.1.1的连接:

  • 我们假设小明已经在路由器上配置了10000这个端口映射到 电脑A 上的游戏服务器 (20000端口)
  • 李华使用电脑D 打开游戏,连接 1.1.1.1:10000
  • 分配了公网 IP 后,李华的路由器 就可以告诉互联网它想连接1.1.1.1的10000端口
  • 因为这个公网 IP 分配给了小明,互联网中的路由器就会建立 李华的路由器与小明的路由器的连接
  • 接下来,小明的路由器会查询之前配置好的端口映射并将这个连接转发到 电脑A的20000端口
  • 最终,电脑D-小明的路由器:10000端口:电脑A 20000端口 的连接

如果没有公网 IP 呢?

由于 IPv4 地址的稀缺,国内三大运营商(电信、移动、联通)基本都不给家宽用户分配公网 IP,更不用说一些二线小运营商了。

这就导致上面的连接无法成功建立,因为李华的路由器想连接到 小明的路由器就必须告诉互联网对方的公网 IP,但是现在他们都没有分配到公网 IP。这时,二者想建立连接就需要使用内网穿透或 UDP 打洞等技术了。

什么是内网穿透

简单的说,内网穿透就是使用一台有公网 IP 的电脑 (frp服务器,下文称为节点) 作为 “中间人” 来与没有公网 IP 的电脑建立连接并转发数据。

  • 首先,我们假设 电脑A、电脑D 和 穿透节点都接入了互联网(绿色实线),但是只有穿透节点 分配到了公网 IP,我们在这里用域名 idc02.com替代。
    假如小明想让其他人连接 电脑A上的游戏服务器,他在电脑A上开启了 frpc,此时 frpc 就会通过互联网与穿透节点建立一个连接(紫色虚线),我们将这个连接称为 隧道。

 

  • 驰网frp服务器会给每条 隧道 分配一个端口号,也就是所谓的 远程端口。这里我们以 30000为例。
  • 现在,李华就可以使用 电脑D通过互联网连接到 穿透节点远程端口了,也就是 idc02.com(蓝色实线)。
    连接建立后,穿透节点 会通过 隧道 联系 frpc,要求 frpc 连接 本地IP端口连接远程(小明应该配置 127.1.1.0:10000),frpc 尝试建立这个连接(红色虚线)

 

  • 如果 frpc 不能成功连接到游戏服务器,就会出现 无法连接到本地服务 的报错。相反,如果连接成功,李华就成功建立了 电脑D--穿透节点---电脑A(游戏服务器) 的一条连接
  • 现在,电脑D向电脑A 发送数据时,就会先发送到 穿头节点,再由穿透节点转发给 frpc,最后转发给游戏服务器,反之同理(蓝色实线)。

 

由于电脑D并没有直接连接到游戏服务器,而是由 frpc 代为连接,因此游戏服务器看到的 IP 实际上是 frpc 的 IP,也就是127.0.0.1。因此,如果小明想知道电脑D的真实 IP,还需要进行额外配置。

为什么要内网穿透

结合场景来理解内网穿透技术的适用范围。

先了解一下,内网有哪些限制?

1.IP不固定,一段时间会自动切换。

2.不能直接访问,只能在同一个网络中访问。

3.敏感端口被封,不能用。例如80 443端口。

4.网速不稳定,下载不满速,上载低速。

公网的优缺点:

1.贵,服务器贵,带宽贵,IP贵。

2.IP固定,端口全开放。

3.带宽稳定,BGP多线路融合,响应速度快。

另外还要补充:

域名的注册和解析

大陆地区的域名需要ICP备案

服务器80端口的HTTP协议,web需要

服务器443端口的HTTPS协议,需要SSL证书

现在结合场景来介绍内网穿透的适用范围:

场景1:开发人员本地调试接口

描述:程序员给项目添加服务,例如短信服务,支付服务,需要在本地写代码、调试和测试。

特点:本地调试、网速要求低、需要HTTP或者HTTPS协议。

需求:必须本地,必须HTTP[S]网址。

场景2:远程办公,在家访问公司内部系统和存储服务

描述:疫情原因需要在家工作,又需要访问公司内部的系统。

特点:远程访问、具体协议不固定、远程时间不固定,可长可短。

特殊:出差的时候,手机上看家里电脑上的资料和视频。

场景3:公网访问局域网的私人存储

描述:家有私人存储,映射到公网,随时随地可以存取文件。

特点:网址或者IP地址都行,需要稳定的通道和传输带宽。

场景4:搭建私人游戏服务器,和伙伴开黑

描述:用自己的电脑做服务器,和小伙伴玩魔兽争霸、我的世界

特定:带宽要求不高,响应速度要求高,只需要IP

 

3. 内网穿透原理和常用方法

既然内网主机不能直接访问,那就在公网弄个服务器。

因为内网主机可以访问公网主机,然后将内网主机和公网主机进行连接,并且保持连接。

如果公网主机接收到的请求,通过链接转发给内网主机即可。

将内网服务进行公网映射,服务通常从端口提供服务,例如:

ssh服务,端口好似22

web服务,端口是80和443

远程桌面服务,端口是3389,win专业版支持远程桌面

redis服务,端口是6379

驰网科技服务器租用端口是80 --艾西

我的世界Minecraft游戏服务端口是25565

CS:GO游戏服务端口是27015

方舟生存进化的游戏服务端口是27015、27016、77771

使命召唤:先锋》平台 TCP UDP PC 3074, 27014-27050 3074-3079

如下图:

 

 

这个就是内网穿透的思路。

有了思路,怎么实现?实现的重点是主机连接并且保持长久连接。

实现的方法有几种,这里都来介绍一下:

基于TCP的Socket连接

基于SSH的反向代理

基于WebSocket连接

【当然除此之外,还有其他方法,有知道的可以在评论区补充。】

感兴趣的小伙伴看到这里啦喜欢的记得点赞加关注!

1. 基于TCP的Socket连接

Socket连接是计算机网络课程中的基础编程题,你们肯定都做过,《基于TCP的Socket连接做一个命令行版聊天室》

下图是Socket的通信模型

 

 

基于TCP的Socket连接,是一种可靠的连接形式,适合将两个主机的端口进行绑定并保持连接。

因为Socket需要客户端和服务端,所以Socket做内网穿透,需要客户端。

既然需要做客户端,通常各服务商的操作,是接入更多的处理,例如智能选择节点等,客户使用就更简单更智能。

优点:智能选择节点,操作完全可控

缺点:安装客户端,响应速度慢

2. 基于SSH的反向代理

SSH,全称Secure SHell,一个安全加密协议。

OpenSSH是遵循协议实现的一个免费开源工具,日常说的SSH,指的是这款软件。

几乎所有的Linux和Macos都自带这款软件,Win10和11都自带,Win7需要借助第三方终端。

SSH支持远程控制和代理,代理有正向代理、反向代理、socks5代理。

反向代理的操作,就是让远端启动端口,把远端端口数据转发到本地。

HostA 上启动一个 PortA 端口,通过 HostB 转发到 HostC:PortC上,在 HostA 上运行:

反向代理:

HostA$ ssh -R HostC:PortC:HostB:PortB  user@HostC

使用SSH做内网穿透,好处是无客户端,基本上每个操作系统都内置了SSH。

优点:安全可靠,无客户端,响应速度快

缺点:单一节点

 

3. 基于WebSocket连接

WebSocket 协议诞生于 2008 年,在 2011 年成为国际标准,并且 WebSocket 同样是 HTML 5 规范的组成部分之一。

WebSocket 是一种全新的协议。它应用在了 web page 上,从而使通信双方建立起一个保持在活动状态连接通道,并且属于全双工(双方同时进行双向通信)。

WebSocket和Socket的工作模式差不多,不同点是WebSocket工作在Web网页上。

WebSocket和Socket一样,需要客户端配合服务端工作,所以用户需要配置双端,才可以使用。

内网转发的安全问题

有利肯定就有弊,将本地服务器暴露在公网,也有不好的地方。

第一个:公网主机端口被扫描

网络上到处都有爬虫机器人抓数据和扫描接口【抓肉鸡】。

内网主机由于无法访问,所以你开放端口是没啥安全问题的。

但是部署到公网后,就要注意安全问题。

解决方法:

记录端口访问日志并定时检查

端口伪装,例如22->34423, 3306->42887

端口定时更换,或动态端口号

第二个:DDoS攻击

这个是针对服务器来说的,并非某个端口。

何为DDoS?一般来说是指攻击者利用“肉鸡”对目标网站在较短的时间内发起大量请求,大规模消耗目标网站的主机资源,让它无法正常服务。

自由服务器需要考虑下,解决方法很多,如下:

高防服务器,重点提高服务器的流量防御能力。

黑名单,统一封锁大量或区域IP,可能会关闭了正常流量。

DDoS清洗,实时检查请求,发现奇怪请求直接关闭链接。

总结:按实际情况来决定最后的选择,有机房硬防火墙还是很安全,自己个人做内网穿透多多少少对业务会有一定的影响。一个东西他属于哪里就让他在哪里好好待在保证业务的正常运转,在这网时代有时候服务器不稳定几秒几分钟就会损失一些比较多的Money。

我是驰网艾西喜欢的记得点赞+关注 携手驰网一同探索

(有一台服务器可以做很多超酷的事情)


http://chatgpt.dhexx.cn/article/RVZSWFlZ.shtml

相关文章

内网穿透的作用 免费内网穿透有哪些 可以用来干什么

相信有很多人都会被一个问题所困惑,我们在日常办公和生活中;一些内网访问的应用,如何让实现在任意外网进行链接访问呢?有人说可以用内网穿透 内网穿透具体是什么,原理是什么;今天我们用网云穿来做演示。内…

重启路由器可以换IP吗

想换IP有哪些方法可以实现?有时候IP被限制了,怎么换IP访问,重启路由器可以换IP吗?一般家庭的基于PPPOE拨号方式上网的,使用的是动态IP,可以更换IP,下面一起去看看如何重启路由器: 1、断电源重启…

矩阵切换器有哪些控制方式,有什么好处

矩阵切换器有哪些控制方式呢?矩阵切换器,可以使用网络控制,app控制,web等方式控制。 一、网络控制是指设备加一个网络模块使得在一个局域网内电脑进行控制。 二、app控制是指设备加一个app控制模块,使得手机&#xf…

vmware 静态ip上网 防止切换网络换ip

问题:因为电脑有的时候用公司wifi、手机热点、或家里的wifi进行上网。但要保证vmware虚拟机固定ip且能访问网络。 一、安装好虚拟后在菜单栏选择编辑→ 虚拟网络编辑器,打开虚拟网络编辑器对话框,选择Vmnet1 Net网络连接方式,随意…

手机如何远程连接服务器

所有VPS均同时支持MSTSC、VNC和手机远程控制,本篇为手机连接教程 0、首先下载安装APP微软的RD Celient 1、运行RD Celient ,点击右上角的加号 2、然后在谈出的窗口选择Desktop来添加远程服务器地址 3、Host name or ip address这里填远程服务器的连接地址…

SOME/IP与SOME/IP SD规范介绍

此文标准来源于AUTOSAR_PRS_SOMEIPProtocol.pdf(R21-11)和AUTOSAR_PRS_SOMEIPServiceDiscoveryProtocol.pdf(R21-11); 1. 前言 AOTOSAR – AUTomotive Open System ARchitecture,汽车开发系统体系结构; SOME/IP – Scalable service-Orient…

什么是IP转换器?我们看看IP转换器的原理与应用及了解它的一些功能和用途

海外用户访问国内网站看视频/下东西/玩游戏 ; 代理电脑或者手机IP地址,显示不同地区和城市IP。 国内用户玩游戏,电信 联通 网通 互转 降低延迟,加快速度。 完善的加密技术,全面保护信息安全 特性:安全 稳定 高速。 可以…

Selenium小技巧 修改ip+ua 改变窗口大小 手机模式 加载本地缓存

修改ip 可以通过代理api取到proxy,实现切换全国ip proxy 0.0.0.0:6666# 设置代理chrome_options.add_argument(--proxy-server%s % proxy)# 注意options的参数用之前定义的chrome_optionschrome webdriver.Chrome(optionschrome_options)chrome.get(https://www…

网络基础之网络协议,OSI,TCP/IP介绍

文章目录 1 概述1.1 网络协议1.2 OSI模型1.2.1 应用层1.2.2 表示层1.2.3 会话层1.2.4 传输层1.2.5 网络层1.2.6 数据链路层1.2.7 物理层 1.3 TCP/IP参考模型1.3.1 网络接入层1.3.2 网络层1.3.2.1 IP1.3.2.2 ICMP1.3.2.3 ARP 1.3.3 传输层1.3.4 应用层1.3.4.1 HTTP1.3.4.2 POP31…

GPS、基站、IP定位的区别及其应用方向

在手机、电脑等电子设备与我们如影随形的今天,有多少种定位方式可以了解到“我们在哪”,谁拥有了解我们位置的权限,以及不同定位方式的区别到底是什么? 相信不少人有这样的疑问:公安、消防、医院部门是怎么准确定位嫌…

Linux 虚拟机配置静态IP地址

配置环境 虚拟机:CentOS 7 VMware 12.1.0 配置步骤 关闭虚拟机,查看网关 查看网关IP地址,“编辑”->“虚拟网络编辑器” 选择NAT设置 可以看到网关的IP地址为:192.168.243.2 开启虚拟机 查看ip地址时,我们看…

用计算机可以定位到手机吗,如何使用计算机定位手机的位置?

如何使用计算机定位手机的位置? 现在,移动电话已经成为人们随身携带的“手持计算机”,并且移动电话的使用更加方便和多样化. 廉价智能手机的兴起激起了一股热情,人们的需求也在增长,用户更倾向于高价位,高价…

IP-ECN简介

IP-ECN简介 该文部分转载,部分自我翻译rfc3168标准。 一、背景 当中间路由器队列过载导致丢包后,所有主机的TCP连接并不立即感知到,而是在定时器超时之后,由于没有收到ACK,开始重传报文。而这个定时器的时间相对较长…

如何更改IP地址使用代理ip软件

如果您想更改家用计算机上的 IP 地址,有几种方法可能适合您——有些简单,有些则不然。在尝试下面描述的更复杂/技术方法之前,您可以尝试一些非常简单的方法。   只需关闭或拔下调制解调器约五分钟。(您不必关闭计算机。)在许多情况下&…

网络基础 ------- UDP、TCP及IP协议详解

目录 UDP协议 1.UDP报文结构 报文长度 校验和 TCP协议 1.TCP报文结构 2.TCP的可靠传输机制 1.确认应答 2.超时重传 3.连接管理 4.滑动窗口 5.流量控制 6.拥塞控制 7.延时应答 8.捎带应答 9.粘包问题 10.TCP异常处理 小结 TCP VS UDP IP协议 1. ip报头结构 …

手把手教你android手机怎么修改自己的ip地址方法

第一步:网上搜索软件名称深度IP转换器 下载正版软件并注册账号密码登录 第二步:打开软件连接国内任何城市IP根据自己需要连接自己需要的IP 第三步:连接成功无限其他任何设置,IP就变成那个城市了、 4.此时我们打开百度查下IP看看是…

VMware设置静态IP

系统版本:Centos7 VMware刚安装完Centos7的镜像需要设置成静态IP,防止宿主机在切换公司网和手机网时虚拟机IP变动,特此记录 网络连接模式设置为自定义 VMnet8 虚拟网络编辑器设置 修改网络配置 执行 /etc/sysconfig/network-scripts/ifcfg-ens33 修改配置信息 IPADDR就是要…

android绑定两个ip,安卓手机模拟器如何多开切换IP防封号的最新方法介绍

原标题:安卓手机模拟器如何多开切换IP防封号的最新方法介绍 很多手游玩家、工作室和网吧用户想在电脑上登手机游戏,其实在电脑上装一个手机模拟器就可以了, 而且可以改不同的IP地址,实现游戏无限多开,今天小编就来为大…

ip地址切换器如何切换电脑或者手机上网ip使用教程

简述:ET代理是一款高效率的换ip软件,IP覆盖国内200多个城市,每天更新60多万动态IP,静态ip高达1400多条,支持动态线路和静态线路使用,软件无需设置千万ip任意切换。软件支持电脑,安卓手机,苹果手机等设备使用,支持l2tp/pptp连接。 ET代理换IP软件如何使用 一、下载ET…

基于javaweb的音乐网站

Springboot springmvc mybatis 数据库mysql 开发工具不限 前台 html css js 实现了注册、登陆、权限校验、上传歌曲、下载歌曲、播放歌曲、删除歌曲、个人歌单、后台:用户管理 mv上传/播放 歌曲新增、删除 点赞、踩、评论功能 .