實現(xiàn)智能設(shè)備的操作系統(tǒng)中程序訪問ip地址限制的方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及網(wǎng)絡(luò)技術(shù)領(lǐng)域,尤其涉及智能設(shè)備的操作系統(tǒng)技術(shù)領(lǐng)域,具體是指一種實現(xiàn)智能設(shè)備的操作系統(tǒng)中程序訪問IP地址限制的方法。
【背景技術(shù)】
[0002]智能手機,智能路由,網(wǎng)關(guān)允許第三方APP或插件開發(fā)并發(fā)布自己的應(yīng)用,用戶隱私數(shù)據(jù)在用戶不知情的情況下被開發(fā)者收集,而目前智能機操作系統(tǒng)10S或android都提供沙箱機制,權(quán)限管理能讓用戶知道APP訪問用戶的個人信息如聯(lián)系人,照片,藍(lán)牙設(shè)備,位置服務(wù),并把訪問絕定權(quán)交給用戶。然而現(xiàn)有技術(shù)中Android APP權(quán)限管理只能限制用戶是否能上網(wǎng),無法進(jìn)行更多權(quán)限的管理。
【發(fā)明內(nèi)容】
[0003]本發(fā)明的目的是克服了上述現(xiàn)有技術(shù)的缺點,提供了一種能夠?qū)崿F(xiàn)限制手機APP或路由器插件程序訪問被用戶拒絕的域名或IP地址管理、讓APP或插件程序在類似虛擬機的容器中運行、通過對容器進(jìn)行擴展、使APP或插件能完成直接運行在宿主機系統(tǒng)上的所有功能的實現(xiàn)智能設(shè)備的操作系統(tǒng)中程序訪問IP地址限制的方法。
[0004]為了實現(xiàn)上述目的,本發(fā)明的實現(xiàn)智能設(shè)備的操作系統(tǒng)中程序訪問IP地址限制的方法具有如下構(gòu)成:
[0005]該實現(xiàn)智能設(shè)備的操作系統(tǒng)中程序訪問IP地址限制的方法,其主要特點是,所述的方法包括以下步驟:
[0006](1)為需要在智能設(shè)備的操作系統(tǒng)中啟動的程序創(chuàng)建一虛擬機容器;
[0007](2)設(shè)置所述的虛擬機容器中允許訪問的IP地址;
[0008](3)啟動所述的程序并使其運行在所述的虛擬機容器中;
[0009](4)由智能設(shè)備的操作系統(tǒng)控制所述的程序訪問的IP地址。
[0010]較佳地,所述的步驟(1)包括以下步驟:
[0011](1-1)為需要在智能設(shè)備的操作系統(tǒng)中啟動的程序創(chuàng)建一對一的虛擬機容器;
[0012](1-2)為所述的虛擬機容器創(chuàng)建虛擬網(wǎng)絡(luò)接口 ;
[0013](1-3)為所述的虛擬網(wǎng)絡(luò)接口分配IP地址。
[0014]更佳地,所述的為所述的虛擬機容器創(chuàng)建虛擬網(wǎng)絡(luò)接口,具體為:
[0015]為所述的虛擬機容器選擇VETH、H0ST或MACVLAN聯(lián)網(wǎng)方式并創(chuàng)建相應(yīng)的虛擬網(wǎng)絡(luò)接口。
[0016]較佳地,所述的程序為APP程序或插件程序。
[0017]較佳地,所述的由智能設(shè)備的操作系統(tǒng)中控制所述的程序訪問的IP地址,包括程序訪問外部IP地址的控制和兩個程序之間互相訪問的控制。
[0018]更佳地,所述的程序訪問外部IP地址的控制,包括以下步驟:
[0019](4-A-1)將外部IP地址的端口通過網(wǎng)絡(luò)地址轉(zhuǎn)換映射到所述的程序?qū)?yīng)的虛擬機容器;
[0020](4-A-2)所述的程序通過映射后的IP地址的端口進(jìn)行網(wǎng)絡(luò)連接。
[0021 ]更佳地,所述的兩個程序之間互相訪問的控制,包括以下步驟:
[0022](4-B-1)為每個程序創(chuàng)建用以監(jiān)聽已知IP地址的守護(hù)進(jìn)程;
[0023](4-B-2)當(dāng)所述的守護(hù)進(jìn)程監(jiān)聽到有程序連接時轉(zhuǎn)發(fā)給服務(wù)提供的插件所在的虛擬機容器對應(yīng)的IP地址和端口。
[0024]采用了該發(fā)明中的實現(xiàn)智能設(shè)備的操作系統(tǒng)中程序訪問IP地址限制的方法,具有如下有益效果:
[0025](1)此專利提供給用戶一種新的保護(hù)機制,如果APP收集到用戶數(shù)據(jù)想上傳到自己的服務(wù)器,那么此方法能對APP網(wǎng)絡(luò)訪問進(jìn)行限制,使其無法和不被用戶認(rèn)可的網(wǎng)絡(luò)域名或IP地址進(jìn)行通信;
[0026](2)此方法能提供更為靈活的限制機制,只提供APP對某些網(wǎng)絡(luò)地址的訪問,即使APP為病毒程序,也無法對系統(tǒng)破壞,具有更廣泛的應(yīng)用范圍。
【附圖說明】
[0027]圖1為采用本發(fā)明的實現(xiàn)智能設(shè)備的操作系統(tǒng)中程序訪問IP地址限制的方法形成的架構(gòu)圖。
[0028]圖2為采用本發(fā)明的實現(xiàn)智能設(shè)備的操作系統(tǒng)中程序訪問IP地址限制的方法形成的網(wǎng)絡(luò)拓?fù)鋱D。
[0029]圖3為本發(fā)明的兩個程序之間交互的示意圖。
【具體實施方式】
[0030]為了能夠更清楚地描述本發(fā)明的技術(shù)內(nèi)容,下面結(jié)合具體實施例來進(jìn)行進(jìn)一步的描述。
[0031]本發(fā)明涉及一種限制手機APP或路由器插件程序訪問被用戶拒絕的域名或IP地址管理機制,提供一種解決方案。讓APP或插件程序在類似虛擬機的容器中運行。通過對容器進(jìn)行擴展,使APP或插件能完成直接運行在宿主機系統(tǒng)上的所有功能。其優(yōu)點在于防止APP或插件程序后臺運行收集用戶的隱私數(shù)據(jù),并上傳到用戶不知道的服務(wù)器。只有域名或IP地址被用戶認(rèn)可,程序才有權(quán)訪問。提高路由器,網(wǎng)關(guān)產(chǎn)品的安全性。
[0032]為了實現(xiàn)該目的,該實現(xiàn)智能設(shè)備的操作系統(tǒng)中程序訪問IP地址限制的方法包括以下步驟:
[0033](1)為需要在智能設(shè)備的操作系統(tǒng)中啟動的程序創(chuàng)建一虛擬機容器;
[0034](2)設(shè)置所述的虛擬機容器中允許訪問的IP地址;
[0035](3)啟動所述的程序并使其運行在所述的虛擬機容器中;
[0036](4)由智能設(shè)備的操作系統(tǒng)控制所述的程序訪問的IP地址。
[0037]在一種較佳的實施方式中,所述的步驟(1)包括以下步驟:
[0038](1-1)為需要在智能設(shè)備的操作系統(tǒng)中啟動的程序創(chuàng)建一對一的虛擬機容器;
[0039](1-2)為所述的虛擬機容器創(chuàng)建虛擬網(wǎng)絡(luò)接口 ;
[0040](1-3)為所述的虛擬網(wǎng)絡(luò)接口分配IP地址。
[0041]在一種更佳的實施方式中,所述的為所述的虛擬機容器創(chuàng)建虛擬網(wǎng)絡(luò)接口,具體為:
[0042]為所述的虛擬機容器選擇VETH、H0ST或MACVLAN聯(lián)網(wǎng)方式并創(chuàng)建相應(yīng)的虛擬網(wǎng)絡(luò)接口。
[0043]在一種較佳的實施方式中,所述的程序為APP程序或插件程序。
[0044]在一種較佳的實施方式中,所述的由智能設(shè)備的操作系統(tǒng)控制所述的程序訪問的IP地址,包括程序訪問外部IP地址的控制和兩個程序之間互相訪問的控制。
[0045]在一種更佳的實施方式中,所述的程序訪問外部IP地址的控制,包括以下步驟:
[0046](4-A-1)將外部IP地址的端口通過網(wǎng)絡(luò)地址轉(zhuǎn)換映射到所述的程序?qū)?yīng)的虛擬機容器;
[0047](4-A-2)所述的程序通過映射后的IP地址的端口進(jìn)行網(wǎng)絡(luò)連接。
[0048]在一種更佳的實施方式中,所述的兩個程序之間互相訪問的控制,包括以下步驟:
[0049](4-B-1)為每個程序創(chuàng)建用以監(jiān)聽已知IP地址的守護(hù)進(jìn)程;
[0050](4-B-2)當(dāng)所述的守護(hù)進(jìn)程監(jiān)聽到有程序連接時轉(zhuǎn)發(fā)給服務(wù)提供的插件所在的虛擬機容器對應(yīng)的IP地址和端口。
[0051]具體到本發(fā)明的實際應(yīng)用中,具體過程如下:
[0052 ] 在啟動APP時,首先創(chuàng)建一個name space,在name space中再啟動app,
[0053]通過調(diào)用clone函數(shù)傳入?yún)?shù)CL0NE_NEWNS即能創(chuàng)建一個namespace。
[0054]如圖1所示,SMD為管理程序,后綴為cpk的插件程序都運行在namespace里面,namespace為