【计算机网络相关】内网穿透介绍以及使用FRP实现内网穿透Windows远程桌面

这篇具有很好参考价值的文章主要介绍了【计算机网络相关】内网穿透介绍以及使用FRP实现内网穿透Windows远程桌面。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


❤️觉得内容不错的话,欢迎点赞收藏加关注😊😊😊,后续会继续输入更多优质内容❤️

👉有问题欢迎大家加关注私戳或者评论(包括但不限于NLP算法相关,linux学习相关,读研读博相关......)👈

1. 内网穿透介绍

1.1 本人对内网穿透的理解

一般来说,如果在公网环境是无法访问到内网的设备,如在学校或者公司是无法访问到家里的设备的,但是有时候往往有需要远程访问家里设备的需求,如远程访问家里的NAS存储,远程访问家里的一些智能设备等。一般来说家里的网络设备是没有固定的公网IP的(听说可以跟运营商申请公网IP,如果能申请到公网IP的话,可以在路由器端设置端口映射即可访问家里的一些设备了),所以想要公网环境访问内网资源的话,就需要一台具有公网IP的服务器作为媒介(或者说是信使),利用内网穿透技术,将内网的一些设备的数据包进行转发,从而实现公网环境访问内网的设备。公网服务器充当的是一个数据交换的作用,我们访问公网IP,然后公网服务器将我们访问的数据转发到内网设备的IP,内网设备将数据在转发给公网服务器,公网服务器将数据转发给本地客户机,从而实现内网穿透,在任何地方访问内网设备。

1.2 百度百科介绍

内网穿透,也即 NAT 穿透,进行 NAT 穿透是为了使具有某一个特定源 IP 地址和源端口号的数据包不被 NAT 设备屏蔽而正确路由到内网主机。下面就相互通信的主机在网络中与 NAT 设备的相对位置介绍内网穿透方法。

1.3 网络上一些资源的介绍

内网穿透即NAT穿透,网络连接时术语,计算机是局域网内时,外网与内网的计算机节点需要连接通信,有时就会出现不支持内网穿透。就是说映射端口,能让外网的电脑找到处于内网的电脑,提高下载速度。不管是内网穿透还是其他类型的网络穿透,都是网络穿透的统一方法来研究和解决。NAT穿透,nat穿透中有关于网络穿透的详细信息。
端口映射,其实就是常说的NAT地址转换的一种,其功能就是把在公网的地址转翻译成私有地址, 采用路由方式的ADSL宽带路由器拥有一个动态或固定的公网IP,ADSL直接接在HUB或交换机上,所有的电脑共享上网。在局域网内部的任一PC或服务器上运行到内网穿透客户端,此时域名解析到的IP地址是局域网网关出口处的公网IP地址,再在网关处做端口映射指向监控设备即可。

2. 实现内网穿透的几种途径

2.1 各种已有的内网穿透服务商

正所谓有需求就会有市场,有很多做内网穿透服务的服务商(如花生壳、易有云等等,我就不列举了,避免恰饭的嫌疑),通过他们可以非常方便地实现内网穿透,只需要注册账号,按照简洁的操作说明设置一下,即可实现内网穿透。哦对了,最后别忘记付钱。
直接购买内网穿透服务有几个不好的地方。
(1)一般它是按照设备数进行付钱的,如果你家里有多台设备需要公网访问的话,需要花费较大的代价。
(2)其次它的带宽也比较贵,想要一个好的内网穿透服务就需要比较大的带宽支持。
(3)作为一名技术出身的人员,总觉得把命运交给别人不太舒服,内网穿透技术的实现并不复杂,为什么自己不去弄一个呢?

2.2 利用反向代理技术实现内网穿透

说人话就是利用代理技术访问内网设备,为什么叫反向代理呢,主要是,正常的代理是将用户发送给服务器的数据包(内网设备发送的数据包)转发到目标地址,而反向代理是将别人发送给服务器的数据包(外网环境的设备发出的数据包)转发到用户的客户端(即内网设备)。

反向代理服务器位于用户与目标服务器之间,但是对于用户而言,反向代理服务器就相当于目标服务器,即用户直接访问反向代理服务器就可以获得目标服务器的资源。同时,用户不需要知道目标服务器的地址,也无须在用户端作任何设定。反向代理服务器通常可用来作为Web加速,即使用反向代理作为Web服务器的前置机来降低网络和服务器的负载,提高访问效率。

2.3 好用的内网穿透软件 ——FRP

frp 是一个专注于内网穿透的高性能的反向代理应用,支持 TCP、UDP、HTTP、HTTPS 等多种协议。可以将内网服务以安全、便捷的方式通过具有公网 IP 节点的中转暴露到公网。

frp内网穿透,windows,网络,服务器

通过在具有公网 IP 的节点上部署 frp 服务端,可以轻松地将内网服务穿透到公网,同时提供诸多专业的功能特性,这包括:

  1. 客户端服务端通信支持 TCP、KCP 以及 Websocket 等多种协议。
  2. 采用 TCP连接流式复用,在单个连接间承载更多请求,节省连接建立时间。
  3. 代理组间的负载均衡。 端口复用,多个服务通过同一个服务端端口暴露。
  4. 多个原生支持的客户端插件(静态文件查看,HTTP、SOCK5 代理等),便于独立使用 frp 客户端完成某些工作。
  5. 高度扩展性的服务端插件系统,方便结合自身需求进行功能扩展。
  6. 服务端和客户端 UI 页面。

3. 使用FRP实现内网穿透

3.1 准备条件

(1)一台具有公网IP的服务器,在腾讯云,阿里云或者华为云等云服务商处购买,双十一一般会有活动,但是最近经济不太景气,云服务价格没有太大的优惠,我当时购买的是腾讯云的轻量应用服务器,新用户只需要198就可以购买三年的服务器,可以说是相当划算了。(需要在服务器管理的防火墙设置里放行需要的端口)
(2)frp软件
点击链接可进入软件下载列表,一般选择最近的发行版前一个版本即可,截止2022.21.04日发行版本是0.45.0,于是我选择0.44.0版本。
frp内网穿透,windows,网络,服务器
按照对应的系统下载对应的文件,需要注意的是,服务端和客户端的软件版本需要保持一致。
frp内网穿透,windows,网络,服务器
上图是frp软件的文件列表,不管是哪个系统版本的软件均存在以上几个文件,其中frpc和frps分别是客户端和服务端的二进制文件,不需要进行任何修改,需要修改的是frpc.ini和frps.ini两个文件。

3.2 服务端设置

将frps.ini修改成如下:

[common]
bind_port = 7000#用于frp服务客户端和服务端通讯的端口,需要再服务器防火墙设置里面放行该端口,例如:7000。
auto_token = Ba9SI3do718tCwu67V0qk4l5iNG6sAm1DJYzUO8TZxF9y6c52g0K4XLRQfjeW4bn #用于加密的token 可以使用强密码生成器(http://www.wetools.com/password-generator)生成一个64位强密码。例如:Ba9SI3do718tCwu67V0qk4l5iNG6sAm1DJYzUO8TZxF9y6c52g0K4XLRQfjeW4bn。
dashboard_port = 7001#用于frp服务管理端口,需要在服务器防火墙设置里面放行该端口,例如:7001。
dashboard_user = user#frp服务管理用户名。
dashboard_pwd = password#frp服务管理密码。

一般服务端建议使用linux服务器,比较稳定,将上述配置修改好之后,可以运行以下命令将该服务后台运行:

nohup ./frps -c frps.ini > ./frps.log &

3.3 客户端设置

将frpc.ini修改成如下:

[common]
server_addr = 1.1.1.1 #服务器公网ip,例如1.1.1.1
server_port = 7000 #用于frp服务客户端和服务端通讯的端口,需要再服务器防火墙设置里面放行该端口,例如:7000,需要与服务端bind_port保持一致。
auto_token = Ba9SI3do718tCwu67V0qk4l5iNG6sAm1DJYzUO8TZxF9y6c52g0K4XLRQfjeW4bn #用于加密的token 可以使用强密码生成器(http://www.wetools.com/password-generator)生成一个64位强密码。例如:Ba9SI3do718tCwu67V0qk4l5iNG6sAm1DJYzUO8TZxF9y6c52g0K4XLRQfjeW4bn,需要与服务端auto_token保持一致。
#以下为内网穿透客户端7002端口到服务端7003端口的实例。如果有多个内网穿透设置,只需要将以下内容复制多次接到文件后面即可。
[7003_to_7003]#内穿穿透的连接名称,可以自定义,如ssh。
type = tcp#链接协议类型,如tcp,http等,具体需要依据穿透的服务进行设置。
local_ip = 127.0.0.1#本地ip,一般是127.0.0.1
local_port = 7002#本地连接的端口,如内网穿透ssh远程连接,就是22端口,Windows远程桌面是3389端口,具体的需要根据服务类型进行设置。
remote_port = 7003#用于frp服务客户端和服务端通讯的端口,需要再服务器防火墙设置里面放行该端口,例如:7000,这个端口不能与服务端bind_port设置成同一个,且每一个内网穿透均需要单独设置一个remote_port。

如果客户端是linux系统的话,可以运行以下命令让其在后台自动运行:

nohup ./frpc -c frpc.ini > ./frpc.log &

如果是Windows系统的话,可以参考下一章节的示例。

4. 使用frp内网穿透Windows远程桌面示例

4.1 准备条件

(1)公网服务器(自行购买)
(2)frp软件(点击链接下载)
(3)winsw软件(点击链接下载)

4.2 服务端和客户端配置

将frps.ini修改成如下:

[common]
bind_port = 7000#用于frp服务客户端和服务端通讯的端口,需要再服务器防火墙设置里面放行该端口,例如:7000。
auto_token = Ba9SI3do718tCwu67V0qk4l5iNG6sAm1DJYzUO8TZxF9y6c52g0K4XLRQfjeW4bn #用于加密的token 可以使用强密码生成器(http://www.wetools.com/password-generator)生成一个64位强密码。例如:Ba9SI3do718tCwu67V0qk4l5iNG6sAm1DJYzUO8TZxF9y6c52g0K4XLRQfjeW4bn。
dashboard_port = 7001#用于frp服务管理端口,需要在服务器防火墙设置里面放行该端口,例如:7001。
dashboard_user = user#frp服务管理用户名。
dashboard_pwd = password#frp服务管理密码。

运行以下命令将该服务后台运行:

nohup ./frps -c frps.ini > ./frps.log &

将frpc.ini修改成如下:

[common]
server_addr = 1.1.1.1 #服务器公网ip,例如1.1.1.1
server_port = 7000 #用于frp服务客户端和服务端通讯的端口,需要再服务器防火墙设置里面放行该端口,例如:7000,需要与服务端bind_port保持一致。
auto_token = Ba9SI3do718tCwu67V0qk4l5iNG6sAm1DJYzUO8TZxF9y6c52g0K4XLRQfjeW4bn #用于加密的token 可以使用强密码生成器(http://www.wetools.com/password-generator)生成一个64位强密码。例如:Ba9SI3do718tCwu67V0qk4l5iNG6sAm1DJYzUO8TZxF9y6c52g0K4XLRQfjeW4bn,需要与服务端auto_token保持一致。
[mstsc]#内穿穿透的连接名称,可以自定义,如ssh。
type = tcp
local_ip = 127.0.0.1
local_port = 3389#Windows远程连接端口
remote_port = 7003#用于frp服务客户端和服务端通讯的端口,需要再服务器防火墙设置里面放行该端口,例如:7000,这个端口不能与服务端bind_port设置成同一个,且每一个内网穿透均需要单独设置一个remote_port。

打开命令提示符,进入frp软件所在路径,运行以下命令:

frpc.exe -c frpc.ini

即可实现通过ip:remote_port实现公网远程登录Windows桌面,如下:
frp内网穿透,windows,网络,服务器
其中用户名和凭证是Windows系统的用户名和密码,不是frp服务的用户名和密码

4.3 注册frp服务为Windows系统服务实现开机自启动

由于远程连接的电脑一般是不通过物理连接访问的,但是Windows系统经常会自动更新重启,每次重启的时候frp服务均会中断运行,需要手动恢复,往往这个时候电脑不在身边。最好的办法就是设置开启自启动。可以通过winsw软件实现将其注册成Windows系统服务实现开机自启动。
首先需要下载winsw软件
将下载好的文件改名为winsw.exe,放到frp相同的目录里,并在同一个目录里创建一个utf8编码的文本文件,文件名是 winsw.xml,内容是:

<service>
    <id>frp</id>
    <name>frp服务</name>
    <description>frp内网穿透服务</description>
    <executable>frpc</executable>
    <arguments>-c frpc.ini</arguments>
    <onfailure action="restart" delay="60 sec"/>
    <onfailure action="restart" delay="120 sec"/>
    <logmode>reset</logmode>
</service>

接着以管理员权限打开一个命令提示符
frp内网穿透,windows,网络,服务器
切换到到frp所在目录,执行:

winsw install
winsw start

如果要卸载服务,执行命令:

winsw stop
winsw uninstall
tips

在Windows10以上系统中,Windows Defender在运行过程中,经常会把frp软件当做木马进行隔离,这样就会导致frp服务启动失败,因此我们需要给frp服务添加进Windows Defender的信任区,这样就可以避免被当做病毒杀掉。具体如下:
首先进入Windows设置的更新与安全,
frp内网穿透,windows,网络,服务器
然后进入Windows安全中心,
frp内网穿透,windows,网络,服务器
打开Windows安全中心,
frp内网穿透,windows,网络,服务器
进入病毒和威胁防护,病毒和威胁防护设置,打开管理设置。
frp内网穿透,windows,网络,服务器
然后下滑到最下面,添加排除项,将frp所在的文件夹添加到排除项里面即可。
frp内网穿透,windows,网络,服务器

参考文献

[1] 内网穿透百度百科 https://baike.baidu.com/item/%E5%86%85%E7%BD%91%E7%A9%BF%E9%80%8F/8597835
[2] 什么是内网穿透?内网穿透有什么用?https://hsk.oray.com/news/7244.html
[3] FRP介绍 https://github.com/fatedier/frp/blob/dev/README_zh.md
[4] 反向代理百度百科 https://baike.baidu.com/item/%E5%8F%8D%E5%90%91%E4%BB%A3%E7%90%86/7793488
[5] FRP内网穿透Windows远程桌面 https://www.cnblogs.com/ingxx/p/12255241.html文章来源地址https://www.toymoban.com/news/detail-790640.html


❤️觉得内容不错的话,欢迎点赞收藏加关注😊😊😊,后续会继续输入更多优质内容❤️

👉有问题欢迎大家加关注私戳或者评论(包括但不限于NLP算法相关,linux学习相关,读研读博相关......)👈

到了这里,关于【计算机网络相关】内网穿透介绍以及使用FRP实现内网穿透Windows远程桌面的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 计算机网络——CSMA/CD协议以及相关习题

    目录 前言 引言 CSMA/CD协议 CSMA与CSMA/CD的区别 CSMA/CD流程 本博客是博主用于复习计算机网络的博客,如果疏忽出现错误,还望各位指正。 最早的以太网,许多计算机都连接在一根总线上工作——广播通信方式。 总线的特点想必不用多说, 当一台计算机发送数据时,总线上所有

    2024年04月13日
    浏览(51)
  • 《计算机网络》实验八 应用层相关协议分析

    实验八 应用层相关协议分析.............................................................................................. 2 一、实验目的.................................................................................................................... 2 二、实验原理.......................................................................

    2024年02月03日
    浏览(49)
  • 计算机网络(1) --- 网络介绍

    目录 1.介绍协议 基础知识 协议 协议分层 OSI七层模型 2.TCP/IP五层模型 3.网络传输的基本流程 1.基本知识 协议报头 2.局域网通信的基本流程 3.网络传输流程 局域网分类 跨路由器传输 数据包封装和分用 4.网络中的地址管理 1.IP地址 2.MAC地址 3.区别 1.其实所谓的互联网可以看成一

    2024年02月15日
    浏览(41)
  • 计算机网络-物理层基本概念(接口特性 相关概念)

    求极限传输速率:奈氏准则,香农定理(背景环境不一样) 编码:数据变成数字信号 调制:数字信号变成模拟信号 信道不同传输 数据形式不同 数据交换方式:核心(打电话是电路交换) 导向传输介质:看得见的 非导向传输介质:看不见的 传输介质并不属于物理层,它们

    2024年01月24日
    浏览(49)
  • HNU-计算机网络-实验5(自选)-安全相关编程实验

    计科210X 甘晴void 202108010XXX 【前言】 这个《课程综合实验》是21级开始新加的实验,之前都没有。具体的可以看实验指导书,是用的19级同学的毕设。我完成的这个实验需要一点点RUST基础,感觉还是有一点点难度。 从以下6个实验中选择一个完成 实验一 TCP连接与泛洪攻击实验

    2024年01月19日
    浏览(40)
  • 【网络技术】计算机网络介绍

    计算机网络是指将多台计算机连接起来,使它们能够相互通信和共享资源的系统。 它是现代计算机科学中的重要分支之一,为全球范围内的信息交流和数据传输提供了基础。 本文将介绍计算机网络的基础概念、体系结构、协议、常见问题等的知识。 计算机网络是由若干台计

    2024年02月13日
    浏览(47)
  • 计算机网络相关-ip地址,子网掩码与网络地址,广播地址

    计算机网络基础(进制转换和IP地址详解)_ip地址进制转换方法_码海小虾米_的博客-CSDN博客 总的来说,ip地址用点隔开,用4个0-255之间的十进制数表示,如192.168.65.98 有这样的题:告诉你ip地址和子网掩码位数,求网络地址和广播地址。 一般给出的信息是这样的:192.168.65.98

    2024年02月07日
    浏览(53)
  • 计算机网络——VLan介绍

    学习视频: 网工必会,十分钟搞明白,最常用的VLAN技术_哔哩哔哩_bilibili 技术总结:VLAN,网络中最常用的技术,没有之一_哔哩哔哩_bilibili 全国也没几个比我讲得好的:VLAN虚拟局域网 本来补充了声音好的版本,但还是有人喷,不好意思就删了,回头补充声音好的版本。GTl

    2024年02月16日
    浏览(39)
  • 计算机网络——第一章体系结构相关习题及详细解析

    在OSI参考模型中,自下而上第一个提供端到端服务的层次是: A.数据链路层        B.传输层        C.会话层        D.应用层 答案选择: B.传输层 即, 在OSI参考模型中,自下而上第一个提供端到端服务的层次是传输层。  解析 为了解决这道题,我们首先要了解OSI体系结构

    2024年02月08日
    浏览(42)
  • 计算机网络c类网络划分子网介绍

    一个单位有一个c类网络200.1.1,它有四个部门,主机数分别为: a部门72台,b部门35,c部门20,d部门18台,考虑划分子网: (1)给出一个可能的子网划分及其子网掩码 www.yii666.net (2)如果部门d的主机台数增至34台,该方案还可行吗?该怎么办? C类网络默认子网掩码255.255.255.02^

    2024年02月05日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包