[0001]
本公开涉及计算机技术领域,尤其涉及一种网络共享方法、装置、电子设备和计算机可读存储介质。
背景技术:[0002]
虚拟专用网络(virtual private network,vpn)是一种远程访问技术,利用公共网络架设专用网络,vpn网关通过对数据包的加密和数据包目标地址的转换实现远程安全访问,在企业网络中得到的广泛应用。
[0003]
通常,一个vpn账号只能在一台电子设备上登陆,然而,随着电子设备的发展,用户可能会同时拥有多台电子设备,并在多台电子设备上协同办公,以提高办公效率,现有技术中,为解决上述问题,在登陆vpn账号的主电子设备上设置接入通道和vpn通道,其中,接入通道用于与其他电子设备进行网络共享,vpn通道用于接入vpn,建立接入通道和vpn通道之间的连接,形成vpn共享通道,以实现其他电子设备与主电子设备共享vpn,以访问vpn对应的企业内部网络。
[0004]
然而,采用现有技术,其他电子设备只能访问vpn对应的内网,无法访问外网,因此,对其他电子设备的网络访问比较受限。
技术实现要素:[0005]
为了解决上述技术问题或者至少部分地解决上述技术问题,本公开提供了一种网络共享方法、装置、计算机设备和计算机可读存储介质。
[0006]
第一方面,本公开提供一种网络共享方法,应用于第一电子设备,所述第一电子设备上设置有第一端口、第二端口和第三端口,其中,第一端口用于第一电子设备和第二电子设备共享网络,所述第二端口与虚拟专用网络vpn连接,所述第三端口与外网连接,所述方法包括:
[0007]
通过第一端口接收第二电子设备发送的访问请求,所述访问请求中包含目的地址,所述目的地址为内网地址或者外网地址;
[0008]
将包含内网地址的访问请求通过第二端口发送至vpn对应的内网;或者,将包含外网地址的访问请求通过第三端口发送至外网。
[0009]
可选的,还包括:
[0010]
配置策略路由,所述策略路由用于指示第二端口配置的vpn的路由表的优先级高于第三端口的路由表;
[0011]
所述将包含内网地址的访问请求通过第二端口发送至vpn对应的内网;或者,将包含外网地址的访问请求通过第三端口发送至外网,包括:
[0012]
查询所述第二端口配置的vpn的路由表,确定所述vpn的路由表中未包含所述目的地址对应的路由,查询所述第三端口对应的路由表,确定第三端口对应的路由表中包含所述目的地址对应的路由则将所述访问请求转发至所述第三端口以发送至外网。
[0013]
可选的,所述第二端口配置有vpn的路由表和缺省路由,所述缺省路由指向第三端口;
[0014]
所述将包含内网地址的访问请求通过第二端口发送至vpn对应的内网;或者,将包含外网地址的访问请求通过第三端口发送至外网,包括:
[0015]
查询所述第二端口配置的vpn的路由表,确定所述vpn的路由表中未包含所述目的地址对应的路由,根据所述缺省路由将所述访问请求转发至所述第三端口;
[0016]
根据所述第三端口的路由表将所述访问请求发送至外网或者丢弃。
[0017]
可选的,还包括:确定所述vpn的路由表中包含所述目的地址对应的路由,则将所述访问请求通过第二端口发送至vpn对应的网络。
[0018]
可选的,所述第一端口和所述第二端口建立转发关系,所述第一端口和所述第三端口建立转发关系;
[0019]
所述将包含内网地址的访问请求通过第二端口发送至vpn对应的内网;或者,将包含外网地址的访问请求通过第三端口发送至外网,包括:
[0020]
根据所述访问请求中的目的地址,确定所述目的地址属于内网地址或者外网地址;
[0021]
将属于内网地址的所述访问请求发送至第二端口,以使第二端口根据vpn的路由表将所述访问请求发送至vpn对应的内网;
[0022]
将属于外网地址的所述访问请求发送至第三端口,以使第三端口根据第三端口的路由表将其发送至外网。
[0023]
可选的,所述根据所述访问请求中的目的地址,确定所述目的地址属于内网地址或者外网地址,包括:
[0024]
根据所述访问请求中的目的地址所属的网段、vpn对应的内网的网段和外网的网段,确定所述目的地址属于内网地址或者外网地址。
[0025]
第二方面,本公开提供一种网络共享装置,应用于第一电子设备,所述第一电子设备上设置有第一端口、第二端口和第三端口,其中,第一端口用于第一电子设备和第二电子设备共享网络,所述第二端口与虚拟专用网络vpn连接,所述第三端口与外网连接,所述装置包括:
[0026]
接收模块,用于通过第一端口接收第二电子设备发送的访问请求,所述访问请求中包含目的地址,所述目的地址为内网地址或者外网地址;
[0027]
发送模块,用于将包含内网地址的访问请求通过第二端口发送至vpn对应的内网;或者,将包含外网地址的访问请求通过第三端口发送至外网。
[0028]
可选的,还包括:
[0029]
配置模块,用于配置策略路由,所述策略路由用于指示第二端口配置的vpn的路由表的优先级高于第三端口的路由表;
[0030]
所述发送模块具体用于查询所述第二端口配置的vpn的路由表,确定所述vpn的路由表中未包含所述目的地址对应的路由,查询所述第三端口对应的路由表,确定第三端口对应的路由表中包含所述目的地址对应的路由则将所述访问请求转发至所述第三端口以发送至外网。
[0031]
可选的,所述第二端口配置有vpn的路由表和缺省路由,所述缺省路由指向第三端
口;
[0032]
所述发送模块具体用于查询所述第二端口配置的vpn的路由表,确定所述vpn的路由表中未包含所述目的地址对应的路由,根据所述缺省路由将所述访问请求转发至所述第三端口;根据所述第三端口的路由表将所述访问请求发送至外网或者丢弃。
[0033]
可选的,还包括:
[0034]
所述发送模块还用于确定所述vpn的路由表中包含所述目的地址对应的路由,则将所述访问请求通过第二端口发送至vpn对应的网络。
[0035]
可选的,所述第一端口和所述第二端口建立转发关系,所述第一端口和所述第三端口建立转发关系;
[0036]
所述发送模块具体用于根据所述访问请求中的目的地址,确定所述目的地址属于内网地址或者外网地址;将属于内网地址的所述访问请求发送至第二端口,以使第二端口根据vpn的路由表将所述访问请求发送至vpn对应的内网;将属于外网地址的所述访问请求发送至第三端口,以使第三端口根据第三端口的路由表将其发送至外网。
[0037]
可选的,所述发送模块具体用于根据所述访问请求中的目的地址所属的网段、vpn对应的内网的网段和外网的网段,确定所述目的地址属于内网地址或者外网地址。
[0038]
第三方面,本公开提供一种电子设备,包括:存储器和处理器,所述存储器用于存储计算机程序,所述处理器用于执行所述存储器上存储的计算机程序时,执行如第一方面所述的方法的步骤。
[0039]
第四方面,本公开提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面所述的方法的步骤。
[0040]
本公开实施例提供的技术方案与现有技术相比具有如下优点:
[0041]
通过在第一电子设备上同时设置用于第一电子设备和第二电子设备共享网络的第一端口、与vpn连接的第二端口和与外网连接的第三端口,当通过第一端口接收到第二电子设备发送的访问请求后,将包含内网地址的访问请求通过第二端口发送至vpn对应的内网,将包含外网地址的访问请求通过第三端口发送至外网,从而,实现第二电子设备即可通过第一电子设备访问vpn对应的内网,也可以通过第一电子设备访问外网,使得第二电子设备的网络访问更加灵活。
附图说明
[0042]
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
[0043]
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0044]
图1为本公开提供的一种网络架构示意图;
[0045]
图2为本公开提供的一种网络共享方法实施例的流程示意图;
[0046]
图3为本公开提供的另一种网络共享的方法实施例的流程示意图;
[0047]
图4为本公开提供的又一种网络共享方法实施例的流程示意图;
[0048]
图5为本公开提供的一种网络共享装置的结构示意图;
[0049]
图6为本公开提供的一种电子设备的结构示意图。
具体实施方式
[0050]
为了能够更清楚地理解本公开的上述目的、特征和优点,下面将对本公开的方案进行进一步描述。需要说明的是,在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合。
[0051]
在下面的描述中阐述了很多具体细节以便于充分理解本公开,但本公开还可以采用其他不同于在此描述的方式来实施;显然,说明书中的实施例只是本公开的一部分实施例,而不是全部的实施例。
[0052]
本公开的应用场景为一个电子设备可以登陆vpn账号,访问vpn对应的内网,其中,内网例如可以为企业、机构、学校或者医院等,并且该电子设备也可以访问外网,访问外网和通过vpn访问内网的端口为不同的端口,其他电子设备欲通过该电子设备访问外网或者访问vpn对应的内网,为了便于描述,本公开中将登陆vpn账号的电子设备称为第一电子设备,将其他电子设备称为第二电子设备,本公开的技术方案旨在实现第二电子设备通过第一电子设备既可访问vpn内网,也可以访问外网。
[0053]
本公开的第一电子设备至少具有可以实现网络共享的功能,网络共享的方式例如可以为:无线保真(wireless fidelity,wifi)、热点、蓝牙、通用串行总线(universal serial bus,usb)等。
[0054]
本公开的第一电子设备上设置有至少三个端口,其中,一个端口用于与第二电子设备进行网络共享,称为第一端口,另一端口用于与vpn连接以访问vpn对应的内网,称为第二端口,再一端口用于与外网连接以访问外网;本公开的第二电子设备通过第一端口向第一电子设备发送访问请求以请求访问内网或者外网,第一电子设备根据自身设置的策略将第二电子设备的访问请求通过第二端口转发至内网,或者,通过第三端口转发至外网,从而,实现第二电子设备通过第一电子设备共享的网络,既可访问外网也可以访问内网,从而,提高第二电子设备访问网络的灵活性。
[0055]
图1为本公开提供的一种网络架构示意图,其中,第一电子设备上设置有第一端口101、第二端口102和第三端口103,其中,第一端口用于第一电子设备和第二电子设备共享网络,第一端口可以是wifi端口、热点端口、蓝牙端口和usb端口等,第二端口与vpn连接,以访问vpn对应的内网,第三端口与外网连接。其中,第三端口可以为无线局域网(wireless local area network,wlan)网络网口、移动网络网口或者以太网口等。
[0056]
图2为本公开提供的一种网络共享方法实施例的流程示意图,本实施例的方法由第一电子设备执行,本实施例的方法如下:
[0057]
s201:通过第一端口接收第二电子设备发送的访问请求。
[0058]
其中,所述访问请求中包含目的地址,所述目的地址为内网地址或者外网地址。可选的,所述目的地址可以为目的ip地址。通常内外和外网拥有不同的地址,可以通过目的地址确定第二电子设备想要访问的是内网还是外网。
[0059]
s202:将包含内网地址的访问请求通过第二端口发送至vpn对应的内网;或者,将包含外网地址的访问请求通过第三端口发送至外网。
[0060]
如果访问请求中包含的目的地址为内网地址,则将访问请求通过第二端口发送至
vpn对应的内网;如果访问请求中包含的目的地址为外网地址,则将访问请求通过第三端口发送至外网。
[0061]
由于本公开的第二电子设备是通过共享第一电子设备的网络的方式访问vpn对应的内网或者访问外网,因此,在将访问请求通过第二端口发送至vpn对应的内网之前,还包括:将访问请求的源地址转换为vpn的源地址;在将访问请求通过第三端口发送至外网之前,还包括:将访问请求的源地址转换为第三端口的源地址。
[0062]
本实施例,通过在第一电子设备上同时设置用于第一电子设备和第二电子设备共享网络的第一端口、与vpn连接的第二端口和与外网连接的第三端口,当通过第一端口接收到第二电子设备发送的访问请求后,将包含内网地址的访问请求通过第二端口发送至vpn对应的内网,将包含外网地址的访问请求通过第三端口发送至外网,从而,实现第二电子设备即可通过第一电子设备访问vpn对应的内网,也可以通过第一电子设备访问外网,使得第二电子设备的网络访问更加灵活。
[0063]
图3为本公开提供的另一种网络共享的方法实施例的流程示意图,图3是在图2所示实施例的基础上,对s202的一种可能的实现方式的描述,在本实施例中,第一端口分别和第二端口、第三端口之间建立转发关系,形成双共享通道,并为第二端口和第三端口配置路由表;并设置策略路由,第二端口的vpn的路由表的优先级高于第三端口的路由表的优先级,即优先查找第二端口的vpn的路由表,如果没有再查第三端口的路由表,如图3所示,本实施例的方法包括:
[0064]
s2021a:根据策略路由的优先级,查询第二端口配置的vpn的路由表,确定所述vpn的路由表中是否包含目的地址对应的路由,若是,执行s2022a;若否,执行s2023a。
[0065]
s2022a:将访问请求通过第二端口发送至vpn对应的内网。
[0066]
s2023a:查询第三端口的路由表,确定第三端口对应的路由表中是否包含目的地址对应的路由,若是,执行s2024a。若否,执行s2025a。
[0067]
s2024a:将访问请求转发至第三端口,通过所述第三端口发送至外网。
[0068]
s2025a:将访问请求丢弃。
[0069]
由于第一端口分别和第二端口、第三端口之间建立转发关系,形成双共享通道,因此,第一端口向第二端口发送访问请求之前,会将访问请求的源地址转换为vpn的源地址;如果将访问请求转发至第三端口,通过第三端口发送至外网之前,会将访问请求的源地址转换为第三端口的源地址,从而,以实现第二电子设备共享第一电子设备的网络。
[0070]
本实施例,通过从第一端口接收到的访问请求,根据策略路由的优先级,优先查询vpn的路由表,若vpn的路由表中有目的地址对应的路由,则将访问请求通过第二端口发送至vpn对应的内网,若vpn的路由表中没有目的地址对应的路由,则将访问请求通过第三端口发送至外网,从而,通过策略路由的优先级的设置,可以提高内网的访问效率,同时实现对外网的访问。并且,本实施例的技术方案对现有技术的技术方案改动较小,易于实现。
[0071]
可选的,在图3所示实施例中的一种替代方案,第二端口配置vpn的路由表,并配置一条缺省路由,缺省路由指向第三端口,如果vpn的路由表中有目的地址对应的路由,则将访问请求通过第二端口发送至vpn对应的内网,若vpn的路由表中没有目的地址对应的路由,则将访问请求发送至第三端口,查询第三端口的路由表,根据第三端口的路由表将所述访问请求发送至外网或者丢弃,若路由表中包含目的地址对应的路由,则通过第三端口将
所述访问请求发送至外网,若路由表中未包含目的地址对应的路由,则将访问请求丢弃。通过配置缺省路由,可以节约查询路由表的时间,提高访问请求转发的效率。
[0072]
图4为本公开提供的又一种网络共享方法实施例的流程示意图,图4是在图2所示实施例的基础上,进一步地,对s202的另一种可能的实现方式的描述,在本实施例中,第一端口和第二端口之间建立转发关系,第一端口和第三端口之间也建立转发关系,在第一端口设置策略路由,策略请求用于指示根据访问请求的目的地址所属的网段确定转发至第二端口还是第三端口,如图4所示,本实施例的方法包括:
[0073]
s2021b:根据访问请求中的目的地址,确定所述目的地址属于内网地址或者外网地址。
[0074]
具体地,一种可能的实现方式:可以根据目的地址所属的网段属于内网的网段还是外网的网段进行确定;
[0075]
例如:vpn对应的内网的网段为:172.16.x.x;外网的网段为:169.254.x.x;例如:如果接收到的访问请求中的目的地址为:169.254.200.81,则确定该目的地址所属的网段为外网所属的网段,则确定目的地址属于外网地址;如果接收到的访问请求中的目的地址为:172.16.16.20,则确定该目的地址所属的网段为内网所属的网段,则确定目的地址属于内网地址。
[0076]
另一种可能的实现方式:可以根据目的地址查询vpn对应的路由表和第三端口对应的路由表,如果vpn对应的路由表中包含对应的路由,则确定为内网地址,如果第三端口对应的路由表中包含对应的路由,则确定为外网地址,如果vpn对应的路由表和第三端口对应的路由表中都没有,则丢弃。
[0077]
再一种可能的实现方式:可以根据目的地址查询vpn对应的路由表,如果vpn对应的路由表中包含对应的路由,则确定为内网地址,如果vpn对应的路由表中不包含对应的路由,则确定为外网地址。
[0078]
s2022b:将属于内网地址的访问请求发送至第二端口,以使第二端口根据vpn的路由表将其发送至vpn对应的内网。
[0079]
s2023b:将属于外网地址的访问请求发送至第三端口,以使第三端口根据第三端口的路由表将其发送至外网。
[0080]
由于本公开的第二电子设备是通过共享第一电子设备的网络的方式访问vpn对应的内网或者访问外网,因此,在第二端口根据vpn的路由表将其发送至vpn对应的内网之前,还包括:将访问请求的源地址转换为vpn的源地址;在第三端口根据第三端口的路由表将其发送至外网之前,还包括:将访问请求的源地址转换为第三端口的源地址。
[0081]
本实施例,通过建立第一端口和第二端口的连接,建立第一端口和第三端口的连接,在通过第一端口接到访问请求之后,先根据访问请求中的目的地址属于内网还是外网,再将访问请求发送到对应的端口,从而,实现第二电子设备即可通过第一电子设备访问vpn对应的内网,也可以通过第一电子设备访问外网,使得第二电子设备的网络访问更加灵活。
[0082]
图5为本公开提供的一种网络共享装置的结构示意图,本实施例的装置应用于第一电子设备,其特征在于,所述第一电子设备上设置有第一端口、第二端口和第三端口,其中,第一端口用于第一电子设备和第二电子设备共享网络,所述第二端口与虚拟专用网络vpn连接,所述第三端口与外网连接,本实施例的装置包括:接收模块501和发送模块502。
[0083]
其中,接收模块501用于通过第一端口接收第二电子设备发送的访问请求,所述访问请求中包含目的地址,所述目的地址为内网地址或者外网地址;
[0084]
发送模块502用于将包含内网地址的访问请求通过第二端口发送至vpn对应的内网;或者,将包含外网地址的访问请求通过第三端口发送至外网。
[0085]
可选的,还包括:
[0086]
配置模块503用于配置策略路由,所述策略路由用于指示第二端口配置的vpn的路由表的优先级高于第三端口的路由表;
[0087]
所述发送模块502具体用于查询所述第二端口配置的vpn的路由表,确定所述vpn的路由表中未包含所述目的地址对应的路由,查询所述第三端口对应的路由表,确定第三端口对应的路由表中包含所述目的地址对应的路由则将所述访问请求转发至所述第三端口以发送至外网。
[0088]
可选的,所述第二端口配置有vpn的路由表和缺省路由,所述缺省路由指向第三端口;
[0089]
所述发送模块502具体用于查询所述第二端口配置的vpn的路由表,确定所述vpn的路由表中未包含所述目的地址对应的路由,根据所述缺省路由将所述访问请求转发至所述第三端口;根据所述第三端口的路由表将所述访问请求发送至外网或者丢弃。
[0090]
可选的,还包括:
[0091]
所述发送模块502还用于确定所述vpn的路由表中包含所述目的地址对应的路由,则将所述访问请求通过第二端口发送至vpn对应的网络。
[0092]
可选的,所述第一端口和所述第二端口建立转发关系,所述第一端口和所述第三端口建立转发关系。
[0093]
所述发送模块502具体用于根据所述访问请求中的目的地址,确定所述目的地址属于内网地址或者外网地址;将属于内网地址的所述访问请求发送至第二端口,以使第二端口根据vpn的路由表将所述访问请求发送至vpn对应的内网;将属于外网地址的所述访问请求发送至第三端口,以使第三端口根据第三端口的路由表将其发送至外网。
[0094]
可选的,所述发送模块502具体用于根据所述访问请求中的目的地址所属的网段、vpn对应的内网的网段、外网的网段,确定所述目的地址属于内网地址或者外网地址。
[0095]
上述实施例的装置对应的可用于执行图2-图4所述方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
[0096]
图6为本公开提供的一种电子设备的结构示意图,本实施例的电子设备包括:存储器601和处理器602,所述存储器601用于存储计算机程序,所述处理器602用于执行所述存储器上存储的计算机程序时,执行如图2-图4任一项所述的方法的步骤。
[0097]
本公开还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现图2-图4任一项所述的方法的步骤。
[0098]
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设
备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0099]
以上所述仅是本公开的具体实施方式,使本领域技术人员能够理解或实现本公开。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本公开的精神或范围的情况下,在其它实施例中实现。因此,本公开将不会被限制于本文所述的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。