新闻资讯

实现外部人员对企业内网不能访问的目的应该如何做?

2019-01-2

如今,人们为了保障网络应用安全,限定访问范围,如企业、学校,都会有自己的网络,其他外部人员对企业的内网不能访问。要想外网访问内网,需进行内网穿透,才能解决访问难题。

1.注册花生壳官网账号: https://hsk.oray.com/

2.内网穿透:花生壳管理->内网穿透->添加映射 http://service.oray.com/question/2480.html

首先简单说一下花生壳,这是一个提供动态域名解析服务的商业化产品。所谓域名解析,常被称作DNS,也就是将对人类友好的域名与对计算机友好的点分式IP地址做关联的一个系统服务。打个比方,这个服务类似于手机里面的通讯录软件,它的作用就是将人能记住的姓名与一串毫无意义,很难记忆的电话号码关联起来。那么拨电话时,只需要在通讯录中查找姓名就可以了。

在大多数情况下,通讯录软件都能很好的工作,可正如这个世界本身的不完美,完美的软件也不存在,通讯录一个最明显的bug就是,一旦有人换了号码,通讯录就无法跟踪这种变化。回到我们讨论的DNS,情况就成了这样:有人申请了一个域名,在自己的笔记本电脑上做了一个网站,并将网站的域名关联到自家上网的IP地址后,全世界任何一个角落的人都可以通过这个域名访问他的网站。可如果这个人白天是在工作单位使用笔记本电脑呢,此时只能通过工作单位的IP才能访问网站,但是DNS那里登记的却是一个家庭IP,于是网站成了一个悲剧。

花生壳很好的修正了这个bug,如果域名所对应的IP地址经常会更换,那么可以注册后使用花生壳的软件,之后无论在哪里上网,域名都会和当前的上网IP建立对应关系。

由此看来,实现动态域名解析有两个关键步骤,第一步是获取当前本地网络的IP地址,第二步是在DNS服务器端将域名和IP地址进行关联。

获取本地网络的IP地址并不难,gethostname和gethostbyname就可以获取到,但现实情况是大部分人的机器都处于自组网,或者说是内网里边,ISP分配的IP地址(也可称为外网IP)给了路由器,路由器下面的计算机都在一个局域网内,这些计算机通过路由器共享一个IP地址,这个时候花生壳登记的IP就不再是这样一个局域网IP(内网IP)了,而是外网IP,也就是路由器获取到的动态IP。在内网的计算机要想获取到外网IP不是一件容易的事情,需要与一台外网的计算机建立连接,然后通过复杂的网络编程才能得到。

所幸我们有Perl这个强大的工具,短短几行代码就可以获取到外网IP。

use 5.010;
use LWP::Simple;
use Encode;

encode(gb2312,get("http://city.ip138.com/city0.asp")) =~ /(
(.??)
)/ms;
say $2;
原理很简单,就是访问代码中的网址,然后通过正则表达式提取出我们需要的内容并做编码转换。

如果有了*nix下DNS服务器配置的经验,就会发现第二步将域名与IP进行关联也只是写几行配置文件就能搞定的事,可这里有一个问题,取到了外网IP,又如何获取到用户需要关联的特定的域名呢,这就是花生壳软件客户端的职责了,在使用花生壳提供的服务之前,任何人都要注册一个用户,每个用户都会有一到多个域名。 这下好了,简单的客户端数据库编程就能得到当前用户名下的所有域名,将这些信息与IP一起发送到远端服务器(不一定是DNS服务器)交给某个程序写配置文件后就完成了域名与IP的关联。

下面总结一下花生壳的整个工作流程:
1:用户启动花生壳客户端(这一步的目的是获取该用户名下的所有域名)。
2:通过SOKET编程获取外网IP(这一步我们通过前面的perl代码进行了模拟)
3:客户端将IP与域名发送到远端服务器进行DNS服务器配置。
4:DNS服务生效。(域名与当前的外网IP实现了一一对应)

花生壳可以使设备在内网或者没有固定/公网IP,也能轻松通过公网访问。在花生壳的使用过程,充分感受到其易用性和专业性。有着强大的功能,在设置和使用过程中却非常便捷。同时官方提供各种详尽的的操作说明和良好客服服务。即便是新手也能轻松掌握。在使用一段时间后建议搭配花生壳Pro使用会更加高效与便捷。其应用优势众多,能满足广大用户的网络操作,并保证操作安全。