本申请涉及数据通讯领域,具体地涉及一种数据路由方法、装置、电子设备及存储介质。
背景技术:
路由器是工作在开放系统互联(opensysteminter-connect,osi)参考模型第三层,即网络层的数据包转发设备。根据收到数据包中的网络层地址以及路由器内部维护的路由表决定输出端口和下一跳地址,并且重写链路层数据包头实现转发数据包。目前路由设备主要是通过匹配数据包的目的ip地址和自身的路由表从而确定如何路由,这是一种基于ip地址路由数据的方法。但是人们除了有基于ip地址路由数据的需求,还有基于域名路由数据的需求,即不同的域名可以走不同的专线出口,但这种方式会出现域名更换ip地址后路由错误的问题。
技术实现要素:
本申请提供了一种数据路由方法、装置、电子设备及存储介质,以解决上述问题。
第一方面,本申请提供一种数据路由方法,所述方法包括:接收域名解析请求,并基于所述域名解析请求对域名进行解析,得到所述域名对应的ip地址;根据所述域名对应的ip地址更新ip地址集合;将所述域名对应的ip地址发送给用户,以使所述用户向所述域名对应的ip地址发送数据包;接收所述用户发送的数据包,获取所述数据包的目的ip地址,其中,所述目的ip地址与所述域名对应的ip地址一致;当所述目的ip地址在所述ip地址集合中时,对所述数据包进行路由。
第二方面,本申请提供一种数据路由装置,包括:解析模块,用于接收域名解析请求,并基于所述域名解析请求对域名进行解析,得到所述域名对应的ip地址;ip更新模块,用于根据所述域名对应的ip地址更新ip地址集合;发送模块,用于将所述域名对应的ip地址发送给用户,以使所述用户向所述域名对应的ip地址发送数据包;接收模块,用于接收所述用户发送的数据包,获取所述数据包的目的ip地址,其中,所述目的ip地址与所述域名对应的ip地址一致;路由模块,用于当所述目的ip地址在所述ip地址集合中时,对所述数据包进行路由。
第三方面,本申请提供一种电子设备,包括:存储器;一个或多个处理器,与所述存储器耦接;一个或多个程序,其中,所述一个或多个应用程序被存储在所述存储器中为由所述一个或多个处理器执行,所述一个或多个程序配置用于执行如上所述的方法。
第四方面,本申请提供一种计算机可读取存储介质,所述计算机可读取存储介质中存储有程序代码,所述程序代码可被处理器调用执行如上所述的方法。
本申请提供的数据路由方法,包括:接收域名解析请求,并基于所述域名解析请求对域名进行解析,得到所述域名对应的ip地址;根据所述域名对应的ip地址更新ip地址集合;将所述域名对应的ip地址发送给用户,以使所述用户向所述域名对应的ip地址发送数据包;接收所述用户发送的数据包,获取所述数据包的目的ip地址,其中,所述目的ip地址与所述域名对应的ip地址一致;当所述目的ip地址在所述ip地址集合中时,对所述数据包进行路由。本申请通过将解析出的域名对应的ip地址发送给用户,以使用户向该域名对应的ip地址发送数据包,直接根据域名对应的ip地址来路由数据,从而解决根据域名路由数据时,域名更换ip地址而导致路由错误的问题。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,需要说明的是,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了本申请实施例提供的数据路由方法的流程示意图;
图2示出了本申请一实施例提供的数据路由方法的流程示意图;
图3示出了本申请的图2所示的实施例提供的数据路由的方法的步骤s260的实施例的流程示意图;
图4示出了本申请的图2所示的实施例提供的数据路由的方法的步骤s270的实施例的流程示意图;
图5示出了本申请再一实施例提供的数据路由方法的流程示意图;
图6示出了本申请又再一实施例提供的数据路由方法的流程示意图;
图7示出了本申请一具体实施例提供的数据路由方法的流程示例图;
图8示出了本申请实施例提供的数据路由装置的结构框图;
图9示出了本申请实施例用于执行根据本申请实施例的数据路由方法的电子设备的结构框图;
图10示出了本申请实施例的用于保存或者携带实现根据本申请实施例的数据路由方法的程序代码的存储单元。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本申请实施例的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序和先后次序。
路由设备是根据路由规则把各数据包按最佳路线传送到指定位置,路由规则分为管理员手工配置的静态路由和通过动态路由算法生成的动态路由。而静态路由模式具有节省带宽、安全性更好等优点,受到众多规模较小以及对安全性有特别要求的网络管理者的青睐。目前市面上的静态路由系统主要是基于ip地址对数据包进行路由,将域名及其对应的ip地址固定存储在路由表中,一旦域名对应的ip地址更换,就会出现路由错误的问题,需要管理员手工查询域名对应的ip地址并添加路由规则,操作麻烦。
针对上述问题,本申请提出了一种数据路由方法,可以实时更新域名对应的ip地址,实现动态路由数据,能够有效解决域名的ip地址更换而导致的路由错误的问题。
接下来,本申请将结合附图具体描述本申请的各实施例。
请参阅图1,图1示出了本申请实施例提供的一种数据路由方法的流程示意图,该方法具体可以包括如下步骤:
步骤s110:接收域名解析请求,并基于域名解析请求对域名进行解析,得到域名对应的ip地址。
域名解析请求包括用户想要访问的域名,可以从域名解析请求中获取该域名,并对该域名进行解析得到该域名对应的互联网协议地址(internetprotocoladdress,ip地址)。其中,解析域名可以通过域名解析服务器对其进行解析,也可以通过在网络设备中写入域名解析算法对其进行解析等,本申请实施例对此不作限制。例如,用户想要访问域名a.com,于是向网络设备发送域名解析请求,请求解析a.com;网络设备接收到用户发送的域名解析请求之后,从中获取域名a.com,通过域名解析服务器对a.com进行解析,可以得到a.com对应的ip地址为1.1.1.1。
步骤s120:根据域名对应的ip地址更新ip地址集合。
预设域名集合可以是指网络设备可解析的所有域名的集合,该预设域名集合包括至少一个域名,该预设域名集合可以预先设置在网络设备中,也可以通过在网络设备中写入数据更新算法,该算法可以对ip地址集合进行自动更新,从而生成预设域名集合,本申请实施例对其不作具体限制。当域名在预设域名集合中时,根据域名对应的ip地址更新ip地址集合,可以实现动态实时更新ip地址集合,以确保域名对应的ip地址无误,从而确保数据包路由无误。根据域名对应的ip地址更新ip地址集合,可以直接将域名对应的ip地址存储到ip地址集合中,然后对ip地址集合进行整体更新,也可以在ip地址集合中查找域名对应的ip地址,当ip地址集合中没有该ip地址时,将该ip地址存储到ip地址集合,本申请实施例对此不作具体限定。
步骤s130:将域名对应的ip地址发送给用户,以使用户向域名对应的ip地址发送数据包。
域名对应的ip地址是指解析域名得到的ip地址,可以将该ip地址发送给用户,由于访问域名可以通过向其ip地址发送数据包进行访问,因此用户可以将该ip地址作为数据包的目的ip地址,并向该ip地址发送数据包。例如,解析域名a.com得到ip地址1.1.1.1,将1.1.1.1发送给用户,用户可以将1.1.1.1作为数据包的目的ip地址,并向1.1.1.1发送数据包。该步骤将域名对应的ip地址发送给用户,以使用户可以向域名对应的ip地址发送数据包,能够有效地解决域名变更对应的ip地址而导致路由错误的问题。
步骤s140:接收用户发送的数据包,获取数据包的目的ip地址,其中,目的ip地址与域名对应的ip地址一致。
目的ip地址是指数据包要发送的目的地的地址,因此用户可以将域名对应的ip地址作为数据包的目的ip地址,所以接收到的用户发送的数据包的目的ip地址与域名对应的ip地址是一致的。在用户向目的ip地址发送数据包之前,可以先将数据包发送给网络设备,其中,数据包包括目的ip地址。网络设备接收用户发送的数据包,可以从中获取数据包的目的ip地址。例如,数据包的目的ip地址为1.1.1.1,网络设备接收到该数据包,即可从该数据包中获取到1.1.1.1为目的ip地址。
步骤s150:当目的ip地址在ip地址集合中时,对数据包进行路由。
路由,即为对数据包进行传输。路由路径,也就是传输数据包的路径,其中,路由路径可以有多条,而对数据包进行路由则是指选择其中一条路由路径将数据包发送到目的ip地址,其中,路由路径可以是电信专线、移动专线或联通专线等,本实施例对此不做具体限制。例如,数据包的目的ip地址为1.1.1.1,可以选择电信专线对其进行传输,将该数据包传输到1.1.1.1。因此,当目的ip地址在ip地址集合中时,可以对数据包进行路由。例如,目的ip地址为1.1.1.1,ip地址集合为(1.1.1.1,1.1.1.2,1.1.1.3),显然,目的ip地址在ip地址集合中,此时可以对数据包进行路由。
在本实施例中,数据路由方法包括:接收域名解析请求,并基于域名解析请求对域名进行解析,得到域名对应的ip地址;根据域名对应的ip地址更新ip地址集合;将域名对应的ip地址发送给用户,以使用户向域名对应的ip地址发送数据包;接收用户发送的数据包,获取数据包的目的ip地址,其中,目的ip地址与域名对应的ip地址一致;当目的ip地址在ip地址集合中时,对数据包进行路由。该方法对用户发送的域名进行解析,并将解析该域名得到的ip地址反馈给用户,用户将该ip地址作为数据包的目的ip地址并向该ip地址发送数据包,直接根据域名对应的ip地址来路由数据,从而解决根据域名路由数据时,域名更换ip地址而导致路由错误的问题。
请参阅图2,图2示出了本申请一实施例提供的数据路由方法的流程示意图,该方法具体可以包括以下步骤:
步骤s210:接收域名解析请求,并基于域名解析请求对应域名进行解析,得到域名对应的ip地址。
步骤s220:根据域名对应的ip地址更新ip地址集合。
步骤s230:将域名对应的ip地址发送给用户,以使用户向域名对应的ip地址发送数据包。
步骤s240:接收用户发送的数据包,获取数据包的目的ip地址,其中,目的ip地址与域名对应的ip地址一致。
其中,步骤s210-步骤s240的具体描述请参阅步骤s110-步骤140,在此不作赘述。
步骤s250:在ip地址集合中查找目的ip地址。
ip地址集合是所有域名对应的ip地址的一个集合,该ip地址集合可以包括至少一个ip地址,该ip地址集合可以预先设置在网络设备中,或者也可以在网络设备中写入算法,根据域名解析的ip地址自动生成ip地址集合,本申请实施例对此不作具体限制。例如,ip地址集合可以是(1.1.1.1,1.1.1.2,1.1.1.3),在ip地址集合中查找目的ip地址,可以采取顺序查找的方式,也可以采取关键字查找的方式,本申请实施例对此不作具体限制。例如,目的ip地址为1.1.1.1,可以采取顺序查找的方式,从ip地址集合中的第一个ip地址开始,按从前到后的顺序查找1.1.1.1。
步骤s260:当目的ip地址在ip地址集合中时,获取ip地址集合对应的路由规则。
路由规则是指路由数据包所遵守的规则或规定,一个网络设备中可以包括至少一条路由规则,用于指示数据包所要进行路由的路径。路由规则可以预先设置在网络设备中,也可以在网络设备中写入算法,生成指定的路由规则,本申请实施例对此不做具体限制。当目的ip地址在ip地址集合中时,可以获取ip地址集合对应的路由规则,其中ip地址集合可以对应唯一路由规则。例如,目的ip地址为1.1.1.1,ip地址集合为(1.1.1.1,1.1.1.2,1.1.1.3),显然,目的ip地址在ip地址集合中,此时可以获取ip地址集合对应的路由规则。
请参阅图3,图3示出了本申请的图2所示的实施例提供的数据路由的方法的步骤s260的实施例的流程示意图。下面将针对图3所示的流程进行详细的阐述,所述方法具体可以包括以下步骤:
步骤s261:当目的ip地址在ip地址集合中时,对数据包进行标记,并获取数据包的标记信息。
当目的ip地址在ip地址集合中时,可以对数据包进行标记。其中,对数据包进行标记是指将目的ip地址相同的数据包打上相同的标记,例如,对目的ip地址都为1.1.1.1的数据包,都打上sign1的标记。此外,该标记可以打在数据包的头部、中间或者尾部,本申请实施例对此不作具体限制。获取数据包的标记信息可以通过检测整个数据包进行获取,也可以通过将数据包拆分成多段,逐段检测数据包进行获取,本申请实施例对此不作具体限制。
步骤s262:获取标记信息对应的路由规则,作为ip地址集合对应的路由规则。
由于标记信息对应唯一路由规则,因此可以根据标记信息获取对应的路由规则。由于ip地址集合对应唯一标记信息,因此根据标记信息获取的路由规则,可以作为ip地址集合对应的路由规则。其中,获取标记信息对应的路由规则可以根据标记信息的关键字在至少一条路由规则中进行查询,例如,标记信息为sign1,网络设备包括多条路由规则,其中路由规则route1为对带有标记sign1的数据包进行路由,将所有带有sign1的数据包转发到移动专线;路由规则route2为对带有标记sign2的数据包进行路由,将所有带有sign2的数据包转发到电信专线;路由规则route3为对没有标记的数据包进行路由,将所有没有标记的数据包转发到联通专线,则根据标记信息sign1,查询网络设备中的多条路由规则,即可获取到路由规则route1。
s270:根据路由规则对数据包进行路由。
如上所述,网络设备包括至少一条路由规则,其中,路由规则对应唯一路由路径,即路由专线。根据路由规则对数据包进行路由,即选择根据ip地址集合获取到的路由规则对数据包进行路由,将其转发到对应的路由专线。例如,根据ip地址集合获取到的路由规则为:将目的ip地址在第一ip地址集合中的数据包转发到电信专线,因为接收到的用户发送的数据包的目的ip地址为1.1.1.1在该第一ip地址集合中,那么可以将接收到的用户发送的数据包转发到电信专线。
请参阅图4,图4示出了本申请的图2所示的实施例提供的数据路由的方法的步骤s270的实施例的流程示意图。下面将针对图4所示的流程进行详细的阐述,所述方法具体可以包括以下步骤:
步骤s271:获取路由规则对应的路由专线。
路由专线是指传输数据包的“道路”,路由规则对应唯一路由专线。其中,路由规则及其对应的路由专线的对应关系可以预先在网络设备的路由清单中指定,也可以在网络设备中写入算法生成对应的路由清单,本申请实施例对此不作具体限制。获取路由规则对应的路由专线,可以根据网络设备中的路由清单进行获取,具体地,可以根据路由规则在网络设备的路由清单中进行查询,以获得对应的路由专线,查询的方式可以采用顺序查询,也可以采用关键字查询等,本申请实施例对此不作具体限制。
步骤s272:将数据包转发到路由专线。
如上所述,路由专线是指传输数据包的“道路”,其中,路由专线可以是电信专线、移动专线或联通专线等,本申请实施例对此不作具体限制。此外,将数据包转发到路由专线,其中的路由专线是指根据步骤s261获取到的路由专线。
在本实施例中,通过判断目的ip地址是否在ip地址集合中以获取对应的路由规则,从而根据该路由规则对数据包进行路由,可以有效找到数据包的最佳路由路径,节省了路由时间,实现了系统加速。
请参阅图5,图5示出了本申请再一实施例提供的数据路由方法的流程示意图,该方法具体可以包括如下步骤:
步骤s610:接收域名解析请求,并基于域名解析请求对域名进行解析,得到域名对应的ip地址。
步骤s610的具体描述请参阅步骤s110,在此不再过多赘述。
步骤s620:在ip地址集合中查找域名对应的ip地址。
在ip地址集合中查找域名对应的ip地址,具体地,可以按照从前往后或者从后往前的顺序依次在ip地址集合中进行查找,即可以将ip地址与ip地址集合中的各个ip地址从前往后或者从后往前一一进行比对,也可以按照从ip地址集合中间往两边的顺序将域名的ip地址与ip地址集合中的各个ip地址一一进行比对等,本申请实施例对此不作具体限制。其中,ip地址集合中所有的ip地址之间具有唯一性,即各个ip地址唯一存在,不存在与之相同的ip地址。
当域名对应的ip地址不在ip地址集合中时,可能是因为该域名第一次被访问,也可以是因为该域名的ip地址已更换,此时,可以将该域名对应的ip地址存储在ip地址集合中,确保该域名在ip地址集合中有唯一对应的ip地址。
步骤s630:当域名对应的ip地址不在ip地址集合中时,存储域名对应的ip地址到ip地址集合中。
步骤s640:将域名对应的ip地址发送给用户,以使用户向域名对应的ip地址发送数据包。
步骤s650:接收用户发送的数据包,获取数据包的目的ip地址,其中,目的ip地址与域名对应的ip地址一致。
步骤s660:基于目的ip地址,对数据包进行路由。
其中,步骤s640-步骤s660的具体描述请参阅步骤s120-步骤s140,在此不再过多赘述。
在本实施例中,通过根据域名对应的ip地址查询ip地址集合,当该ip地址集合中没有该ip地址时,将该ip地址存储到该ip地址集合中,可以实现动态更新ip地址集合。
请参阅图6,图6示出了本申请又再一实施例提供的数据路由方法的流程示意图,该方法具体可以包括如下步骤:
步骤s710:接收域名解析请求,并基于域名解析请求对域名进行解析,得到域名对应的ip地址。
其中,步骤s710的具体描述请参阅步骤s110,在此不再过多赘述。
步骤s720:将域名对应的ip地址与ip地址集合中域名的ip地址进行比对。
域名对应的ip地址是指解析域名得到的新的ip地址,而ip地址集合中域名的ip地址是指该域名原来对应的ip地址,将新的ip地址与域名原来对应的ip地址进行比对,可以确保域名在ip地址集合中唯一对应ip地址。比如,解析域名a.com得到新的ip地址为1.1.1.2,而ip地址集合中域名a.com的ip地址为1.1.1.1,此时,可以将1.1.1.2与1.1.1.1进行比对。
当域名对应的ip地址与ip地址集合中域名的ip地址不同时,说明此时域名的ip已更换,该域名不再对应原来的ip地址,而是对应一个新的ip地址,此时可以根据域名对应的ip地址更新ip地址集合。比如,解析域名a.com得到新的ip地址为1.1.1.2,而ip地址集合中域名a.com的ip地址为1.1.1.1,显然,1.1.1.2与1.1.1.1不同,此时可以用1.1.1.2覆盖1.1.1.1以更新ip地址集合。
步骤s730:当域名对应的ip地址与ip地址集合中域名的ip地址不同时,根据域名对应的ip地址更新ip地址集合。
步骤s740:将域名对应的ip地址发送给用户,以使用户向域名对应的ip地址发送数据包。
步骤s750:接收用户发送的数据包,获取数据包的目的ip地址,其中,目的ip地址与域名对应的ip地址一致。
步骤s760:基于目的ip地址,对数据包进行路由。
其中,步骤s740-步骤s760的具体描述请参阅步骤s120-步骤s140,在此不再过多赘述。
在本实施例中,通过将域名对应的ip地址与ip地址集合中该域名的ip地址进行比对,并在两个ip地址不同的情况下,根据域名对应的ip地址更新ip地址集合,可以实现动态更新ip集合。
请参阅图7,图7示出了本申请一具体实施例的数据路由方法的流程示例图,该示例图包括用户设备810,网络设备820,域名集合830以及ip地址集合840,其中,用户设备810和网络设备820可以进行数据通信。具体地,在局域网内有一个网络设备820,该网络设备820用于为局域网的用户设备810提供域名解析和路由服务,可以在网络设备820中定义一个域名集合830,该域名集合830包括域名a.com、b.com和c.com。当用户想要访问域名a.com时,用户设备810可以向网络设备820发送域名解析请求,请求解析域名a.com,其中,该域名解析请求包括域名a.com。网络设备820接收到用户设备810发来的域名解析请求,可以在域名集合830中查询域名a.com。当域名a.com在域名集合830中,此时,可以解析域名a.com得到对应的ip地址为1.1.1.1。此时,网络设备820可以将1.1.1.1存储到ip地址集合840中,然后更新ip地址集合840,确保ip地址集合840中的所有ip地址具有唯一性,并向用户设备发送ip地址1.1.1.1。
用户设备810接收到1.1.1.1之后,可以将1.1.1.1作为数据包的目的ip地址。用户设备810可以向1.1.1.1发送数据包,但是该数据包可以首先发送给网络设备820。网络设备820收到数据包后,可以在ip地址集合840查找1.1.1.1,当1.1.1.1在ip地址集合中时,可以给数据包打上标记sign1。其中,网络设备820可以包括多条路由规则:路由规则route1对带有标记sign1的数据包进行路由,将数据包转发到电信专线;路由规则route2对没有标记的数据包进行路由,将数据包转发到联通宽带。网络设备820对用户设备810发送的数据包进行路由时,检测到数据包带有标记sign1,便使用路由规则route1,将数据包转发到电信专线。此后所有目的ip地址是1.1.1.1的数据包,网络设备820都会给这些数据包打上标记sign1,然后根据sign1标记将这些数据包转发到电信专线,而不管这些数据包是用户设备810发送的,还是局域网内其他用户设备发送的。
在本实施例中,用户向网络设备发送域名解析请求,网络设备接收到域名解析请求解析域名,可以得到一个ip地址,并将该ip地址返回给用户,用户将ip地址作为数据包的目的ip地址,并首先向网络设备发送数据包,网络设备接收到数据包时,可以在ip地址集合中查找该数据包的ip地址,当查找到ip地址在ip地址集合中时,将数据包打上标记,并根据该标记获取对应的路由规则从而根据该路由规则对数据包进行路由。通过对用户发送的域名解析请求中的域名进行解析,获得域名对应的ip地址并将其返回给用户,用户进一步将该ip地址作为数据包的目的ip地址并向其发送数据包,可以确保域名对应的ip地址正确,能够有效解决域名变更ip地址而导致路由错误的问题。
请参阅图8,图8示出了本申请实施例提供的数据路由装置900的结构框图,该数据路由装置900包括:解析模块910、ip更新模块920、发送模块930、接收模块940以及路由模块950,具体地:
解析模块910,用于接收域名解析请求,并基于域名解析请求对域名进行解析,得到域名对应的ip地址。
ip更新模块920,用于根据域名对应的ip地址更新ip地址集合。
发送模块930,用于将域名对应的ip地址发送给用户,以使用户向域名对应的ip地址发送数据包。
接收模块940,用于接收用户发送的数据包,获取数据包的目的ip地址,其中,目的ip地址与域名对应的ip地址一致。
路由模块950,用于当所述目的ip地址在所述ip地址集合中时,对所述数据包进行路由。
进一步,路由模块950包括:ip查找子模块、获取子模块和数据路由子模块,其中:
ip查找子模块,用于在ip集合中查找目的ip地址。
获取子模块,用于当目的ip地址在ip地址集合中时,获取ip地址集合对应的路由规则。
进一步,获取子模块包括:标记单元和规则获取单元,其中:
标记单元,用于当目的ip地址在ip地址集合中时,对数据包进行标记,并获取数据包的标记信息。
规则获取单元,用于获取标记信息对应的路由规则,作为ip地址集合对应的路由规则。
数据路由子模块,用于根据路由规则对数据包进行路由。
进一步,数据路由子模块包括:专线获取单元和转发单元,其中:
专线获取单元,用于获取路由规则对应的路由专线。
转发子单元,用于将数据包转发到路由专线。
进一步,ip更新模块920包括:查找子模块和存储子模块,其中:
查找子模块,用于在ip地址集合中查找域名对应的ip地址。
存储子模块,用于当域名对应的ip地址不在ip地址集合中时,存储域名对应的ip地址到ip地址集合中。
进一步,ip更新模块还包括:比对子模块和更新子模块,其中:
比对子模块,用于将域名对应的ip地址与ip地址集合中域名的ip地址进行比对。
更新子模块,用于当域名对应的ip地址与ip地址集合中域名的ip地址不同时,根据域名对应的ip地址更新ip地址集合。
所属领域技术人员可以清楚地了解到,本申请实施例提供的数据路由装置能够实现前述方法实施例中的各个过程,上述描述装置和模块的具体工作过程,可以参阅前述方法实施例中的对应过程,在此不再过多赘述。
本申请提供的实施例中,所显示或讨论的模块相互之间的耦合、直接耦合或通信连接,可以是通过一些借口、装置或模块的间接耦合或通信耦合,可以是电性、机械或其他形式,本申请实施例对此不做具体限制。
另外,在本申请是实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以炒菜用软件的功能模块的形式实现。
请参阅图9,图9示出了本申请实施例提供的一种电子设备1000的结构框图。本申请中的电子设备1000可以包括一个或多个如下部件:处理器1010、存储器1020以及一个或多个应用程序,其中一个或多个应用程序可以被存储在存储器1020中并被配置为由一个或多个处理器执行,一个或多个程序配置用于执行如前述方法实施例所描述的方法。
处理器可以包括一个或多个处理核。处理器1010利用各种接口和线路连接整个电子设备1000内的各个部分,用过运行或执行存储在存储器1020内的指令、程序、代码集或指令集,以及调用运行或执行存储在存储器1020内的数据,执行电子设备1000的各种功能和处理数据。可选地,处理器1010可以采用数字信号处理(digitalsignalprocessing,dsp)、现场可编程门阵列(field-programmablegatearray,fpga)、可编辑逻辑阵列(programmablelogicarray,pla)中的至少一种硬件形式来实现。处理器1010可集成中央处理器(centralprocessingunit,cpu)、图像处理器(graphicsprocessingunit,gpu)和调制解调器中的一种或几种的组合。其中,cpu主要处理操作系统、用户界面和应用程序等;gpu用于负责显示内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器1010中,单独通过一块通信芯片进行实现。
存储器1020可以包括随机存储器(randomaccessmemory,ram),也可以包括只读存储器(read-onlymemory,rom)。存储器1020可用于存储指令、程序、代码、代码集或指令集,存储器1020可包括存储程序区和存储数据区,其中,存储程序器可存储用于实现操作系统的指令、用于实现至少一个功能的指令、用于实现上述各个方法实施例的指令等。存储数据区可以存储电子设备1000在使用中所创建的数据等。
请参阅图10,图10示出了本申请实施例提供的一种计算机可读取存储介质的结构框图。该计算机可读取存储介质1100中存储有程序代码,所述程序代码可被处理器调用执行上述方法实施例中所描述的方法。
计算机可读取存储介质1100可以是诸如闪存、电可擦除可编程只读存储器(electrically-erasableprogrammableread-onlymemory,eeprom)、可擦除可编辑只读存储器(erasableprogrammableread-onlymemory,eprom)、硬盘或者rom之类的电子存储器。可选地,计算机可读取存储介质1100包括非易失性计算机可读介质(non-transitorycomputer-readablestoragemedium)。计算机可读取存储介质1100具有执行上述方法中的任何方法步骤的程序代码1110的存储空间。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。程序代码1110可以例如以适当形式进行压缩。
综上所述,本申请提供一种数据路由方法、装置、电子设备及存储介质,该方法包括:接收域名解析请求,并基于域名解析请求对域名进行解析,得到域名对应的ip地址;根据域名对应的ip地址更新ip地址集合;将域名对应的ip地址发送给用户,以使用户向域名对应的ip地址发送数据包;接收用户发送的数据包,获取数据包的目的ip地址,其中,目的ip地址与域名对应的ip地址一致;当目的ip地址在ip地址集合中时,对数据包进行路由。该方法通过每次对用户发送的域名解析请求中的域名进行解析,并将解析得到的ip地址反馈给用户,使得用户可以将该ip地址作为数据包的目的ip地址,并向该ip地址发送数据包,本申请通过将解析出的域名对应的ip地址发送给用户,以使用户向该域名对应的ip地址发送数据包,直接根据域名对应的ip地址来路由数据,从而解决根据域名路由数据时,域名更换ip地址而导致路由错误的问题。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不驱使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
1.一种数据路由方法,其特征在于,包括:
接收域名解析请求,并基于所述域名解析请求对域名进行解析,得到所述域名对应的ip地址;
根据所述域名对应的ip地址更新ip地址集合;
将所述域名对应的ip地址发送给用户,以使所述用户向所述域名对应的ip地址发送数据包;
接收所述用户发送的数据包,获取所述数据包的目的ip地址,其中,所述目的ip地址与所述域名对应的ip地址一致;
当所述目的ip地址在所述ip地址集合中时,对所述数据包进行路由。
2.根据权利要求1所述的方法,其特征在于,所述当所述目的ip地址在所述ip地址集合中时,对所述数据包进行路由,包括:
在ip地址集合中查找所述目的ip地址;
当所述目的ip地址在所述ip地址集合中时,获取所述ip地址集合对应的路由规则;
根据所述路由规则对所述数据包进行路由。
3.根据权利要求2所述的方法,其特征在于,所述当所述目的ip地址在所述ip地址集合中时,获取所述ip地址集合对应的路由规则,包括:
当所述目的ip地址在所述ip地址集合中时,对所述数据包进行标记,并获取所述数据包的标记信息;
获取所述标记信息对应的路由规则,作为所述ip地址集合对应的路由规则。
4.根据权利要求2所述的方法,其特征在于,所述根据所述路由规则对所述数据包进行路由,包括:
获取所述路由规则对应的路由专线;
将所述数据包转发到所述路由专线。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述根据所述域名对应的ip地址更新ip地址集合,包括:
在所述ip地址集合中查找所述域名对应的ip地址;
当所述域名对应的ip地址不在所述ip地址集合中时,存储所述域名对应的ip地址到所述ip地址集合中。
6.根据权利要求1-4任一项所述的方法,其特征在于,所述根据所述域名对应的ip地址更新ip地址集合,包括:
将所述域名对应的ip地址与所述ip地址集合中所述域名的ip地址进行比对;
当所述域名对应的ip地址与所述ip地址集合中所述域名的ip地址不同时,根据所述域名对应的ip地址更新所述ip地址集合。
7.根据权利要求1-4任一项所述的方法,其特征在于,所述根据所述域名对应的ip地址更新ip地址集合,包括:
当所述域名在预设域名集合中时,根据所述域名对应的ip地址更新ip地址集合。
8.一种数据路由装置,其特征在于,包括:
解析模块,用于接收域名解析请求,并基于所述域名解析请求对域名进行解析,得到所述域名对应的ip地址;
ip更新模块,用于根据所述域名对应的ip地址更新ip地址集合;
发送模块,用于将所述域名对应的ip地址发送给用户,以使所述用户向所述域名对应的ip地址发送数据包;
接收模块,用于接收所述用户发送的数据包,获取所述数据包的目的ip地址,其中,所述目的ip地址与所述域名对应的ip地址一致;
路由模块,用于当所述目的ip地址在所述ip地址集合中时,对所述数据包进行路由。
9.一种电子设备,其特征在于,包括:
存储器;
一个或多个处理器,与所述存储器耦接;
一个或多个程序,其中,所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于执行如权利要求1-7任一项所述的方法。
10.一种计算机可读取存储介质,所述计算机可读取存储介质中存储有程序代码,所述程序代码可被处理器调用执行如权利要求1-7任一项所述的方法。
技术总结