一種虛擬ip的實(shí)現(xiàn)方法
【專利摘要】本發(fā)明公開了一種虛擬IP的實(shí)現(xiàn)方法,屬于計(jì)算機(jī)通信網(wǎng)絡(luò)【技術(shù)領(lǐng)域】,該方法包括計(jì)算機(jī)根據(jù)自身IP從數(shù)據(jù)庫中獲取到與自身IP綁定的網(wǎng)卡ID與網(wǎng)卡描述信息,從數(shù)據(jù)庫中獲取虛擬IP和虛擬IP子網(wǎng)掩碼,通過調(diào)用設(shè)備驅(qū)動(dòng)程序禁用所述網(wǎng)卡ID對(duì)應(yīng)的網(wǎng)卡,然后通過調(diào)用驅(qū)動(dòng)程序在所述網(wǎng)卡ID對(duì)應(yīng)的網(wǎng)卡上綁定從數(shù)據(jù)庫中獲取的虛擬IP和虛擬IP子網(wǎng)掩碼,或者刪除所述網(wǎng)卡ID對(duì)應(yīng)的網(wǎng)卡的注冊(cè)表中與所述網(wǎng)卡描述信息對(duì)應(yīng)的虛擬IP和虛擬IP子網(wǎng)掩碼,然后再通過調(diào)用設(shè)備驅(qū)動(dòng)程序啟用所述網(wǎng)卡ID對(duì)應(yīng)的網(wǎng)卡,從而實(shí)現(xiàn)由計(jì)算機(jī)自身實(shí)現(xiàn)虛擬IP增加、刪除等功能,省去了人工操作,節(jié)約了人力成本。
【專利說明】一種虛擬IP的實(shí)現(xiàn)方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計(jì)算機(jī)通信網(wǎng)絡(luò)【技術(shù)領(lǐng)域】,尤其涉及一種虛擬IP的實(shí)現(xiàn)方法。
【背景技術(shù)】
[0002]在計(jì)算機(jī)機(jī)群系統(tǒng)中,實(shí)現(xiàn)業(yè)務(wù)的高可用服務(wù)主要是通過增加結(jié)點(diǎn),來使多個(gè)結(jié)點(diǎn)工作在負(fù)荷分擔(dān)方式下或主備用方式下,當(dāng)主用結(jié)點(diǎn)故障時(shí),備用結(jié)點(diǎn)接替主用結(jié)點(diǎn)繼續(xù)提供服務(wù)。由于數(shù)字通信網(wǎng)絡(luò)向全I(xiàn)P網(wǎng)絡(luò)的演變,使得結(jié)點(diǎn)的通信方式主要是基于IP的通信。當(dāng)主用結(jié)點(diǎn)故障時(shí),訪問主用結(jié)點(diǎn)的客戶端會(huì)繼續(xù)向主用結(jié)點(diǎn)的IP地址索取服務(wù),這就要求備用結(jié)點(diǎn)接替主用結(jié)點(diǎn)時(shí)以同樣的IP地址提供服務(wù),這樣將多個(gè)結(jié)點(diǎn)共用一個(gè)IP地址對(duì)外提供服務(wù)的方法稱為虛擬IP(VIP)。
[0003]現(xiàn)有的虛擬IP的實(shí)現(xiàn)方法,以多臺(tái)服務(wù)器組成的計(jì)算機(jī)集群系統(tǒng)為例,多是通過人工手動(dòng)配置虛擬IP實(shí)現(xiàn)的,這樣的實(shí)現(xiàn)方式耗費(fèi)人力成本;現(xiàn)有的虛擬IP實(shí)現(xiàn)方法還有是通過增加網(wǎng)絡(luò)地址轉(zhuǎn)換(NAT)設(shè)備對(duì)多個(gè)服務(wù)器的IP地址進(jìn)行轉(zhuǎn)換,使得多個(gè)服務(wù)器對(duì)外呈現(xiàn)一個(gè)統(tǒng)一的IP地址,這樣的實(shí)現(xiàn)方式需要增加一個(gè)專門的NAT設(shè)備,增加了網(wǎng)絡(luò)建設(shè)和維護(hù)成本。目前沒有一種比較切實(shí)可行的由服務(wù)器自身實(shí)現(xiàn)虛擬IP增加、刪除等功能的方法。
【發(fā)明內(nèi)容】
[0004]為解決現(xiàn)有技術(shù)中存在的問題,本發(fā)明提出了一種虛擬IP的實(shí)現(xiàn)方法,由服務(wù)器自身實(shí)現(xiàn)虛擬IP增加、刪除等功能,服務(wù)器之間共享一個(gè)數(shù)據(jù)庫存儲(chǔ)虛擬IP,服務(wù)器自身實(shí)現(xiàn)虛擬IP的增加與刪除,不需要借助另外的硬件存儲(chǔ)設(shè)備對(duì)服務(wù)器虛擬IP的配置進(jìn)行控制。
[0005]本發(fā)明采用的技術(shù)方案如下:一種虛擬IP的實(shí)現(xiàn)方法,包括:
[0006]步驟S1:計(jì)算機(jī)根據(jù)自身IP從數(shù)據(jù)庫中獲取到與自身IP綁定的網(wǎng)卡ID和網(wǎng)卡描述信息,從數(shù)據(jù)庫中獲取虛擬IP和虛擬IP子網(wǎng)掩碼;
[0007]步驟S2:調(diào)用設(shè)備驅(qū)動(dòng)程序禁用所述網(wǎng)卡ID對(duì)應(yīng)的網(wǎng)卡;
[0008]步驟S3:根據(jù)數(shù)據(jù)庫中的預(yù)設(shè)標(biāo)志位判斷是否已設(shè)置虛擬IP,是則執(zhí)行步驟S4,否則執(zhí)行步驟S5 ;
[0009]步驟S4:調(diào)用設(shè)備驅(qū)動(dòng)程序刪除所述網(wǎng)卡ID對(duì)應(yīng)的網(wǎng)卡的注冊(cè)表中與所述網(wǎng)卡描述信息對(duì)應(yīng)的虛擬IP和虛擬IP子網(wǎng)掩碼,然后執(zhí)行步驟S5 ;
[0010]步驟S5:調(diào)用設(shè)備驅(qū)動(dòng)程序在所述網(wǎng)卡ID對(duì)應(yīng)的網(wǎng)卡上綁定從數(shù)據(jù)庫中獲取的虛擬IP和虛擬IP子網(wǎng)掩碼,并更新數(shù)據(jù)庫中的預(yù)設(shè)標(biāo)志位;
[0011]步驟S6:調(diào)用設(shè)備驅(qū)動(dòng)程序啟用所述網(wǎng)卡ID對(duì)應(yīng)的網(wǎng)卡。
[0012]所述步驟SI之前還包括步驟SO:計(jì)算機(jī)啟動(dòng)定時(shí)心跳監(jiān)聽并實(shí)時(shí)記錄監(jiān)聽日志。
[0013]所述步驟SO與所述步驟SI之間還包括:計(jì)算機(jī)判斷預(yù)設(shè)切換模式及本機(jī)狀態(tài),當(dāng)所述預(yù)設(shè)切換模式及本機(jī)狀態(tài)為主機(jī)備機(jī)模式/主機(jī)時(shí),所述計(jì)算機(jī)執(zhí)行所述步驟S1-步驟S6之后啟動(dòng)應(yīng)用服務(wù);當(dāng)所述預(yù)設(shè)切換模式及本機(jī)狀態(tài)為主機(jī)主機(jī)模式/主機(jī),且檢測(cè)到監(jiān)聽目標(biāo)未啟動(dòng)應(yīng)用服務(wù)時(shí),所述計(jì)算機(jī)執(zhí)行所述步驟S1-步驟S6之后啟動(dòng)應(yīng)用服務(wù);當(dāng)所述預(yù)設(shè)切換模式及本機(jī)狀態(tài)為主機(jī)備機(jī)模式/備機(jī),且檢測(cè)到監(jiān)聽目標(biāo)未啟動(dòng)應(yīng)用服務(wù)時(shí),所述計(jì)算機(jī)執(zhí)行所述步驟S1-步驟S6之后啟動(dòng)應(yīng)用服務(wù)。
[0014]當(dāng)所述預(yù)設(shè)切換模式及本機(jī)狀態(tài)為主機(jī)主機(jī)模式/主機(jī),且檢測(cè)到監(jiān)聽目標(biāo)已啟動(dòng)應(yīng)用服務(wù)時(shí),所述計(jì)算機(jī)判斷是否接收到啟動(dòng)應(yīng)用服務(wù)的通知,是則執(zhí)行所述步驟S1-步驟S6之后啟動(dòng)應(yīng)用服務(wù);否則返回執(zhí)行所述判斷預(yù)設(shè)切換模式及本機(jī)狀態(tài)。
[0015]當(dāng)所述預(yù)設(shè)切換模式及本機(jī)狀態(tài)為主機(jī)備機(jī)模式/備機(jī),且檢測(cè)到監(jiān)聽目標(biāo)已啟動(dòng)應(yīng)用服務(wù)時(shí),所述計(jì)算機(jī)執(zhí)行自動(dòng)刪除虛擬IP的操作后停止應(yīng)用服務(wù),然后返回執(zhí)行所述判斷預(yù)設(shè)切換模式及本機(jī)狀態(tài)。
[0016]所述自動(dòng)刪除虛擬IP的操作具體包括:
[0017]步驟s1:調(diào)用設(shè)備驅(qū)動(dòng)程序禁用所述網(wǎng)卡ID對(duì)應(yīng)的網(wǎng)卡;
[0018]步驟s2:調(diào)用設(shè)備驅(qū)動(dòng)程序刪除所述網(wǎng)卡ID對(duì)應(yīng)的網(wǎng)卡的注冊(cè)表中與所述網(wǎng)卡描述信息對(duì)應(yīng)的虛擬IP和虛擬IP子網(wǎng)掩碼,并更新數(shù)據(jù)庫中的預(yù)設(shè)標(biāo)志位;
[0019]步驟s3:調(diào)用設(shè)備驅(qū)動(dòng)程序啟用所述網(wǎng)卡ID對(duì)應(yīng)的網(wǎng)卡。
[0020]上述啟動(dòng)應(yīng)用服務(wù)之后包括:
[0021]步驟1:檢測(cè)網(wǎng)關(guān)和應(yīng)用服務(wù)的運(yùn)行狀況,若應(yīng)用服務(wù)正常網(wǎng)關(guān)暢通,則返回執(zhí)行所述判斷預(yù)設(shè)切換模式及本機(jī)狀態(tài);若應(yīng)用服務(wù)正常網(wǎng)關(guān)不暢通,則執(zhí)行自動(dòng)刪除虛擬IP的操作后停止應(yīng)用服務(wù),然后執(zhí)行步驟2 ;若應(yīng)用服務(wù)異常網(wǎng)關(guān)不暢通則直接執(zhí)行步驟2 ;若應(yīng)用服務(wù)異常網(wǎng)關(guān)暢通則重新啟動(dòng)應(yīng)用服務(wù),若啟動(dòng)成功則返回繼續(xù)執(zhí)行步驟1,若啟動(dòng)失敗則執(zhí)行步驟2 ;
[0022]步驟2:根據(jù)當(dāng)前的監(jiān)聽日志判斷監(jiān)聽目標(biāo)是否正常工作,是則向監(jiān)聽目標(biāo)發(fā)送啟動(dòng)應(yīng)用服務(wù)的通知后返回執(zhí)行所述判斷預(yù)設(shè)切換模式及本機(jī)狀態(tài),否則報(bào)警提示出錯(cuò),結(jié)束。
[0023]步驟S2所述調(diào)用設(shè)備驅(qū)動(dòng)程序禁用所述網(wǎng)卡ID對(duì)應(yīng)的網(wǎng)卡具體為:調(diào)用第一函數(shù)獲取服務(wù)器上已安裝設(shè)備信息集合,調(diào)用第二函數(shù)對(duì)獲取的已安裝設(shè)備信息集合進(jìn)行枚舉得到一個(gè)當(dāng)前已安裝設(shè)備信息,調(diào)用第三函數(shù)獲取當(dāng)前已安裝設(shè)備的詳細(xì)設(shè)備信息;調(diào)用第四函數(shù)和第五函數(shù)將當(dāng)前已安裝設(shè)備的詳細(xì)信息中包含的安裝參數(shù)修改為第一預(yù)設(shè)值并使修改生效;調(diào)用第六函數(shù)釋放當(dāng)前內(nèi)存。
[0024]步驟S4所述調(diào)用設(shè)備驅(qū)動(dòng)程序刪除所述網(wǎng)卡ID對(duì)應(yīng)的網(wǎng)卡的注冊(cè)表中與所述網(wǎng)卡描述信息對(duì)應(yīng)的虛擬IP和虛擬IP子網(wǎng)掩碼具體為:調(diào)用第七函數(shù)和第八函數(shù)從所述網(wǎng)卡ID對(duì)應(yīng)的網(wǎng)卡的注冊(cè)表中獲取原始IP、原始IP子網(wǎng)掩碼;調(diào)用第九函數(shù)從原始IP、原始IP子網(wǎng)掩碼中刪除虛擬IP、虛擬IP子網(wǎng)掩碼對(duì)應(yīng)的字段,并將刪除操作后的注冊(cè)表回寫到注冊(cè)表鍵中的相應(yīng)位置;調(diào)用第十函數(shù)釋放當(dāng)前內(nèi)存。
[0025]步驟S5所述調(diào)用設(shè)備驅(qū)動(dòng)程序在所述網(wǎng)卡ID對(duì)應(yīng)的網(wǎng)卡上綁定從數(shù)據(jù)庫中獲取的虛擬IP和虛擬IP子網(wǎng)掩碼具體為:調(diào)用第七函數(shù)和第八函數(shù)從所述網(wǎng)卡ID對(duì)應(yīng)的網(wǎng)卡的注冊(cè)表中獲取原始IP、原始IP子網(wǎng)掩碼;調(diào)用第九函數(shù)在原始IP、原始IP子網(wǎng)掩碼的字段中綁定從數(shù)據(jù)庫中獲取的虛擬IP、虛擬IP子網(wǎng)掩碼,并將綁定操作后的注冊(cè)表回寫到注冊(cè)表鍵中的相應(yīng)位置;調(diào)用第十函數(shù)釋放當(dāng)前內(nèi)存。
[0026]步驟S6所述調(diào)用設(shè)備驅(qū)動(dòng)程序啟用所述網(wǎng)卡ID對(duì)應(yīng)的網(wǎng)卡具體為:調(diào)用第一函數(shù)獲取服務(wù)器上已安裝設(shè)備信息集合,調(diào)用第二函數(shù)對(duì)獲取的已安裝設(shè)備信息集合進(jìn)行枚舉得到一個(gè)當(dāng)前已安裝設(shè)備信息,調(diào)用第三函數(shù)獲取當(dāng)前已安裝設(shè)備的詳細(xì)設(shè)備信息;調(diào)用第四函數(shù)和第五函數(shù)將當(dāng)前已安裝設(shè)備的詳細(xì)信息中包含的安裝參數(shù)修改為第二預(yù)設(shè)值并使修改生效;調(diào)用第六函數(shù)釋放當(dāng)前內(nèi)存。
[0027]本發(fā)明公開的另一種虛擬IP的實(shí)現(xiàn)方法,包括:
[0028]步驟S1:計(jì)算機(jī)根據(jù)自身IP從數(shù)據(jù)庫中獲取到與自身IP綁定的網(wǎng)卡ID,從數(shù)據(jù)庫中獲取虛擬IP和虛擬IP子網(wǎng)掩碼;執(zhí)行查詢配置信息命令;
[0029]步驟S2:根據(jù)所述查詢配置信息命令的命令執(zhí)行結(jié)果判斷所述網(wǎng)卡ID對(duì)應(yīng)的網(wǎng)卡的配置信息是否正確,是則執(zhí)行步驟S4,否則執(zhí)行步驟S3 ;
[0030]步驟S3:執(zhí)行停止虛擬IP命令刪除所述配置信息中的虛擬IP和虛擬IP子網(wǎng)掩碼,執(zhí)行配置命令在所述配置信息中增加從數(shù)據(jù)庫中獲取的虛擬IP和虛擬IP子網(wǎng)掩碼,執(zhí)行步驟S4 ;
[0031]步驟S4:進(jìn)入配置目錄下的配置文件,執(zhí)行檢查配置文件命令;
[0032]步驟S5:根據(jù)所述檢查配置文件命令的命令執(zhí)行結(jié)果判斷配置文件中的配置信息是否正確,是則結(jié)束,否則執(zhí)行步驟S6 ;
[0033]步驟S6:執(zhí)行刪除命令刪除所述配置文件,執(zhí)行寫入命令在所述配置目錄下重新寫入一個(gè)配置文件,重新寫入的配置文件的配置信息中包含有從數(shù)據(jù)庫中獲取的虛擬IP和虛擬IP子網(wǎng)掩碼,結(jié)束。
[0034]所述根據(jù)所述查詢配置信息命令的命令執(zhí)行結(jié)果判斷所述網(wǎng)卡ID對(duì)應(yīng)的網(wǎng)卡的配置信息是否正確具體為:判斷所述查詢配置信息命令的命令執(zhí)行結(jié)果中包含的虛擬IP和虛擬IP子網(wǎng)掩碼是否與從數(shù)據(jù)庫中獲取的虛擬IP和虛擬IP子網(wǎng)掩碼一致,是則表示配置信息正確,否則不正確。
[0035]本發(fā)明達(dá)到的有益效果如下:本發(fā)明提供的技術(shù)方案與現(xiàn)有技術(shù)相比,通過自動(dòng)方式配置并實(shí)現(xiàn)虛擬IP,省去了人工操作,節(jié)約了人力成本,同時(shí)本發(fā)明提供的技術(shù)方案可直接應(yīng)用到服務(wù)器上由服務(wù)器自身實(shí)現(xiàn)虛擬IP,不需要第三方設(shè)備控制實(shí)現(xiàn),從而省去了NAT設(shè)備,降低了整個(gè)數(shù)字通信網(wǎng)絡(luò)的建設(shè)和維護(hù)成本。通過本發(fā)明提供的技術(shù)方案,可根據(jù)具體需要對(duì)代碼進(jìn)行調(diào)整,具有良好的可擴(kuò)展性。
【專利附圖】
【附圖說明】
[0036]為了更清楚的說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單的介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0037]圖1是本發(fā)明實(shí)施例1提供的虛擬IP的實(shí)現(xiàn)方法在雙機(jī)熱備應(yīng)用場(chǎng)景下的使用方法流程圖;
[0038]圖2-1是圖1所示自動(dòng)配置實(shí)現(xiàn)虛擬IP并啟動(dòng)應(yīng)用服務(wù)在Windows平臺(tái)下的實(shí)現(xiàn)流程圖;
[0039]圖2-2是圖1所示自動(dòng)刪除虛擬IP并停止應(yīng)用服務(wù)在Windows平臺(tái)下的實(shí)現(xiàn)流程圖;
[0040]圖3是本發(fā)明實(shí)施例2提供的一種基于Windows平臺(tái)的虛擬IP實(shí)現(xiàn)方法的流程圖;
[0041]圖4-1是圖1所示自動(dòng)配置實(shí)現(xiàn)虛擬IP并啟動(dòng)應(yīng)用服務(wù)在Linux平臺(tái)下的實(shí)現(xiàn)流程圖;
[0042]圖4-2是圖1所示自動(dòng)刪除虛擬IP并停止應(yīng)用服務(wù)在Linux平臺(tái)下的實(shí)現(xiàn)流程圖。
【具體實(shí)施方式】
[0043]為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合附圖對(duì)本發(fā)明實(shí)施方式做進(jìn)一步詳細(xì)描述。
[0044]虛擬IP可以使一臺(tái)計(jì)算機(jī)對(duì)外提供多個(gè)訪問的IP地址,發(fā)揮出VLAN的優(yōu)勢(shì),合理分配網(wǎng)絡(luò)資源,均衡網(wǎng)絡(luò)負(fù)載,在集群部署的時(shí)候常會(huì)使用到虛擬IP的技術(shù),對(duì)外提供一個(gè)虛擬IP訪問。
[0045]實(shí)施例1
[0046]為了對(duì)本發(fā)明提供的一種虛擬IP的實(shí)現(xiàn)方法有更深入的理解,首先在實(shí)施例1中對(duì)本發(fā)明提出的虛擬IP的實(shí)現(xiàn)方法在雙機(jī)熱備應(yīng)用場(chǎng)景下的使用進(jìn)行說明,如圖1所示,具體如下:
[0047]步驟101:開機(jī),啟動(dòng)定時(shí)心跳監(jiān)聽并實(shí)時(shí)記錄監(jiān)聽日志;
[0048]步驟102:判斷預(yù)設(shè)切換模式及本機(jī)狀態(tài),若為主機(jī)主機(jī)模式/主機(jī)則執(zhí)行步驟103,若為主機(jī)備機(jī)模式/主機(jī)則執(zhí)行步驟107,若為主機(jī)備機(jī)模式/備機(jī)則執(zhí)行步驟105 ;
[0049]本實(shí)施例中優(yōu)選的,所示預(yù)設(shè)切換模式包括主機(jī)主機(jī)模式、主機(jī)備機(jī)模式和主機(jī)備機(jī)模式,所述本機(jī)狀態(tài)可以為主機(jī)或備機(jī)。
[0050]步驟103:檢測(cè)監(jiān)聽目標(biāo)是否已經(jīng)啟動(dòng)應(yīng)用服務(wù),是則執(zhí)行步驟104,否則執(zhí)行步驟 107 ;
[0051]步驟104:判斷是否接收到啟動(dòng)應(yīng)用服務(wù)的通知,是則執(zhí)行步驟107,否則執(zhí)行步驟 102 ;
[0052]步驟105:檢測(cè)監(jiān)聽目標(biāo)是否已經(jīng)啟動(dòng)應(yīng)用服務(wù),是則執(zhí)行步驟106,否則執(zhí)行步驟 107 ;
[0053]步驟106:自動(dòng)刪除虛擬IP,并停止應(yīng)用服務(wù),返回步驟102 ;
[0054]步驟107:自動(dòng)配置實(shí)現(xiàn)虛擬IP,啟動(dòng)應(yīng)用服務(wù);
[0055]例如,啟動(dòng)的應(yīng)用服務(wù)為網(wǎng)銀系統(tǒng)或身份認(rèn)證系統(tǒng)等。
[0056]步驟108:檢測(cè)網(wǎng)關(guān)和應(yīng)用服務(wù)的運(yùn)行狀況,若應(yīng)用服務(wù)正常網(wǎng)關(guān)暢通則執(zhí)行步驟102,若應(yīng)用服務(wù)正常網(wǎng)關(guān)不暢通則執(zhí)行步驟110,若應(yīng)用服務(wù)異常網(wǎng)關(guān)暢通則執(zhí)行步驟109,若應(yīng)用服務(wù)異常網(wǎng)關(guān)不暢通則執(zhí)行步驟111 ;
[0057]步驟109:重新啟動(dòng)應(yīng)用服務(wù),若啟動(dòng)成功則返回執(zhí)行步驟108,若啟動(dòng)失敗則執(zhí)行步驟111 ;
[0058]步驟110:自動(dòng)刪除虛擬IP,并停止應(yīng)用服務(wù),執(zhí)行步驟111 ;
[0059]步驟111:根據(jù)當(dāng)前的監(jiān)聽日志判斷監(jiān)聽目標(biāo)是否正常工作,是則執(zhí)行步驟112,否則報(bào)警提示出錯(cuò),結(jié)束;
[0060]步驟112:向監(jiān)聽目標(biāo)發(fā)送啟動(dòng)應(yīng)用服務(wù)的通知,然后返回步驟102。
[0061]本實(shí)施例提供的雙機(jī)熱備方案應(yīng)用中的步驟107所述自動(dòng)配置實(shí)現(xiàn)虛擬IP,啟動(dòng)應(yīng)用服務(wù)的流程,在基于Windows平臺(tái)的具體實(shí)現(xiàn)如圖2-1所示,包括以下步驟:
[0062]步驟201:根據(jù)自身IP從數(shù)據(jù)庫中獲取到與自身IP綁定的網(wǎng)卡ID和網(wǎng)卡描述信息,從數(shù)據(jù)庫中獲取虛擬IP和虛擬IP子網(wǎng)掩碼。
[0063]步驟202:調(diào)用設(shè)備驅(qū)動(dòng)程序禁用所述網(wǎng)卡ID對(duì)應(yīng)的網(wǎng)卡;
[0064]本實(shí)施例中具體的,所述設(shè)備驅(qū)動(dòng)程序主要包括有第一函數(shù)、第二函數(shù)、第三函數(shù)、第四函數(shù)、第五函數(shù)、第六函數(shù)、第七函數(shù)、第八函數(shù)、第九函數(shù)和第十函數(shù)。
[0065]本步驟具體的,通過調(diào)用第一函數(shù)、第二函數(shù)、第三函數(shù)、第四函數(shù)、第五函數(shù)和第六函數(shù)實(shí)現(xiàn),其中調(diào)用第一函數(shù)可以獲取服務(wù)器上已安裝設(shè)備信息集合,調(diào)用第二函數(shù)可以對(duì)獲取的已安裝設(shè)備信息集合進(jìn)行枚舉得到一個(gè)當(dāng)前已安裝設(shè)備信息,調(diào)用第三函數(shù)可以獲取當(dāng)前已安裝設(shè)備的詳細(xì)設(shè)備信息;調(diào)用第四和第五函數(shù)可以將當(dāng)前已安裝設(shè)備的詳細(xì)信息中包含的安裝參數(shù)修改為第一預(yù)設(shè)值并使修改生效;調(diào)用第六函數(shù)可以釋放調(diào)用第一函數(shù)至第五函數(shù)所做操作占用的內(nèi)存。
[0066]步驟203:根據(jù)數(shù)據(jù)庫中的預(yù)設(shè)標(biāo)志位判斷是否已設(shè)置虛擬IP,是則執(zhí)行步驟204,否則執(zhí)行步驟205 ;
[0067]本實(shí)施例中優(yōu)選的,當(dāng)預(yù)設(shè)標(biāo)志位為I時(shí)表示已設(shè)置虛擬IP,當(dāng)預(yù)設(shè)標(biāo)志位為O時(shí)表不未設(shè)置虛擬IP。
[0068]步驟204:調(diào)用設(shè)備驅(qū)動(dòng)程序刪除所述網(wǎng)卡ID對(duì)應(yīng)的網(wǎng)卡的注冊(cè)表中與所述網(wǎng)卡描述信息對(duì)應(yīng)的虛擬IP和虛擬IP子網(wǎng)掩碼,然后執(zhí)行步驟205 ;
[0069]本步驟具體的,通過調(diào)用第七函數(shù)、第八函數(shù)、第九函數(shù)和第十函數(shù)實(shí)現(xiàn),其中調(diào)用第七和第八函數(shù)可以從所述網(wǎng)卡ID對(duì)應(yīng)的網(wǎng)卡的注冊(cè)表中獲取原始IP、原始IP子網(wǎng)掩碼;調(diào)用第九函數(shù)可以從原始IP、原始IP子網(wǎng)掩碼中刪除虛擬IP、虛擬IP子網(wǎng)掩碼對(duì)應(yīng)的字段,并將刪除操作后的注冊(cè)表回寫到注冊(cè)表鍵中的相應(yīng)位置;調(diào)用第十函數(shù)可以釋放調(diào)用第七函數(shù)至第九函數(shù)所做操作占用的內(nèi)存。
[0070]步驟205:調(diào)用設(shè)備驅(qū)動(dòng)程序在所述網(wǎng)卡ID對(duì)應(yīng)的網(wǎng)卡上綁定從數(shù)據(jù)庫中獲取的所述虛擬IP和虛擬IP子網(wǎng)掩碼,并更新數(shù)據(jù)庫中的預(yù)設(shè)標(biāo)志位;
[0071]本步驟具體的,通過調(diào)用第七函數(shù)、第八函數(shù)、第九函數(shù)和第十函數(shù)實(shí)現(xiàn),其中調(diào)用第七和第八函數(shù)可以從所述網(wǎng)卡ID對(duì)應(yīng)的網(wǎng)卡的注冊(cè)表中獲取原始IP、原始IP子網(wǎng)掩碼;調(diào)用第九函數(shù)可以在原始IP、原始IP子網(wǎng)掩碼的字段中綁定從數(shù)據(jù)庫中獲取的所述虛擬IP、虛擬IP子網(wǎng)掩碼,并將綁定操作后的注冊(cè)表回寫到注冊(cè)表鍵中的相應(yīng)位置;調(diào)用第十函數(shù)可以釋放調(diào)用第七函數(shù)至第九函數(shù)所做操作占用的內(nèi)存。
[0072]本實(shí)施例中優(yōu)選的,本步驟具體為將預(yù)設(shè)標(biāo)志位設(shè)置為I。
[0073]步驟206:調(diào)用設(shè)備驅(qū)動(dòng)程序啟用所述網(wǎng)卡ID對(duì)應(yīng)的網(wǎng)卡。
[0074]本步驟具體的,通過調(diào)用第一函數(shù)、第二函數(shù)、第三函數(shù)、第四函數(shù)、第五函數(shù)和第六函數(shù)實(shí)現(xiàn),其中調(diào)用第一函數(shù)可以獲取服務(wù)器上已安裝設(shè)備信息集合,調(diào)用第二函數(shù)可以對(duì)獲取的已安裝設(shè)備信息集合進(jìn)行枚舉得到一個(gè)當(dāng)前已安裝設(shè)備信息,調(diào)用第三函數(shù)可以獲取當(dāng)前已安裝設(shè)備的詳細(xì)設(shè)備信息;調(diào)用第四和第五函數(shù)可以將當(dāng)前已安裝設(shè)備的詳細(xì)信息中包含的安裝參數(shù)修改為第二預(yù)設(shè)值并使修改生效;調(diào)用第六函數(shù)可以釋放調(diào)用第一函數(shù)至第五函數(shù)所做操作占用的內(nèi)存。
[0075]步驟207:啟動(dòng)應(yīng)用服務(wù)。
[0076]本實(shí)施例提供的雙機(jī)熱備方案應(yīng)用中的步驟106或步驟110所述自動(dòng)刪除虛擬IP,并停止應(yīng)用服務(wù)的流程,在基于Windows平臺(tái)的具體實(shí)現(xiàn)如圖2-2所示,包括以下步驟:
[0077]步驟201’:調(diào)用設(shè)備驅(qū)動(dòng)程序禁用所述網(wǎng)卡ID對(duì)應(yīng)的網(wǎng)卡;
[0078]本步驟具體的,通過調(diào)用第一函數(shù)、第二函數(shù)、第三函數(shù)、第四函數(shù)、第五函數(shù)和第六函數(shù)實(shí)現(xiàn),其中調(diào)用第一函數(shù)可以獲取服務(wù)器上已安裝設(shè)備信息集合,調(diào)用第二函數(shù)可以對(duì)獲取的已安裝設(shè)備信息集合進(jìn)行枚舉得到一個(gè)當(dāng)前已安裝設(shè)備信息,調(diào)用第三函數(shù)可以獲取當(dāng)前已安裝設(shè)備的詳細(xì)設(shè)備信息;調(diào)用第四和第五函數(shù)可以將當(dāng)前已安裝設(shè)備的詳細(xì)信息中包含的安裝參數(shù)修改為第一預(yù)設(shè)值并使修改生效;調(diào)用第六函數(shù)可以釋放調(diào)用第一函數(shù)至第五函數(shù)所做操作占用的內(nèi)存。
[0079]步驟202’:調(diào)用設(shè)備驅(qū)動(dòng)程序刪除所述網(wǎng)卡ID對(duì)應(yīng)的網(wǎng)卡的注冊(cè)表中與所述網(wǎng)卡描述信息對(duì)應(yīng)的虛擬IP和虛擬IP子網(wǎng)掩碼,并更新數(shù)據(jù)庫中的預(yù)設(shè)標(biāo)志位;
[0080]本步驟具體的,通過調(diào)用第七函數(shù)、第八函數(shù)、第九函數(shù)和第十函數(shù)實(shí)現(xiàn),其中調(diào)用第七和第八函數(shù)可以從所述網(wǎng)卡ID對(duì)應(yīng)的網(wǎng)卡的注冊(cè)表中獲取原始IP、原始IP子網(wǎng)掩碼;調(diào)用第九函數(shù)可以從原始IP、原始IP子網(wǎng)掩碼中刪除虛擬IP、虛擬IP子網(wǎng)掩碼對(duì)應(yīng)的字段,并將刪除操作后的注冊(cè)表回寫到注冊(cè)表鍵中的相應(yīng)位置;調(diào)用第十函數(shù)可以釋放調(diào)用第七函數(shù)至第九函數(shù)所做操作占用的內(nèi)存。
[0081]本實(shí)施例中優(yōu)選的,本步驟具體為將預(yù)設(shè)標(biāo)志位設(shè)置為O。
[0082]步驟203’:調(diào)用設(shè)備驅(qū)動(dòng)程序啟用所述網(wǎng)卡ID對(duì)應(yīng)的網(wǎng)卡。
[0083]本步驟具體的,通過調(diào)用第一函數(shù)、第二函數(shù)、第三函數(shù)、第四函數(shù)、第五函數(shù)和第六函數(shù)實(shí)現(xiàn),其中調(diào)用第一函數(shù)可以獲取服務(wù)器上已安裝設(shè)備信息集合,調(diào)用第二函數(shù)可以對(duì)獲取的已安裝設(shè)備信息集合進(jìn)行枚舉得到一個(gè)當(dāng)前已安裝設(shè)備信息,調(diào)用第三函數(shù)可以獲取當(dāng)前已安裝設(shè)備的詳細(xì)設(shè)備信息;調(diào)用第四和第五函數(shù)可以將當(dāng)前已安裝設(shè)備的詳細(xì)信息中包含的安裝參數(shù)修改為第二預(yù)設(shè)值并使修改生效;調(diào)用第六函數(shù)可以釋放調(diào)用第一函數(shù)至第五函數(shù)所做操作占用的內(nèi)存。
[0084]步驟204’:停止應(yīng)用服務(wù)。
[0085]實(shí)施例2
[0086]如圖3所示是本實(shí)施例2提供的一種基于Windows平臺(tái)的虛擬IP實(shí)現(xiàn)方法,包括以下內(nèi)容:
[0087]步驟301:根據(jù)自身IP從數(shù)據(jù)庫中獲取到與該IP綁定的網(wǎng)卡ID和網(wǎng)卡描述信息;
[0088]例如,自身IP 是 192.168.16.47。
[0089]步驟302:從數(shù)據(jù)庫中獲取虛擬IP與虛擬IP子網(wǎng)掩碼;
[0090]例如:虛擬IP 是 192.168.25.200,虛擬 IP 子網(wǎng)掩碼是 255.255.255.0。
[0091]步驟303:從數(shù)據(jù)庫中獲取表示是否已設(shè)置虛擬IP的字段值;
[0092]例如:獲取到的字段值是flag。
[0093]步驟304:調(diào)用SetupDiGetClassDevs函數(shù)獲取已安裝設(shè)備信息集合;
[0094]例如:獲取的已安裝設(shè)備信息集合是:
[0095]({650D5BB1-9BB4-45CD-90C8-ECE70B72EB35},
[0096]{E90A38FA-BA87-40F8-8BA9-B86F6852A9D3},
[0097]{4D36E96C-E325-11CE-BFC1-08002BE10318},
[0098]{4D36E96D-E325-11CE-BFC1-08002BE10318}
[0099]....)
[0100]步驟305:調(diào)用SetupDiEnumDeviceInfo函數(shù)枚舉所述已安裝設(shè)備信息集合,獲取一個(gè)當(dāng)前已安裝設(shè)備信息;
[0101]例如:獲取的當(dāng)前已安裝設(shè)備信息是:
[0102]({650D5BB1-9BB4-45CD-90C8-ECE70B72EB35})。
[0103]步驟306:調(diào)用SetupDiGetDeviceRegistryProperty函數(shù)獲取當(dāng)前已安裝設(shè)備信息對(duì)應(yīng)的設(shè)備詳細(xì)信息;
[0104]步驟307:比較所述設(shè)備詳細(xì)信息中包含的描述信息與從數(shù)據(jù)庫中獲取的所述網(wǎng)卡描述信息是否相同,是則執(zhí)行步驟308,否則返回執(zhí)行步驟305 ;
[0105]步驟308:調(diào)用SetupDiSetClassInstallParams函數(shù)將所述設(shè)備詳細(xì)信息中包含的安裝參數(shù)修改為第一預(yù)設(shè)值;
[0106]本實(shí)施例中具體的,安裝參數(shù)是stateChange,第一預(yù)設(shè)值是DICS_DISABLE。
[0107]步驟309:調(diào)用SetupDiCallClassInstalIer函數(shù)使得對(duì)安裝參數(shù)的修改生效;
[0108]步驟310:調(diào)用 SetupDiDestroyDeviceInfoList 函數(shù)釋放當(dāng)前內(nèi)存;
[0109]具體的,通過調(diào)用SetupDiDestroyDeviceInfoList函數(shù)銷毀獲取的已安裝設(shè)備信息集合釋放當(dāng)前內(nèi)存。
[0110]步驟311:根據(jù)所述字段值判斷是否已設(shè)置虛擬IP,是則執(zhí)行步驟312,否則執(zhí)行步驟316 ;
[0111]步驟312:調(diào)用RegOpenKeyEx函數(shù)打開所述網(wǎng)卡描述信息所對(duì)應(yīng)的注冊(cè)表鍵;
[0112]具體的,所述網(wǎng)卡描述信息所對(duì)應(yīng)的注冊(cè)表鍵為:SYSTEM\\CurrentControlSet\\Services\\Tcpip\\Parameters\\Interfaces ο
[0113]步驟313:調(diào)用RegQueryValueEx函數(shù)從注冊(cè)表中獲取所述網(wǎng)卡描述信息對(duì)應(yīng)的原始IP、原始IP子網(wǎng)掩碼;
[0114]例如:獲取的原始IP是192.168.16.47(192.168.25.200),原始IP子網(wǎng)掩碼是255.255.255.0 (255.255.255.0)。
[0115]步驟314:調(diào)用RegSetValueEx函數(shù)從原始IP、原始IP子網(wǎng)掩碼中刪除虛擬IP、虛擬IP子網(wǎng)掩碼對(duì)應(yīng)的字段,并將刪除操作后的IP和子網(wǎng)掩碼回寫到注冊(cè)表鍵中的相應(yīng)位置;
[0116]例如:刪除操作后的IP和子網(wǎng)掩碼分別是192.168.16.47和255.255.255.0。
[0117]步驟315:調(diào)用RegCloseKey函數(shù)釋放當(dāng)前內(nèi)存,執(zhí)行步驟316 ;
[0118]具體的,通過釋放當(dāng)前打開的注冊(cè)表鍵釋放當(dāng)前內(nèi)存。
[0119]步驟316:調(diào)用RegOpenKeyEx函數(shù)打開所述網(wǎng)卡描述信息所對(duì)應(yīng)的注冊(cè)表鍵;
[0120]步驟317:調(diào)用RegQueryValueEx函數(shù)從注冊(cè)表中獲取所述網(wǎng)卡描述信息對(duì)應(yīng)的原始IP、原始IP子網(wǎng)掩碼;
[0121]步驟318:調(diào)用RegSetValueEx函數(shù)在原始IP、原始IP子網(wǎng)掩碼的字段中綁定從數(shù)據(jù)庫中獲取的所述虛擬IP、虛擬IP子網(wǎng)掩碼,并將綁定操作后的IP和子網(wǎng)掩碼回寫到注冊(cè)表鍵中的相應(yīng)位置,更改所述字段值并寫入數(shù)據(jù)庫中;
[0122]例如,綁定操作后的IP是192.168.16.47(192.168.25.200),子網(wǎng)掩碼是255.255.255.0 (255.255.255.0)。
[0123]步驟319:調(diào)用RegCloseKey函數(shù)釋放當(dāng)前內(nèi)存;
[0124]具體的,通過釋放當(dāng)前打開的注冊(cè)表鍵釋放當(dāng)前內(nèi)存。
[0125]步驟320:調(diào)用SetupDiGetClassDevs函數(shù)獲取已安裝設(shè)備信息集合;
[0126]步驟321:調(diào)用SetupDiEnumDeviceInfo函數(shù)枚舉所述已安裝設(shè)備信息集合,獲取一個(gè)當(dāng)前已安裝設(shè)備信息;
[0127]步驟322:調(diào)用SetupDiGetDeviceRegistryProperty函數(shù)獲取當(dāng)前已安裝設(shè)備信息對(duì)應(yīng)的設(shè)備詳細(xì)信息;
[0128]步驟323:比較所述設(shè)備詳細(xì)信息中包含的描述信息與從數(shù)據(jù)庫中獲取的所述網(wǎng)卡描述信息是否相同,是則執(zhí)行步驟324,否則返回執(zhí)行步驟321 ;
[0129]步驟324:調(diào)用SetupDiSetClassInstallParams函數(shù)將所述設(shè)備詳細(xì)信息中包含的安裝參數(shù)修改為第二預(yù)設(shè)值;
[0130]本實(shí)施例中具體的,安裝參數(shù)是stateChange,第二預(yù)設(shè)值是DICS_ENABLE。
[0131]步驟325:調(diào)用SetupDiCallClassInstalIer函數(shù)使得對(duì)安裝參數(shù)的修改生效;
[0132]步驟326:調(diào)用 SetupDiDestroyDeviceInfoList 函數(shù)釋放當(dāng)前內(nèi)存。
[0133]具體的,通過調(diào)用SetupDiDestroyDeviceInfoList函數(shù)銷毀獲取的已安裝設(shè)備信息集合釋放當(dāng)前內(nèi)存。
[0134]實(shí)施例3
[0135]本實(shí)施例是在實(shí)施例1提供的雙機(jī)熱備方案基礎(chǔ)上提供的,其中圖1中所述自動(dòng)配置實(shí)現(xiàn)虛擬IP,啟動(dòng)應(yīng)用服務(wù)的流程,在基于Iinux平臺(tái)的具體實(shí)現(xiàn)如圖4-1所示,包括以下步驟:
[0136]步驟401:根據(jù)自身IP從數(shù)據(jù)庫中獲取到與自身IP綁定的網(wǎng)卡ID,從數(shù)據(jù)庫中獲取虛擬IP和虛擬IP子網(wǎng)掩碼;
[0137]例如,獲取的網(wǎng)卡ID為ethO,獲取的虛擬IP為192.168.25.100,獲取的虛擬IP子網(wǎng)掩碼為255.255.255.0。
[0138]步驟402:執(zhí)行查詢配置信息命令;
[0139]例如:所述查詢配置信息命令為:ifconfig eth0:0。
[0140]步驟403:根據(jù)所述查詢配置信息命令的命令執(zhí)行結(jié)果判斷所述網(wǎng)卡ID對(duì)應(yīng)的網(wǎng)卡的配置信息是否正確,是則執(zhí)行步驟405,否則執(zhí)行步驟404 ;
[0141]例如,所述命令執(zhí)行結(jié)果為:
[0142]eth0:0 Link encap:Ethernet HWaddr 00:50:56:81:73:F3
[0143]inet addr: 192.168.25.220 Beast: 192.168.25.100
[0144]Mask:255.255.255.0
[0145]UP BROADCAST RUNNING MULTICAST MTU:1500
[0146]Metric:1
[0147]所述命令執(zhí)行結(jié)果中的Beast:192.168.25.100和Mask: 255.255.255.0與從數(shù)據(jù)庫中獲取的虛擬IP和虛擬IP子網(wǎng)掩碼一致,則判斷結(jié)果為所述網(wǎng)卡的配置信息正確。
[0148]步驟404:執(zhí)行停止虛擬IP命令刪除所述配置信息中的虛擬IP和虛擬IP子網(wǎng)掩碼,執(zhí)行配置命令在所述配置信息中增加從數(shù)據(jù)庫中獲取的所述虛擬IP和虛擬IP子網(wǎng)掩碼,執(zhí)行步驟405 ;
[0149]例如,對(duì)所述網(wǎng)卡ID對(duì)應(yīng)的網(wǎng)卡執(zhí)行的所述停止虛擬IP命令為:ifconfgethO: O down。執(zhí)行的所述配置命令為:ifconfig ethO: O 192.168.25.100 netmask255.255.255.0up0
[0150]步驟405:進(jìn)入配置目錄下的配置文件,執(zhí)行檢查配置文件命令;
[0151]例如,進(jìn)入配置目錄下的配置文件具體為執(zhí)行命令:cd/etc/sysconfig/network-scripts ;執(zhí)行的所述檢查配置文件命令具體為:more ifcfg-ethO:O。
[0152]步驟406:根據(jù)所述檢查配置文件命令的命令執(zhí)行結(jié)果判斷配置文件中的配置信息是否正確,是則執(zhí)行步驟408,否則執(zhí)行步驟407:
[0153]例如,執(zhí)行more ifcfg_eth0:0后得到的命令執(zhí)行結(jié)果為:DEVICE = eth0:0
[0154]B00TPR0T0 = none
[0155]IPADDR = 192.168.25.80
[0156]NETMASK = 255.255.255.0
[0157]GATEWAY = 192.168.25.254
[0158]HWADDR = 00:50:56:81:73: f3
[0159]NM_C0NTR0LLED = yes
[0160]0NB00T = yes
[0161]TYPE = Ethernet
[0162]IPV6INIT = no
[0163]USERCTL = no
[0164]上述命令執(zhí)行結(jié)果中包含的IPADDR = 192.168.25.80與從數(shù)據(jù)庫中獲取的虛擬IP = 192.168.25.100 不同,則執(zhí)行步驟 407。
[0165]步驟407:執(zhí)行刪除命令刪除所述配置文件,執(zhí)行寫入命令在所述配置目錄下重新寫入一個(gè)在配置信息中包含有從數(shù)據(jù)庫中獲取的所述虛擬IP和虛擬IP子網(wǎng)掩碼的配置文件,執(zhí)行步驟408 ;
[0166]例如,執(zhí)行的所述刪除命令具體為:rm ifcfg-ethO:O ;執(zhí)行的所述寫入命令具體為:
[0167]vi ifcfg-ethO: O
[0168]DEVICE = ethO:0
[0169]B00TPR0T0 = none
[0170]IPADDR = 192.168.25.100[0171 ] NETMASK = 255.255.255.0
[0172]GATEWAY = 192.168.25.254
[0173]HWADDR = 00:50:56:81:73:f3
[0174]NM_C0NTR0LLED = yes
[0175]0NB00T = yes
[0176]TYPE = Ethernet
[0177]IPV6INIT = no
[0178]USERCTL = no
[0179]步驟408:啟動(dòng)應(yīng)用服務(wù)。
[0180]本實(shí)施例是在實(shí)施例1提供的雙機(jī)熱備方案基礎(chǔ)上提供的,其中圖1中所述自動(dòng)刪除虛擬IP,停止應(yīng)用服務(wù)的流程,在基于Iinux平臺(tái)的具體實(shí)現(xiàn)如圖4-2所示,包括以下步驟:
[0181]步驟401’:執(zhí)行停止虛擬IP命令刪除配置信息中的虛擬IP和虛擬IP子網(wǎng)掩碼;
[0182]例如,所述停止虛擬IP命令具體為:ifconfg eth0:0 down。
[0183]步驟402’:進(jìn)入配置目錄下的配置文件;
[0184]例如,通過執(zhí)行命令cd/etc/sysconfig/network-scripts進(jìn)入配置目錄下的配置文件。
[0185]步驟403’:執(zhí)行刪除命令刪除所述配置文件;
[0186]例如,執(zhí)行的所述刪除命令具體為:rm ifcfg-ethO:O。
[0187]步驟404’:停止應(yīng)用服務(wù)。
[0188]以上所述的實(shí)施例只是本發(fā)明較優(yōu)選的【具體實(shí)施方式】,本領(lǐng)域的技術(shù)人員在本發(fā)明技術(shù)方案范圍內(nèi)進(jìn)行的通常變化和替換都應(yīng)包含在本發(fā)明的保護(hù)范圍內(nèi)。
【權(quán)利要求】
1.一種虛擬IP的實(shí)現(xiàn)方法,其特征是,包括: 步驟S1:計(jì)算機(jī)根據(jù)自身IP從數(shù)據(jù)庫中獲取到與自身IP綁定的網(wǎng)卡ID和網(wǎng)卡描述信息,從數(shù)據(jù)庫中獲取虛擬IP和虛擬IP子網(wǎng)掩碼; 步驟S2:調(diào)用設(shè)備驅(qū)動(dòng)程序禁用所述網(wǎng)卡ID對(duì)應(yīng)的網(wǎng)卡; 步驟S3:根據(jù)數(shù)據(jù)庫中的預(yù)設(shè)標(biāo)志位判斷是否已設(shè)置虛擬IP,是則執(zhí)行步驟S4,否則執(zhí)行步驟S5 ; 步驟S4:調(diào)用設(shè)備驅(qū)動(dòng)程序刪除所述網(wǎng)卡ID對(duì)應(yīng)的網(wǎng)卡的注冊(cè)表中與所述網(wǎng)卡描述信息對(duì)應(yīng)的虛擬IP和虛擬IP子網(wǎng)掩碼,然后執(zhí)行步驟S5 ; 步驟S5:調(diào)用設(shè)備驅(qū)動(dòng)程序在所述網(wǎng)卡ID對(duì)應(yīng)的網(wǎng)卡上綁定從數(shù)據(jù)庫中獲取的虛擬IP和虛擬IP子網(wǎng)掩碼,并更新數(shù)據(jù)庫中的預(yù)設(shè)標(biāo)志位; 步驟S6:調(diào)用設(shè)備驅(qū)動(dòng)程序啟用所述網(wǎng)卡ID對(duì)應(yīng)的網(wǎng)卡。
2.如權(quán)利要求1所述的方法,其特征是:所述步驟SI之前還包括步驟SO:計(jì)算機(jī)啟動(dòng)定時(shí)心跳監(jiān)聽并實(shí)時(shí)記錄監(jiān)聽日志。
3.如權(quán)利要求2所述的方法,其特征是:所述步驟SO與所述步驟SI之間還包括:計(jì)算機(jī)判斷預(yù)設(shè)切換模式及本機(jī)狀態(tài),當(dāng)所述預(yù)設(shè)切換模式及本機(jī)狀態(tài)為主機(jī)備機(jī)模式/主機(jī)時(shí),所述計(jì)算機(jī)執(zhí)行所述步驟S1-步驟S6之后啟動(dòng)應(yīng)用服務(wù); 當(dāng)所述預(yù)設(shè)切換模式及本機(jī)狀態(tài)為主機(jī)主機(jī)模式/主機(jī),且檢測(cè)到監(jiān)聽目標(biāo)未啟動(dòng)應(yīng)用服務(wù)時(shí),所述計(jì)算機(jī)執(zhí)行所述步驟S1-步驟S6之后啟動(dòng)應(yīng)用服務(wù); 當(dāng)所述預(yù)設(shè)切換模式及本機(jī)狀態(tài)為主機(jī)備機(jī)模式/備機(jī),且檢測(cè)到監(jiān)聽目標(biāo)未啟動(dòng)應(yīng)用服務(wù)時(shí),所述計(jì)算機(jī)執(zhí)行所述步驟S1-步驟S6之后啟動(dòng)應(yīng)用服務(wù)。
4.如權(quán)利要求3所述的方法,其特征是:當(dāng)所述預(yù)設(shè)切換模式及本機(jī)狀態(tài)為主機(jī)主機(jī)模式/主機(jī),且檢測(cè)到監(jiān)聽目標(biāo)已啟動(dòng)應(yīng)用服務(wù)時(shí),所述計(jì)算機(jī)判斷是否接收到啟動(dòng)應(yīng)用服務(wù)的通知,是則執(zhí)行所述步驟S1-步驟S6之后啟動(dòng)應(yīng)用服務(wù);否則返回執(zhí)行所述判斷預(yù)設(shè)切換模式及本機(jī)狀態(tài)。
5.如權(quán)利要求3所述的方法,其特征是:當(dāng)所述預(yù)設(shè)切換模式及本機(jī)狀態(tài)為主機(jī)備機(jī)模式/備機(jī),且檢測(cè)到監(jiān)聽目標(biāo)已啟動(dòng)應(yīng)用服務(wù)時(shí),所述計(jì)算機(jī)執(zhí)行自動(dòng)刪除虛擬IP的操作后停止應(yīng)用服務(wù),然后返回執(zhí)行所述判斷預(yù)設(shè)切換模式及本機(jī)狀態(tài)。
6.如權(quán)利要求5所述的方法,其特征是:所述自動(dòng)刪除虛擬IP的操作具體包括: 步驟S1:調(diào)用設(shè)備驅(qū)動(dòng)程序禁用所述網(wǎng)卡ID對(duì)應(yīng)的網(wǎng)卡; 步驟s2:調(diào)用設(shè)備驅(qū)動(dòng)程序刪除所述網(wǎng)卡ID對(duì)應(yīng)的網(wǎng)卡的注冊(cè)表中與所述網(wǎng)卡描述信息對(duì)應(yīng)的虛擬IP和虛擬IP子網(wǎng)掩碼,并更新數(shù)據(jù)庫中的預(yù)設(shè)標(biāo)志位; 步驟s3:調(diào)用設(shè)備驅(qū)動(dòng)程序啟用所述網(wǎng)卡ID對(duì)應(yīng)的網(wǎng)卡。
7.如權(quán)利要求3或4所述的方法,其特征是:所述啟動(dòng)應(yīng)用服務(wù)之后包括: 步驟1:檢測(cè)網(wǎng)關(guān)和應(yīng)用服務(wù)的運(yùn)行狀況,若應(yīng)用服務(wù)正常網(wǎng)關(guān)暢通,則返回執(zhí)行所述判斷預(yù)設(shè)切換模式及本機(jī)狀態(tài);若應(yīng)用服務(wù)正常網(wǎng)關(guān)不暢通,則執(zhí)行自動(dòng)刪除虛擬IP的操作后停止應(yīng)用服務(wù),然后執(zhí)行步驟2 ;若應(yīng)用服務(wù)異常網(wǎng)關(guān)不暢通則直接執(zhí)行步驟2 ;若應(yīng)用服務(wù)異常網(wǎng)關(guān)暢通則重新啟動(dòng)應(yīng)用服務(wù),若啟動(dòng)成功則返回繼續(xù)執(zhí)行步驟1,若啟動(dòng)失敗則執(zhí)行步驟2 ; 步驟2:根據(jù)當(dāng)前的監(jiān)聽日志判斷監(jiān)聽目標(biāo)是否正常工作,是則向監(jiān)聽目標(biāo)發(fā)送啟動(dòng)應(yīng)用服務(wù)的通知后返回執(zhí)行所述判斷預(yù)設(shè)切換模式及本機(jī)狀態(tài),否則報(bào)警提示出錯(cuò),結(jié)束。
8.如權(quán)利要求1所述的方法,其特征是:步驟S2所述調(diào)用設(shè)備驅(qū)動(dòng)程序禁用所述網(wǎng)卡ID對(duì)應(yīng)的網(wǎng)卡具體為:調(diào)用第一函數(shù)獲取服務(wù)器上已安裝設(shè)備信息集合,調(diào)用第二函數(shù)對(duì)獲取的已安裝設(shè)備信息集合進(jìn)行枚舉得到一個(gè)當(dāng)前已安裝設(shè)備信息,調(diào)用第三函數(shù)獲取當(dāng)前已安裝設(shè)備的詳細(xì)設(shè)備信息;調(diào)用第四函數(shù)和第五函數(shù)將當(dāng)前已安裝設(shè)備的詳細(xì)信息中包含的安裝參數(shù)修改為第一預(yù)設(shè)值并使修改生效;調(diào)用第六函數(shù)釋放當(dāng)前內(nèi)存。
9.如權(quán)利要求1所述的方法,其特征是:步驟S4所述調(diào)用設(shè)備驅(qū)動(dòng)程序刪除所述網(wǎng)卡ID對(duì)應(yīng)的網(wǎng)卡的注冊(cè)表中與所述網(wǎng)卡描述信息對(duì)應(yīng)的虛擬IP和虛擬IP子網(wǎng)掩碼具體為:調(diào)用第七函數(shù)和第八函數(shù)從所述網(wǎng)卡ID對(duì)應(yīng)的網(wǎng)卡的注冊(cè)表中獲取原始IP、原始IP子網(wǎng)掩碼;調(diào)用第九函數(shù)從原始IP、原始IP子網(wǎng)掩碼中刪除虛擬IP、虛擬IP子網(wǎng)掩碼對(duì)應(yīng)的字段,并將刪除操作后的注冊(cè)表回寫到注冊(cè)表鍵中的相應(yīng)位置;調(diào)用第十函數(shù)釋放當(dāng)前內(nèi)存。
10.如權(quán)利要求1所述的方法,其特征是:步驟S5所述調(diào)用設(shè)備驅(qū)動(dòng)程序在所述網(wǎng)卡ID對(duì)應(yīng)的網(wǎng)卡上綁定從數(shù)據(jù)庫中獲取的虛擬IP和虛擬IP子網(wǎng)掩碼具體為:調(diào)用第七函數(shù)和第八函數(shù)從所述網(wǎng)卡ID對(duì)應(yīng)的網(wǎng)卡的注冊(cè)表中獲取原始IP、原始IP子網(wǎng)掩碼;調(diào)用第九函數(shù)在原始IP、原始IP子網(wǎng)掩碼的字段中綁定從數(shù)據(jù)庫中獲取的虛擬IP、虛擬IP子網(wǎng)掩碼,并將綁定操作后的注冊(cè)表回寫到注冊(cè)表鍵中的相應(yīng)位置;調(diào)用第十函數(shù)釋放當(dāng)前內(nèi)存。
11.如權(quán)利要求1所述的方法,其特征是:步驟S6所述調(diào)用設(shè)備驅(qū)動(dòng)程序啟用所述網(wǎng)卡ID對(duì)應(yīng)的網(wǎng)卡具體為:調(diào)用第一函數(shù)獲取服務(wù)器上已安裝設(shè)備信息集合,調(diào)用第二函數(shù)對(duì)獲取的已安裝設(shè)備信息集合進(jìn)行枚舉得到一個(gè)當(dāng)前已安裝設(shè)備信息,調(diào)用第三函數(shù)獲取當(dāng)前已安裝設(shè)備的詳細(xì)設(shè)備信息;調(diào)用第四函數(shù)和第五函數(shù)將當(dāng)前已安裝設(shè)備的詳細(xì)信息中包含的安裝參數(shù)修改為第二預(yù)設(shè)值并使修改生效;調(diào)用第六函數(shù)釋放當(dāng)前內(nèi)存。
12.—種虛擬IP的實(shí)現(xiàn)方法,其特征是,包括: 步驟S1:計(jì)算機(jī)根據(jù)自身IP從數(shù)據(jù)庫中獲取到與自身IP綁定的網(wǎng)卡ID,從數(shù)據(jù)庫中獲取虛擬IP和虛擬IP子網(wǎng)掩碼;執(zhí)行查詢配置信息命令; 步驟S2:根據(jù)所述查詢配置信息命令的命令執(zhí)行結(jié)果判斷所述網(wǎng)卡ID對(duì)應(yīng)的網(wǎng)卡的配置信息是否正確,是則執(zhí)行步驟S4,否則執(zhí)行步驟S3 ; 步驟S3:執(zhí)行停止虛擬IP命令刪除所述配置信息中的虛擬IP和虛擬IP子網(wǎng)掩碼,執(zhí)行配置命令在所述配置信息中增加從數(shù)據(jù)庫中獲取的虛擬IP和虛擬IP子網(wǎng)掩碼,執(zhí)行步驟S4 ; 步驟S4:進(jìn)入配置目錄下的配置文件,執(zhí)行檢查配置文件命令; 步驟S5:根據(jù)所述檢查配置文件命令的命令執(zhí)行結(jié)果判斷配置文件中的配置信息是否正確,是則結(jié)束,否則執(zhí)行步驟S6 ; 步驟S6:執(zhí)行刪除命令刪除所述配置文件,執(zhí)行寫入命令在所述配置目錄下重新寫入一個(gè)配置文件,重新寫入的配置文件的配置信息中包含有從數(shù)據(jù)庫中獲取的虛擬IP和虛擬IP子網(wǎng)掩碼,結(jié)束。
13.如權(quán)利要求12所述方法,其特征是:步驟S2所述根據(jù)所述查詢配置信息命令的命令執(zhí)行結(jié)果判斷所述網(wǎng)卡ID對(duì)應(yīng)的網(wǎng)卡的配置信息是否正確具體為:判斷所述查詢配置信息命令的命令執(zhí)行結(jié)果中包含的虛擬IP和虛擬IP子網(wǎng)掩碼是否與從數(shù)據(jù)庫中獲取的虛擬IP和虛擬IP子網(wǎng)掩碼一致,是則表示配置信息正確,否則不正確。
14.如權(quán)利要求12所述的方法,其特征是:所述步驟SI之前還包括步驟SO:計(jì)算機(jī)啟動(dòng)定時(shí)心跳監(jiān)聽并實(shí)時(shí)記錄監(jiān)聽日志。
15.如權(quán)利要求14所述的方法,其特征是:所述步驟SO與所述步驟SI之間還包括:計(jì)算機(jī)判斷預(yù)設(shè)切換模式及本機(jī)狀態(tài),當(dāng)所述預(yù)設(shè)切換模式及本機(jī)狀態(tài)為主機(jī)備機(jī)模式/主機(jī)時(shí),所述計(jì)算機(jī)執(zhí)行所述步驟S1-步驟S6之后啟動(dòng)應(yīng)用服務(wù); 當(dāng)所述預(yù)設(shè)切換模式及本機(jī)狀態(tài)為主機(jī)主機(jī)模式/主機(jī),且檢測(cè)到監(jiān)聽目標(biāo)未啟動(dòng)應(yīng)用服務(wù)時(shí),所述計(jì)算機(jī)執(zhí)行所述步驟S1-步驟S6之后啟動(dòng)應(yīng)用服務(wù); 當(dāng)所述預(yù)設(shè)切換模式及本機(jī)狀態(tài)為主機(jī)備機(jī)模式/備機(jī),且檢測(cè)到監(jiān)聽目標(biāo)未啟動(dòng)應(yīng)用服務(wù)時(shí),所述計(jì)算機(jī)執(zhí)行所述步驟S1-步驟S6之后啟動(dòng)應(yīng)用服務(wù)。
16.如權(quán)利要求15所述的方法,其特征是:當(dāng)所述預(yù)設(shè)切換模式及本機(jī)狀態(tài)為主機(jī)主機(jī)模式/主機(jī),且檢測(cè)到監(jiān)聽目標(biāo)已啟動(dòng)應(yīng)用服務(wù)時(shí),所述計(jì)算機(jī)判斷是否接收到啟動(dòng)應(yīng)用服務(wù)的通知,是則執(zhí)行所述步驟S1-步驟S6之后啟動(dòng)應(yīng)用服務(wù);否則返回執(zhí)行所述判斷預(yù)設(shè)切換模式及本機(jī)狀態(tài)。
17.如權(quán)利要求15所述的方法,其特征是:當(dāng)所述預(yù)設(shè)切換模式及本機(jī)狀態(tài)為主機(jī)備機(jī)模式/備機(jī),且檢測(cè)到監(jiān)聽目標(biāo)已啟動(dòng)應(yīng)用服務(wù)時(shí),所述計(jì)算機(jī)執(zhí)行自動(dòng)刪除虛擬IP的操作后停止應(yīng)用服務(wù),然后返回執(zhí)行所述判斷預(yù)設(shè)切換模式及本機(jī)狀態(tài)。
18.如權(quán)利要求17所述的方法,其特征是:所述自動(dòng)刪除虛擬IP的操作具體包括: 步驟S1:執(zhí)行停止虛擬IP命令刪除所述網(wǎng)卡ID對(duì)應(yīng)的網(wǎng)卡的配置信息中的虛擬IP和虛擬IP子網(wǎng)掩碼; 步驟s2:進(jìn)入配置目錄下的配置文件; 步驟s3:執(zhí)行刪除命令刪除所述配置文件。
19.如權(quán)利要求15或16所述的方法,其特征是所述啟動(dòng)應(yīng)用服務(wù)之后包括: 步驟1:檢測(cè)網(wǎng)關(guān)和應(yīng)用服務(wù)的運(yùn)行狀況,若應(yīng)用服務(wù)正常網(wǎng)關(guān)暢通,則返回執(zhí)行所述判斷預(yù)設(shè)切換模式及本機(jī)狀態(tài);若應(yīng)用服務(wù)正常網(wǎng)關(guān)不暢通,則執(zhí)行自動(dòng)刪除虛擬IP的操作后停止應(yīng)用服務(wù),然后執(zhí)行步驟2 ;若應(yīng)用服務(wù)異常網(wǎng)關(guān)不暢通則直接執(zhí)行步驟2 ;若應(yīng)用服務(wù)異常網(wǎng)關(guān)暢通則重新啟動(dòng)應(yīng)用服務(wù),若啟動(dòng)成功則返回繼續(xù)執(zhí)行步驟1,若啟動(dòng)失敗則執(zhí)行步驟2 ; 步驟2:根據(jù)當(dāng)前的監(jiān)聽日志判斷監(jiān)聽目標(biāo)是否正常工作,是則向監(jiān)聽目標(biāo)發(fā)送啟動(dòng)應(yīng)用服務(wù)的通知后返回執(zhí)行所述判斷預(yù)設(shè)切換模式及本機(jī)狀態(tài),否則報(bào)警提示出錯(cuò),結(jié)束。
【文檔編號(hào)】H04L29/12GK104378449SQ201410749176
【公開日】2015年2月25日 申請(qǐng)日期:2014年12月9日 優(yōu)先權(quán)日:2014年12月9日
【發(fā)明者】陸舟, 于華章 申請(qǐng)人:飛天誠信科技股份有限公司