在通常情况下,内网是指家庭网络或企业内部网络,因为经过路由器等网络设备,且地本地网络计算机等资源使用的网络地址属于私有IP范围,一般别人无法直接访问到你的内网。然而,在某些特定需求下,可能需要让外部人员访问内网中的资源,以下是一些常见的实现方式,包括常见的VPN、RDP、路由设置、nat123映射工具、代理服务、等,但请注意,这些方法需要谨慎使用,并确保采取适当的安全措施来保护内网安全。
一、虚拟专用网络(VPN)
虚拟专用网络是通过在公共网络上建立加密隧道,将外部用户的流量安全传输到企业内网的方法。用户可以通过虚拟专用网络连接到内网,享受与直接连接内网一样的资源访问权限。
优点:安全性和灵活性较高,通过使用加密协议,可以保护数据的隐私和完整性,阻止未经授权的访问;可在任何有 internet 连接的地方实现远程访问。
缺点:设置和维护可能需要一定的技术知识,并且连接速度可能受到公共网络的限制。
二、远程桌面协议(RDP)
远程桌面协议允许用户通过互联网从远程位置访问和控制内网中的计算机。通过 RDP,用户可以远程登录到内网计算机,并在自己的计算机上查看和操作内网计算机的界面。
优点:提供实时的界面共享和直接访问内网资源的能力,用户可以像使用本地计算机一样操作远程桌面,而不需要在本地安装应用程序。
缺点:需要进行适当的安全配置,以避免潜在的攻击;连接速度可能受到互联网带宽限制的影响。
三、网络硬件端口映射
端口映射也叫虚拟映射,是在连接外网的路由器上做一个端口映射的设置,将访问该路由器外网地址和特定端口的服务映射到内网的一台电脑的某一个端口上。步骤如下:
确定拥有公网 IP:联系网络服务提供商(如运营商),要求分配公网 IP。但需注意,运营商通常只对公司分配固定公网 IP,且公司需申请公司宽带,个人用户较难获得。若公网 IP 是动态的,可采用申请固定 IP 或域名服务的方法解决。
设置端口映射:以华为路由器为例,登录路由器,找到端口映射相关设置选项,添加映射规则,将外网访问的特定端口(如 10101)映射到内网电脑的对应端口(如 10101)。
访问内网:在外网浏览器中输入公网 IP 和映射的端口(如 122.15.244.39:10101),即可访问内网对应的服务或资源。
注意事项:
选择外部端口时,避免常用的 80、21 等端口,因为路由器可能会屏蔽这些端口。服务器需要连接到包含公网 IP 的服务器上。
四、隧道技术
常用的隧道技术包括 SSH(Secure Shell)和 SSL(Secure Sockets Layer)等。通过隧道技术,可在公共网络上建立加密通道,将内网数据封装传输到外部网络,从而实现安全访问内网。
优点:配置和管理相对复杂,但安全性较高,且不受公共网络速度的限制。
五、反向代理
通过在公共网络上设置代理服务器,使外部用户可以访问内网资源。代理服务器充当中间人,接收来自外部用户的请求,并将其转发到内部服务器上。
优点:可以确保内网服务器的隐藏,提供更好的安全性,同时可以对访问进行控制和过滤。
缺点:可能会增加延迟,对网络性能产生一定影响。
六、内网穿透工具/网址端口映射软件
例如使用nat123等内网穿透工具,一种通用的内网本地网址开放给互联网使用的方案,因为不用公网IP,也不用路由权限设置,所以得到较为广泛的应用。其操作步骤大致如下:
1、下载并登录nat123软件。
2、注册nat123帐号并登录进入客户端软件,主界面“添加映射”界面进入,点击打开内网映射。
填写应用名称、映射类型、内网主机(即想被公网访问的那台电脑 IP 地址)和内网端口(希望被映射的端口)、外网地址(自己域名或分配的二级域名)和外网端口(自动生成或自定义)。
3、确认保存后,主界面客户端窗口会自动对应增加一条映射记录,此信息会同时显示包括内网地址外网地址,当映射生效后,其他上网环境下使用分配的域名和端口或自己的域名,就可以访问内网主机(或某指向的内网端口程序)。
七、FRP 内网穿透(通常用于自建端口转发服务)
FRP 是一种快速反向代理工具,可用于实现外网访问内网。
先准备好FRP 资源包、和公网服务器。具体步骤:
1、服务器端:
下载:使用 wget 命令下载 FRP 安装包。
解压:tar -zxvf frp_版本号_linux_amd64.tar.gz。
修改配置文件 vim frps.ini,配置 bind_port(绑定端口)等信息,如 common 部分的 bind_port=7000。若仅使用代理功能,仅配置 bind_port 即可。
启动服务:./frps -c frps.ini,若出现相关信息则启动成功,也可搭配 nohup 后台命令使用。
2、客户端(内网机器):
同样进行下载和解压操作。修改客户端配置文件 vim frpc.ini,将 common 部分的 server_addr 设置为服务器公网 IP 地址,server_port 为服务器配置的端口,如 server_addr=x.x.x.x,server_port=7000;根据需求设置其他部分,如 ssh 的 type=tcp,local_ip=127.0.0.1,local_port=22,remote_port=6000 等。
启动客户端:./frpc -c frpc.ini。
若服务器使用的是云服务器,需配置端口,通常在实例安全组->配置规则->访问规则中添加相应端口范围,否则启动客户端 FRP 时可能会超时连接,被安全组阻止了。
让别人访问内网需要一定的技术知识和谨慎操作。在实施之前,请充分了解相关风险,并根据实际需求和安全要求选择合适的方法。同时,建议仅在必要的情况下开放内网访问权限,并密切关注网络安全状况。