本發明涉及網絡通信技術,具體涉及一種域名系統(dns,domainnamesystem)數據處理方法、裝置、存儲介質及計算機設備。
背景技術:
dns作為互聯網基礎設施提供的一項服務,包括域名和網絡互聯協議(ip,internetprotocol)地址相互映射的分布式數據庫,通過實現域名和ip地址轉換的能力,使用戶更方便的訪問互聯網。隨著互聯網的發展,dns遇到了規模性問題,導致服務器負載過重、網絡負載過大等問題。為了提升dns服務的可靠性和服務容量,現有技術中的一種實現方案是使用anycast(anycast可稱為任播)技術實現負載均衡,即使用動態路由協議,把對同一個ip地址的請求發送到不同的服務器上,以分散壓力。
但是,anycast方案需要使用動態路由協議,部署相對復雜,尤其是在云環境中可能存在很多虛擬網絡,進一步增加了復雜度。
技術實現要素:
為解決現有存在的技術問題,本發明實施例提供了一種dns數據處理方法、裝置、存儲介質及計算機設備。
為達到上述目的,本發明實施例的技術方案是這樣實現的:
本發明實施例提供了一種dns數據處理方法,所述方法包括:
獲得虛擬機發出的第一dns請求數據,所述第一dns請求數據中包括第一地址信息;
如果確定所述第一地址信息與預設匹配規則匹配成功,則攔截匹配成功后的第一dns請求數據;
根據攔截的匹配成功后的所述第一dns請求數據,生成對應的響應數據;
發送所述響應數據至所述虛擬機。
上述方案中,所述如果確定所述第一地址信息與預設匹配規則匹配成功,則攔截匹配成功后的第一dns請求數據,包括:
基于預設匹配規則將所述第一dns請求數據中的第一地址信息修改為第二地址信息,生成第二dns請求數據,攔截所述第二dns請求數據;其中,所述第一地址信息和所述第二地址信息的映射關系配置在所述預設匹配規則中。
上述方案中,所述根據攔截的匹配成功后的所述第一dns請求數據,生成對應的響應數據,包括:
根據所述第二dns請求數據生成對應的響應數據。
上述方案中,所述發送所述響應數據至所述虛擬機,包括:
基于所述預設匹配規則將解析獲得的響應數據中作為源地址的所述第二地址信息修改為所述第一地址信息;
發送地址信息修改后的響應數據至所述虛擬機。
上述方案中,所述如果確定所述第一地址信息與預設匹配規則匹配成功,則攔截匹配成功后的第一dns請求數據,包括:
如果確定所述第一地址信息與預設匹配規則匹配成功,發送所述第一dns請求數據至物理機虛擬得到的虛擬網卡。
上述方案中,所述發送所述響應數據至所述虛擬機,包括:
將所述響應數據發送至所述虛擬網卡;
接收所述虛擬網卡中的所述響應數據,按照所述預設匹配規則進行匹配,匹配成功后將所述響應數據發送至所述虛擬機。
上述方案中,所述第一地址信息包括第一目的ip地址和第一目的端口信息,所述第二地址信息包括第二目的ip地址和第二目的端口信息;
相應的,所述將所述第一地址信息修改為第二地址信息,包括:
將所述第一地址信息中的第一目的ip地址修改為第二目的ip地址,以及將所述第一地址信息中的第一目的端口信息修改為第二目的端口信息。
本發明實施例還提供了一種dns數據處理裝置,所述裝置包括:至少一個虛擬機模塊、攔截模塊和dns服務模塊;其中,
所述虛擬機模塊,用于發出第一dns請求數據;
所述攔截模塊,用于獲得所述虛擬機模塊發出的第一dns請求數據,所述第一dns請求數據中包括第一地址信息;如果確定所述第一地址信息與預設匹配規則匹配成功,則攔截匹配成功后的第一dns請求數據;
所述dns服務模塊,用于根據所述攔截模塊攔截的匹配成功后的所述第一dns請求數據,生成對應的響應數據;
所述攔截模塊,還用于發送所述響應數據至所述虛擬機模塊。
本發明實施例還提供了一種計算機可讀存儲介質,所述計算機可讀存儲介質中存儲有計算機程序,其特征在于,該程序被處理器執行時實現本發明實施例所述dns數據處理方法的步驟。
本發明實施例還提供了一種計算機設備,包括存儲器、處理器及存儲在存儲器上并可在處理器上運行的計算機程序,其特征在于,所述處理器執行所述程序時實現本發明實施例所述的dns數據處理方法的步驟。
本發明實施例提供的dns數據處理方法、裝置、存儲介質及計算機設備,所述方法包括:監聽虛擬得到的虛擬機發出的第一dns請求數據,獲得所述第一dns請求數據的第一地址信息;如果確定所述第一地址信息與預設匹配規則匹配成功,則攔截所述第一dns請求數據;根據攔截的匹配成功后的所述第一dns請求數據,生成對應的響應數據;發送所述響應數據至所述虛擬機。采用本發明實施例的技術方案,通過在每個物理機中部署dns服務模塊使每個物理機具有dns功能,首先,部署和運行維護簡單,對外部網絡無影響無依賴。第二,網絡負載壓力更分散,同時單節點故障影響范圍更小;在公有云環境下,可能有用戶對dns服務發起海量請求甚至攻擊,本發明實施例的技術方案可以更有效地定位和攔截。第三,服務響應速度更快,請求無需經過多級網絡設備。
附圖說明
圖1為本發明實施例的dns數據處理方法的流程示意圖一;
圖2為本發明實施例的dns數據處理方法的流程示意圖二;
圖3為本發明實施例的dns數據處理方法的流程示意圖三
圖4為本發明實施例的dns數據處理裝置的組成結構示意圖一;
圖5為本發明實施例的dns數據處理裝置的組成結構示意圖二。
具體實施方式
下面結合附圖及具體實施例對本發明作進一步詳細的說明。
本發明實施例提供了一種dns數據處理方法。圖1為本發明實施例的dns數據處理方法的流程示意圖一;如圖1所示,所述方法包括:
步驟101:獲得虛擬機發出的第一dns請求數據,所述第一dns請求數據包括第一地址信息。
步驟102:如果確定所述第一地址信息與預設匹配規則匹配成功,則攔截匹配成功后的第一dns請求數據。
步驟103:根據攔截的匹配成功后的所述第一dns請求數據,生成對應的響應數據。
步驟104:發送所述響應數據至所述虛擬機。
本發明實施例的dns數據處理方法應用于物理機中,即本發明實施例的dns數據處理方法的執行主體為物理機;所述物理機具體可以是服務器;在一種實施方式中,所述服務器具體可以是應用于云技術的服務器。
本實施例中,物理機中預先虛擬出至少一個虛擬機,所述至少一個虛擬機運行在物理機上,本發明實施例中的虛擬機可以是物理機虛擬出的至少一個虛擬機中的任一虛擬機。所述物理機中還可部署有dns服務模塊,所述dns服務模塊用于對虛擬機發出的dns請求數據進行dns解析。
本實施例中,作為一種實施方式,所述物理機能夠獲得每個虛擬機發出的第一dns請求數據,所述第一dns請求數據中包括第一地址信息,所述第一地址信息表征外部的dns服務器的地址;其中,所述第一地址信息包括第一目的ip地址和第一目的端口信息,可以理解為,本發明實施例所述的第一目的ip地址和第一目的端口信息均表征dns服務器的地址。
作為一種實施方式,所述物理機中可運行開源的虛擬交換機(ovs,openvswitch)應用,通過所述ovs應用實現對所述第一dns請求數據的劫持。在具體實現過程中,可預先在所述ovs應用中設置匹配規則實現不同的轉發行為,例如將數據轉發至特定接口,或者直接丟棄數據,或者修改數據字段等等。基于此,本實施例可在所述ovs應用中設置預設匹配規則,所述預設匹配規則中包括待劫持的第一dns請求數據中所包含的第一地址信息,所述第一地址信息具體可以是表征外部的dns服務器的地址信息;也即當獲得滿足所述預設匹配規則中設置的地址信息(例如第一地址信息)后,確定所述第一地址信息與預設匹配規則匹配成功,進一步攔截匹配成功后的第一dns請求數據。
另一方面,在攔截匹配成功后的第一dns請求數據后,所述物理機中部署的dns服務模塊獲得攔截的所述第一dns請求數據,對所述第一dns請求數據進行dns解析,獲得解析后的響應數據,將所述響應數據發送至所述虛擬機中(作為一種實施方式,所述dns服務模塊可通過ovs應用將解析后的響應數據發送至所述虛擬機)。這樣,通過對dns請求數據的劫持以及轉發,使虛擬機對上述過程無感知,并且使部署在物理機中的dns服務模塊響應虛擬機發出的dns請求。
采用本發明實施例的技術方案,通過在每個物理機中部署dns服務模塊使每個物理機具有dns解析功能,首先,部署和運行維護簡單,對外部網絡無影響無依賴。第二,網絡負載壓力更分散,同時單節點故障影響范圍更小;在公有云環境下,可能有用戶對dns服務發起海量請求甚至攻擊,本發明實施例的技術方案可以更有效地定位和攔截。第三,服務響應速度更快,請求無需經過多級網絡設備。
上述對虛擬機發出的請求數據的劫持過程具體可通過兩種方式實現。作為第一種實施方式,圖2為本發明實施例的dns數據處理方法的流程示意圖二;如圖2所示,包括:
步驟201:獲得虛擬機發出的第一dns請求數據,所述第一請求數據包括第一地址信息。
步驟202:將所述第一地址信息與預設匹配規則進行匹配。
步驟203:當匹配成功后,將所述第一dns請求數據中的第一地址信息修改為第二地址信息,生成第二dns請求數據,攔截所述第二dns請求數據;其中,所述第一地址信息和所述第二地址信息的映射關系配置在所述預設匹配規則中。
步驟204:根據所述第二dns請求數據生成對應的響應數據。
步驟205:基于所述預設匹配規則將解析獲得的響應數據中的所述第二地址信息修改為所述第一地址信息,按照所述第一地址信息發送所述響應數據至所述虛擬機。
本發明實施例中的匹配成功后的所述第一dns請求數據,即為所述第二dns請求數據,本發明實施例的dns數據處理方法應用于物理機中,即本發明實施例的dns數據處理方法的執行主體為物理機;所述物理機具體可以是服務器;在一種實施方式中,所述服務器具體可以是應用于云技術的服務器。
本實施例中,物理機中預先虛擬出至少一個虛擬機,所述至少一個虛擬機運行在物理機上,本發明實施例中的虛擬機可以是物理機虛擬出的至少一個虛擬機中的任一虛擬機。所述物理機中還可部署有dns服務模塊,所述dns服務模塊用于對虛擬機發出的dns請求數據進行dns解析。
本實施例中,所述物理機能夠獲得每個虛擬機發出的第一dns請求數據,所述第一dns請求數據中包括第一地址信息,所述第一地址信息表征外部的dns服務器的地址;其中,所述第一地址信息包括第一目的ip地址和第一目的端口信息,可以理解為,本發明實施例所述的第一目的ip地址和第一目的端口信息均表征dns服務器的地址。
本實施例中,對第一dns請求數據的劫持過程通過系統協議棧的方式實現;具體可通過ovs應用按照所述預設匹配規則對所述第一地址信息進行匹配成功后,所述ovs應用修改所述第一dns請求數據中的第一地址信息為所述第二地址信息生成第二dns請求數據,所述第二地址信息表征所述物理機的地址,具體可以是所述物理機的內核模塊的地址。其中,所述預設匹配規則中預先配置所述第一地址信息和所述第二地址信息的映射關系。所述第一地址信息包括第一目的ip地址和第一目的端口信息;所述第二地址信息包括第二目的ip地址和第二目的端口信息。
具體的,所述物理機中可運行開源的ovs應用,通過所述ovs應用實現對所述第一dns請求數據的劫持。具體實現過程中,可在所述ovs應用中設置匹配規則實現不同的轉發行為,例如本實施例中是修改數據字段等等。基于此,一方面,本實施例通過所述ovs應用劫持每個虛擬機發出的滿足所述預設匹配規則中的所述第一地址信息第一dns請求數據。另一方面,所述預設匹配規則中還設置有與表征dns服務器的地址信息(即第一地址信息)相對應的物理機的地址信息(即第二地址信息)的映射關系,所述表征dns服務器的地址信息與物理機的地址信息的映射關系表明:獲得滿足所述表征dns服務器的地址信息的第一地址信息后,將所述第一地址信息修改為表征所述物理機的地址信息的第二地址信息,從而生成包含有所述第二地址信息的第二dns請求數據;基于此,劫持滿足所述第一地址信息的第一dns請求數據后,按照所述預設匹配規則中的映射關系將所述第一地址信息修改為第二地址信息,地址信息修改后的dns請求數據記為第二dns請求數據,攔截所述第二dns請求數據。其中,所述第二地址信息所包括的第二目的ip地址和第二目的端口信息具體可以是物理機的ip地址和端口信息。
進一步地,所述物理機中部署的dns服務模塊獲得所述第二dns請求數據,對所述第二dns請求數據進行dns解析,獲得解析后的響應數據,將所述響應數據發送至所述ovs應用,由所述ovs應用基于所述預設匹配規則將原本響應數據中的第二地址信息修改為所述第一地址信息,基于所述第一地址信息將所述響應數據發送至相應的虛擬機中。其中,作為一種實施方式,ovs應用基于所述第二地址信息將所述第二dns請求數據發送至物理機的內核模塊,所述內核模塊進一步將所述第二dns請求數據發送至dns服務模塊,由所述dns服務模塊對所述第二dns請求數據進行dns解析并獲得響應數據;進一步地,所述dns服務模塊將dns解析后的響應數據發送至所述內核模塊,由所述內核模塊將所述響應數據發送至ovs應用;所述ovs應用依據預先配置的所述映射關系將所述第二地址信息修改為所述第一地址信息,將地址信息修改后的響應數據發送至虛擬機。這樣,通過對dns請求的劫持以及對地址信息的修改,使虛擬機對上述dns解析過程無感知,并且使部署在物理機中的dns服務模塊響應虛擬機發出的dns請求數據。
以具體的應用場景為例,假設要劫持的dns請求的ip地址是192.168.0.2,而物理機的ip地址是10.5.3.16,則:
1、虛擬機發出dns請求,所述dns請求中的目的ip地址是192.168.0.2。
2、ovs檢測到dns請求,按照預設匹配規則匹配所述dns請求;若所述dns請求匹配成功,則修改目的ip地址為10.5.3.16,將ip地址修改后的dns請求發送到物理機內核;其中,所述ovs中預先設置的匹配規則至少包括:ip地址是192.168.0.2與物理機ip地址10.5.3.16的映射關系。
3、物理機內核將dns請求發送至dns服務模塊處理;所述dns服務模塊對dns請求進行dns解析后生成響應數據包,將響應數據包發送至物理機內核,所述物理機內核將響應數據包發送至ovs。
4、ovs按照預設匹配規則匹配響應數據包,將所述響應數據包中的源ip由10.5.3.16修改為192.168.0.2,將修改后的響應數據包發送到虛擬機。
作為第二種實施方式,圖3為本發明實施例的dns數據處理方法的流程示意圖三;如圖3所示,包括:
步驟301:獲得虛擬機發出的第一dns請求數據,所述第一dns請求數據包括第一地址信息。
步驟302:將所述第一地址信息與預設匹配規則進行匹配。
步驟303:當匹配成功后,攔截所述第一dns請求數據,發送所述第一dns請求數據至物理機虛擬得到的虛擬網卡。
步驟304:從所述虛擬網卡中讀取所述第一dns請求數據,解析所述第一dns請求數據,獲得包含有解析結果的響應數據。
步驟305:將所述響應數據寫入所述虛擬網卡。
步驟306:接收所述虛擬網卡中的所述響應數據,基于所述預設匹配規則將匹配成功后的響應數據發送至所述虛擬機。
本發明實施例的dns數據處理方法應用于物理機中,即本發明實施例的dns數據處理方法的執行主體為物理機;所述物理機具體可以是服務器;在一種實施方式中,所述服務器具體可以是應用于云技術的服務器。
本實施例中,物理機中預先虛擬出至少一個虛擬機,所述至少一個虛擬機運行在物理機上,本發明實施例中的虛擬機可以是物理機虛擬出的至少一個虛擬機中的任一虛擬機。所述物理機中還可部署有dns服務模塊,所述dns服務模塊用于對虛擬機發出的dns請求數據進行dns解析。
本實施例中,所述物理機能夠獲得每個虛擬機發出的第一dns請求數據,所述第一dns請求數據中包括第一地址信息,所述第一地址信息表征外部的dns服務器的地址;其中,所述第一地址信息包括第一目的ip地址和第一目的端口信息,可以理解為,本發明實施例所述的第一目的ip地址和第一目的端口信息均表征dns服務器的地址。
本實施例中,對第一dns請求數據的劫持過程不經過系統協議棧的方式實現;具體可通過在物理機中虛擬得到虛擬網卡;通過ovs應用匹配所述dns請求數據成功后,直接將所述第一dns請求數據發送至所述虛擬網卡中,由所述dns服務模塊直接從所述虛擬網卡中讀取所述第一dns請求數據并對所述第一dns請求數據進行解析獲得包含有解析結果的響應數據。相應的,所述dns服務模塊將解析獲得的響應數據寫入所述虛擬網卡,由所述ovs應用接收所述虛擬網卡中的響應數據,并按照所述預設匹配規則將所述響應數據發送至所述虛擬機中。
具體的,所述物理機中可運行ovs應用,通過所述ovs應用實現對所述第一dns請求數據的劫持。具體實現過程中,可在所述ovs應用中設置匹配規則實現不同的轉發行為,例如本實施例中是將數據轉發至特定接口,即將數據轉發至虛擬網卡中。基于此,本實施例通過所述ovs應用劫持每個虛擬機發出的滿足所述預設匹配規則中的所述第一地址信息第一dns請求數據,攔截匹配成功的第一dns請求數據,將匹配成功的第一dns請求數據發送至虛擬網卡中。
物理機中部署的dns服務模塊從所述虛擬網卡中讀取所述第一dns請求數據,對所述第一dns請求數據進行dns解析并獲得響應數據;進一步地,所述dns服務模塊將dns解析后的響應數據發送至所述虛擬網卡。ovs應用從所述虛擬網卡中獲得響應數據,依據存儲的預設匹配規則進行匹配,即對響應數據中的第一地址信息進行匹配,匹配成功后,將所述響應數據發送至虛擬機。這樣,通過新增的虛擬網卡實現對dns請求的劫持,使虛擬機對上述dns解析過程無感知,并且使部署在物理機中的dns服務模塊響應虛擬機發出的dns請求數據。
以具體的應用場景為例,假設要劫持的dns請求的ip地址是192.168.0.2,則:
1、虛擬機發出dns請求,所述dns請求中的目的ip地址是192.168.0.2。
2、ovs檢測到dns請求,按照預設匹配規則匹配所述dns請求;若所述dns請求匹配成功,則將所述dns請求直接發送到虛擬網卡。其中,所述ovs中預先設置的匹配規則至少包括:ip地址是192.168.0.2。
3、dns服務模塊從虛擬網卡中讀取到所述dns請求,對dns請求進行dns解析后生成響應數據包,將響應數據包發送至虛擬網卡。
4、ovs從所述虛擬網卡中接收所述響應數據包,按照預設匹配規則匹配響應數據包,將匹配成功的響應數據包發送到所述虛擬機。
本發明實施例還提供了一種dns數據處理裝置。圖4為本發明實施例的dns數據處理裝置的組成結構示意圖一;如圖4所示,所述裝置包括:至少一個虛擬機模塊41、攔截模塊42和dns服務模塊43;其中,
所述虛擬機模塊41,用于發出第一dns請求數據;
所述攔截模塊42,用于獲得所述虛擬機模塊41發出的第一dns請求數據,所述第一dns請求數據中包括第一地址信息;如果確定所述第一地址信息與預設匹配規則匹配成功,則攔截匹配成功后的第一dns請求數據;
所述dns服務模塊43,用于根據所述攔截模塊42攔截的匹配成功后的所述第一dns請求數據,生成對應的響應數據;
所述攔截模塊42,還用于發送所述響應數據至所述虛擬機模塊41。
上述對虛擬機模塊發出的第一dns請求數據的劫持過程具體可通過兩種方式實現。作為第一種實施方式,如圖4所示,所述裝置包括:至少一個虛擬機模塊41、攔截模塊42和dns服務模塊43;其中,
所述虛擬機模塊41,用于發出第一dns請求數據;
所述攔截模塊42,用于獲得所述虛擬機模塊41發出的第一dns請求數據,所述第一dns請求數據中包括第一地址信息;將所述第一地址信息與預設匹配規則進行匹配;當匹配成功后,將所述第一地址信息修改為第二地址信息,生成第二dns請求數據,攔截所述第二dns請求數據;其中,所述第一地址信息和所述第二地址信息的映射關系配置在所述預設匹配規則中;還用于發送所述第二dns請求數據至所述dns服務模塊43;
所述dns服務模塊43,用于根據所述第二dns請求數據生成對應的響應數據;
所述攔截模塊42,還用于基于所述預設匹配規則將所述響應數據中的所述第二地址信息修改為所述第一地址信息,按照所述第一地址信息發送所述響應數據至所述虛擬機模塊41。
作為一種實施方式,所述第一地址信息包括第一目的ip地址和第一目的端口信息;所述第二地址信息包括第二目的ip地址和第二目的端口信息;
所述攔截模塊42,用于將所述第一地址信息中的第一目的ip地址修改為第二目的ip地址,以及將所述第一地址信息中的第一目的端口信息修改為第二目的端口信息。
作為第二種實施方式,圖5為本發明實施例的dns數據處理裝置的組成結構示意圖二;如圖5所示,所述裝置包括:至少一個虛擬機模塊41、攔截模塊42、虛擬網卡模塊44和dns服務模塊43;其中,
所述虛擬機模塊41,用于發出第一dns請求數據;
所述攔截模塊42,用于獲得所述虛擬機模塊41發出的第一dns請求數據,所述第一dns請求數據中包括第一地址信息;將所述第一地址信息與預設匹配規則進行匹配;匹配成功后,發送所述第一dns請求數據至所述虛擬網卡模塊44;
所述虛擬網卡模塊44,用于中轉所述第一dns請求數據;
所述dns服務模塊43,用于從所述虛擬網卡模塊44中讀取所述第一dns請求數據,根據所述第一dns請求數據生成對應的響應數據,將所述響應數據發送至所述虛擬網卡模塊44;
所述虛擬網卡模塊44,還用于中轉所述響應數據;
所述攔截模塊42,還用于接收所述虛擬網卡模塊44中的所述響應數據,按照所述預設匹配規則進行匹配,匹配成功后,發送所述響應數據至所述虛擬機模塊41。
本領域技術人員應當理解,本發明實施例的dns數據處理裝置中各處理單元的功能,可參照前述dns數據處理方法的相關描述而理解,本發明實施例的dns數據處理裝置中各處理單元,可通過實現本發明實施例所述的功能的模擬電路而實現,也可以通過執行本發明實施例所述的功能的軟件在智能終端上的運行而實現。
本發明實施例中,所述dns數據處理裝置在實際應用中可應用于物理機中;所述dns數據處理裝置中的虛擬機模塊41、攔截模塊42、dns服務模塊43和虛擬網卡模塊44,在實際應用中均可由所述物理機中的中央處理器(cpu,centralprocessingunit)、數字信號處理器(dsp,digitalsignalprocessor)、微控制單元(mcu,microcontrollerunit)或可編程門陣列(fpga,field-programmablegatearray)實現。
本發明實施例還提供了一種計算機可讀存儲介質,所述計算機可讀存儲介質中存儲有計算機程序,該程序被處理器執行時實現本發明前述實施例所述dns數據處理方法的步驟。
本發明實施例還提供了一種計算機設備,所述計算機設備包括存儲器、處理器及存儲在存儲器上并可在處理器上運行的計算機程序,所述處理器執行所述程序時實現以下步驟:獲得虛擬機發出的第一dns請求數據,所述第一dns請求數據包括第一地址信息;如果確定所述第一地址信息與預設匹配規則匹配成功,則攔截匹配成功后的第一dns請求數據;根據攔截的匹配成功后的所述第一dns請求數據,生成對應的響應數據;發送所述響應數據至所述虛擬機。
作為一種實施方式,所述處理器執行所述程序時實現以下步驟:基于預設匹配規則將所述第一dns請求數據中的第一地址信息修改為第二地址信息,生成第二dns請求數據,攔截所述第二dns請求數據;其中,所述第一地址信息和所述第二地址信息的映射關系配置在所述預設匹配規則中。
進一步地,所述處理器執行所述程序時實現以下步驟:根據所述第二dns請求數據生成對應的響應數據。
進一步地,所述處理器執行所述程序時實現以下步驟:基于所述預設匹配規則將解析獲得的響應數據中作為源地址的所述第二地址信息修改為所述第一地址信息;發送地址信息修改后的響應數據至所述虛擬機。
作為另一種實施方式,所述處理器執行所述程序時實現以下步驟:如果確定所述第一地址信息與預設匹配規則匹配成功,發送所述第一dns請求數據至物理機虛擬得到的虛擬網卡。
進一步地,所述處理器執行所述程序時實現以下步驟:將所述響應數據發送至所述虛擬網卡;接收所述虛擬網卡中的所述響應數據,按照所述預設匹配規則進行匹配,匹配成功后將所述響應數據發送至所述虛擬機。
本實施例中,所述第一地址信息包括第一目的ip地址和第一目的端口信息,所述第二地址信息包括第二目的ip地址和第二目的端口信息;所述處理器執行所述程序時實現以下步驟:將所述第一地址信息中的第一目的ip地址修改為第二目的ip地址,以及將所述第一地址信息中的第一目的端口信息修改為第二目的端口信息。
在本申請所提供的幾個實施例中,應該理解到,所揭露的裝置和方法,可以通過其它的方式實現。以上所描述的設備實施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實際實現時可以有另外的劃分方式,如:多個單元或組件可以結合,或可以集成到另一個系統,或一些特征可以忽略,或不執行。另外,所顯示或討論的各組成部分相互之間的耦合、或直接耦合、或通信連接可以是通過一些接口,設備或單元的間接耦合或通信連接,可以是電性的、機械的或其它形式的。
上述作為分離部件說明的單元可以是、或也可以不是物理上分開的,作為單元顯示的部件可以是、或也可以不是物理單元,即可以位于一個地方,也可以分布到多個網絡單元上;可以根據實際的需要選擇其中的部分或全部單元來實現本實施例方案的目的。
另外,在本發明各實施例中的各功能單元可以全部集成在一個處理單元中,也可以是各單元分別單獨作為一個單元,也可以兩個或兩個以上單元集成在一個單元中;上述集成的單元既可以采用硬件的形式實現,也可以采用硬件加軟件功能單元的形式實現。
本領域普通技術人員可以理解:實現上述方法實施例的全部或部分步驟可以通過程序指令相關的硬件來完成,前述的程序可以存儲于一計算機可讀取存儲介質中,該程序在執行時,執行包括上述方法實施例的步驟;而前述的存儲介質包括:移動存儲設備、只讀存儲器(rom,read-onlymemory)、隨機存取存儲器(ram,randomaccessmemory)、磁碟或者光盤等各種可以存儲程序代碼的介質。
或者,本發明上述集成的單元如果以軟件功能模塊的形式實現并作為獨立的產品銷售或使用時,也可以存儲在一個計算機可讀取存儲介質中。基于這樣的理解,本發明實施例的技術方案本質上或者說對現有技術做出貢獻的部分可以以軟件產品的形式體現出來,該計算機軟件產品存儲在一個存儲介質中,包括若干指令用以使得一臺計算機設備(可以是個人計算機、服務器、或者網絡設備等)執行本發明各個實施例所述方法的全部或部分。而前述的存儲介質包括:移動存儲設備、rom、ram、磁碟或者光盤等各種可以存儲程序代碼的介質。
以上所述,僅為本發明的具體實施方式,但本發明的保護范圍并不局限于此,任何熟悉本技術領域的技術人員在本發明揭露的技術范圍內,可輕易想到變化或替換,都應涵蓋在本發明的保護范圍之內。因此,本發明的保護范圍應以所述權利要求的保護范圍為準。