国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種路由器推送本地信息的方法

      文檔序號(hào):7821074閱讀:2081來(lái)源:國(guó)知局
      一種路由器推送本地信息的方法
      【專利摘要】本發(fā)明公開(kāi)一種路由器推送本地信息的方法,路由器通過(guò)接收到特定的數(shù)據(jù)包后,對(duì)路由信息進(jìn)行更新,然后重構(gòu)數(shù)據(jù)包,交換原數(shù)據(jù)包的源、目的IP地址,在數(shù)據(jù)段填充廣告信息等本地信息,推送廣告到終端。本發(fā)明的技術(shù)方案中,在相同的條件下可以使路由產(chǎn)品更加智能化,基本不需要用戶配置軟件,操作簡(jiǎn)單簡(jiǎn)捷。同時(shí)可以省掉服務(wù)器成本,只需要一個(gè)普通的U盤或SD卡。關(guān)鍵是每位商業(yè)主都可以簡(jiǎn)單布置自己的本地廣告推送系統(tǒng)。
      【專利說(shuō)明】一種路由器推送本地信息的方法

      【技術(shù)領(lǐng)域】
      [0001]本發(fā)明涉及一種路由器推送本地信息的方法領(lǐng)域,特別涉及一種利用路由器向終端用戶推送本地商業(yè)廣告的方法。

      【背景技術(shù)】
      [0002]架設(shè)一種強(qiáng)制網(wǎng)絡(luò)門戶/熱點(diǎn)管理系統(tǒng)有多種方法,但技術(shù)原理都是類似的,一般需要一個(gè)防火墻、網(wǎng)關(guān)系統(tǒng)、以及一個(gè)用于認(rèn)證管理和控制的后臺(tái)系統(tǒng)。常見(jiàn)的技術(shù)解決方案有Nocat、Wifidog、Chillispot等。這類系統(tǒng)構(gòu)筑都分別有各種系統(tǒng)需求和構(gòu)筑方法。用戶接入wifi網(wǎng)絡(luò)首先會(huì)跳轉(zhuǎn)到認(rèn)證服務(wù)器,接著會(huì)強(qiáng)制用戶訪問(wèn)服務(wù)器上指定的廣告網(wǎng)頁(yè)。由于構(gòu)成組件和子系統(tǒng)比較多,所以相對(duì)都比較繁瑣。同時(shí)需要到認(rèn)證服務(wù)器(或廣告服務(wù)器),增加硬件開(kāi)支,軟件配置復(fù)雜,操作繁瑣。這種方案不能方便滿足商業(yè)wifi的廣告主推送本地廣告。
      [0003]具體的現(xiàn)有的實(shí)現(xiàn)方法中存在的問(wèn)題:
      1、這類系統(tǒng)構(gòu)筑都分別有各種系統(tǒng)需求和構(gòu)筑方法,如,Wifidog插件、認(rèn)證系統(tǒng)(或廣告系統(tǒng))。這非常不利于獨(dú)立單個(gè)商業(yè)店主布局自已的廣告推送系統(tǒng)。
      [0004]2、需要到認(rèn)證服務(wù)器(或廣告服務(wù)器),增加硬件開(kāi)支,軟件配置復(fù)雜,操作繁瑣。
      [0005]3、不方便廣告主更換廣告,需要登陸后臺(tái)操作,對(duì)于一般人員不易于操作。
      [0006]目前的方案系統(tǒng)構(gòu)筑都分別有各種系統(tǒng)需求和構(gòu)筑方法。用戶接入wifi網(wǎng)絡(luò)首先會(huì)跳轉(zhuǎn)到認(rèn)證服務(wù)器,接著會(huì)強(qiáng)制用戶訪問(wèn)服務(wù)器上指定的廣告網(wǎng)頁(yè)。由于構(gòu)成組件和子系統(tǒng)比較多,所以相對(duì)都比較繁瑣。同時(shí)需要到認(rèn)證服務(wù)器(或廣告服務(wù)器),增加硬件開(kāi)支,軟件配置復(fù)雜,操作繁瑣。原有方案不能方便滿足商業(yè)wifi的廣告主推送本地廣告。


      【發(fā)明內(nèi)容】

      [0007]本發(fā)明的目的是提出一種路由器推送本地信息的方法,利用本發(fā)明的方法,在路由器端就可以將廣告推送到客戶端。
      [0008]本發(fā)明的技術(shù)方案是一種路由器推送本地信息的方法,包括以下步驟:
      步驟S1、檢測(cè)有沒(méi)有客戶端終端發(fā)送來(lái)的TCP request get請(qǐng)求數(shù)據(jù)包,如果有則轉(zhuǎn)步驟S2,如果沒(méi)有檢測(cè)到,繼續(xù)檢測(cè);
      步驟S2、更新路由器的路由信息,將接收到的客戶端終端發(fā)送來(lái)的TCP request get請(qǐng)求數(shù)據(jù)包的源IP當(dāng)做路由目的IP、同時(shí)考慮數(shù)據(jù)包的目的IP,得到去往該源IP的路由;步驟S3、重構(gòu)數(shù)據(jù)包,在數(shù)據(jù)包中數(shù)據(jù)段加入本地信息;
      步驟S4、把新構(gòu)造成數(shù)據(jù)包通過(guò)ip_output函數(shù)發(fā)送出去。
      [0009]步驟S5、把舊的數(shù)據(jù)包修改成RST數(shù)據(jù)包。
      [0010]本發(fā)明中,可以在重構(gòu)數(shù)據(jù)包時(shí)加入路由器本地信息,這樣,可以將廣告信息打包,通過(guò)交換了源、目的地址的重構(gòu)數(shù)據(jù)包發(fā)給終端,完成廣告推送。
      [0011 ] 本發(fā)明的優(yōu)選方式包括: 在所述的步驟3中:重構(gòu)數(shù)據(jù)包步驟包括:更新路由信息,交換源ip與目的ip,交換原端口與目的端口,計(jì)算數(shù)據(jù)包的數(shù)據(jù)長(zhǎng)度,從新設(shè)置數(shù)據(jù)包的各個(gè)標(biāo)志位,填充新本地?cái)?shù)據(jù),調(diào)整tcp效驗(yàn)和,調(diào)整ip的效驗(yàn)和。
      [0012]本步驟中,更新路由信息,是為了讓新構(gòu)造的數(shù)據(jù)可以返回到客戶端終端。一個(gè)是路由表存儲(chǔ)的地址,一個(gè)是數(shù)據(jù)包的地址。數(shù)據(jù)包的走向是根據(jù)路由表規(guī)則決定的。
      [0013]本發(fā)明的技術(shù)方案中,在相同的條件下可以使路由產(chǎn)品更加智能化,基本不需要用戶配置軟件,操作簡(jiǎn)單簡(jiǎn)捷。同時(shí)可以省掉服務(wù)器成本,只需要一個(gè)普通的U盤(或SD卡)。關(guān)健是每位商業(yè)主都可以簡(jiǎn)單布置自己的本地廣告推送系統(tǒng)(一個(gè)帶u盤接口的路由器,一個(gè)U盤即可)。
      [0014]下面結(jié)合具體實(shí)施例對(duì)本發(fā)明作較為詳細(xì)的描述。

      【專利附圖】

      【附圖說(shuō)明】
      [0015]圖1為本發(fā)明實(shí)施例1流程圖。

      【具體實(shí)施方式】
      [0016]實(shí)施例1,如圖1所示,本實(shí)施例的特點(diǎn)是只需要把廣告網(wǎng)頁(yè)放到U盤(或SD卡)中,把U盤接入到路由器,就可以實(shí)現(xiàn)廣告推送到接入wifi網(wǎng)絡(luò)的客戶。這種方案非常適用于提拱免費(fèi)wifi的商業(yè)場(chǎng)所使用。
      [0017]具體的本實(shí)施例中:
      在內(nèi)核netfilter架構(gòu)中實(shí)現(xiàn)加載強(qiáng)制廣告模塊與卸載強(qiáng)制廣告模塊。
      [0018]關(guān)鍵結(jié)構(gòu)體
      /*終端記錄結(jié)構(gòu)體*/
      static struct list_head pm_dev_list;
      typedef struct {
      struct list_head list; /* 設(shè)備列表 */
      int devtype; /* 設(shè)備類型 */
      char mac [ETH_ALEN] ; /* 設(shè)備 MAC 地址 */
      #ifdef TIMEOUT_ENABLE
      uint time; /*定時(shí)器,記錄訪問(wèn)時(shí)間*/
      #endif
      int iFirstChk; /* 標(biāo)識(shí)位 */ int adson; /*終端廣告是否打開(kāi)*/
      }ST_PM_DEVINF0。
      [0019]數(shù)據(jù)包在netfilter架構(gòu)中傳遞的步聚之一。主要是說(shuō)http訪問(wèn)時(shí)修改為:”會(huì)在協(xié)議棧中執(zhí)行廣告模塊代碼”,數(shù)據(jù)包進(jìn)入廣告模塊進(jìn)行相應(yīng)處理。如:
      鉤子掛載在 hook= NF_IP_PRE_ROUTING 的點(diǎn),使用 NF_IP_PRE_ROUTING hook 點(diǎn)時(shí),訪問(wèn)http會(huì)觸發(fā)強(qiáng)制廣告模塊的溝子函數(shù)ip_pm_in。
      [0020]首先,判斷強(qiáng)制廣告功能是否全使能,打開(kāi)則檢查數(shù)據(jù)包是否有效,檢查是否為Tcp數(shù)據(jù)包,獲取Tcp頭部,只強(qiáng)制80端口 HTTP訪問(wèn),數(shù)據(jù)包的目的地址是否為路由器LAN側(cè)客戶端的地址,并且http請(qǐng)求的數(shù)據(jù)報(bào)文方法為Get。
      [0021]接著強(qiáng)制包路由處理,將當(dāng)前數(shù)據(jù)包的源IP當(dāng)做路由的目的IP,同時(shí)考慮數(shù)據(jù)包的目的IP,得到去往該源IP的路由。檢查數(shù)據(jù)包是否為rst包,檢查數(shù)據(jù)包是否為分片包,如果都不是,則通過(guò)調(diào)用skb_copy_expand函數(shù),在send_redirect函數(shù)的原skb數(shù)據(jù)包基礎(chǔ)上構(gòu)建一個(gè)新數(shù)據(jù)包nskb,同時(shí)釋放nskb當(dāng)前路由Cache,更新路由信息,交換源ip與目的ip,交換原port與目的port,計(jì)算數(shù)據(jù)包的數(shù)據(jù)長(zhǎng)度,從新設(shè)置數(shù)據(jù)包的各個(gè)標(biāo)志位,填充新數(shù)據(jù)(指廣告網(wǎng)頁(yè)的新數(shù)據(jù)),調(diào)整tcp效驗(yàn)和,調(diào)整ip的效驗(yàn)和等,把新構(gòu)造成數(shù)據(jù)包通過(guò)ip_output函數(shù)發(fā)送出去。
      [0022]通過(guò)send_reset將原來(lái)的TCP數(shù)據(jù)包修改為RST包。
      [0023]RST包是數(shù)據(jù)包的一種類型,主要是用于斷開(kāi)當(dāng)前TCP連接。如果為分片包則不處理。
      [0024]用戶第一次訪問(wèn)廣告網(wǎng)頁(yè)后,把用戶對(duì)應(yīng)的廣告開(kāi)關(guān)置為0,表示在下次超時(shí)時(shí)間內(nèi)訪問(wèn)網(wǎng)絡(luò)是不需要再?gòu)棾鰪V告網(wǎng)頁(yè)的。
      [0025]這個(gè)上面數(shù)據(jù)結(jié)構(gòu)中有一個(gè)time字段,就是為了記錄訪問(wèn)的時(shí)間,當(dāng)前系統(tǒng)時(shí)間與訪問(wèn)的時(shí)間之差來(lái)判斷是否超時(shí)。超時(shí)時(shí)間設(shè)置是一個(gè)全局變量保存。
      [0026]強(qiáng)制廣告模塊實(shí)現(xiàn)定時(shí)器處理函數(shù),設(shè)置超時(shí)時(shí)間為I小時(shí)(超時(shí)時(shí)間可以根據(jù)實(shí)際情況定),如果某客戶端上網(wǎng)超時(shí)則在MAC管理列表中刪除相應(yīng)的MAC記錄。這樣可以控制用戶訪問(wèn)wifi網(wǎng)絡(luò)時(shí),超時(shí)都需要再訪問(wèn)一次廣告網(wǎng)頁(yè)。
      [0027]在鉤子hook=NF_IP_PRE_ROUTING掛載鉤子處理函數(shù),在重定向到本地的廣告網(wǎng)頁(yè)前。先把客戶端的mac插入pm_dev_list管理,默認(rèn)mac的廣告開(kāi)關(guān)是開(kāi)的,用戶第一次訪問(wèn)網(wǎng)絡(luò)時(shí),需要訪問(wèn)一次廣告網(wǎng)頁(yè)。
      [0028]強(qiáng)制廣告功能開(kāi)關(guān),當(dāng)內(nèi)核偵探到有U盤接入時(shí),把U盤mount到文件系統(tǒng)指定位置,如:/mnt/usb/,默認(rèn)廣告網(wǎng)頁(yè)名稱為ads.html,這樣,廣告網(wǎng)絡(luò)路徑為/mnt/usb/ads.html。當(dāng)內(nèi)核偵探到有U盤接入時(shí),內(nèi)核usb模塊接用廣告模塊的封裝函數(shù),判斷是否存在/mnt/usb/ads.html廣告網(wǎng)頁(yè),如果存在廣告內(nèi)模模塊會(huì)自動(dòng)打開(kāi)強(qiáng)制跳轉(zhuǎn)功能,把所有的mac管理列表中的用戶的廣告開(kāi)關(guān)全部設(shè)置為1,表明用戶訪網(wǎng)網(wǎng)絡(luò)時(shí)必須把http重定向到廣告網(wǎng)頁(yè),從而現(xiàn)實(shí)在終點(diǎn)用戶上顯示推送廣告。如不存在廣告網(wǎng)頁(yè),則關(guān)閉強(qiáng)制跳轉(zhuǎn)功能,把所有的mac管理列表中的用戶的廣告開(kāi)關(guān)全部設(shè)置為0,這樣用戶可以對(duì)網(wǎng)絡(luò)正常訪問(wèn),無(wú)需訪問(wèn)廣告網(wǎng)頁(yè)。
      【權(quán)利要求】
      1.一種路由器推送本地信息的方法,包括以下步驟: 步驟S1、路由器檢測(cè)有沒(méi)有連接路由器的客戶端終端發(fā)送來(lái)的TCP request get請(qǐng)求數(shù)據(jù)包,如果有則轉(zhuǎn)步驟S2,如果沒(méi)有檢測(cè)到,繼續(xù)檢測(cè); 步驟S2、更新路由器的路由信息,將接收到的客戶端終端發(fā)送來(lái)的TCP request get請(qǐng)求數(shù)據(jù)包的源IP當(dāng)做路由目的IP、同時(shí)考慮數(shù)據(jù)包的目的IP,得到去往該源IP的路由; 步驟S3、重構(gòu)數(shù)據(jù)包,在數(shù)據(jù)包中數(shù)據(jù)段加入本地信息; 步驟S4、把新構(gòu)造成數(shù)據(jù)包通過(guò)ip_output函數(shù)發(fā)送出去; 步驟S5、把舊的數(shù)據(jù)包修改成RST數(shù)據(jù)包。
      2.根據(jù)權(quán)利要求1所述的路由器推送本地信息的方法,其特征在于:所述的步驟3中:重構(gòu)數(shù)據(jù)包步驟包括:更新路由信息,交換源ip與目的ip,交換原端口與目的端口,計(jì)算數(shù)據(jù)包的數(shù)據(jù)長(zhǎng)度,從新設(shè)置數(shù)據(jù)包的各個(gè)標(biāo)志位,填充新本地?cái)?shù)據(jù),調(diào)整tcp效驗(yàn)和,調(diào)整ip的效驗(yàn)和。
      3.根據(jù)權(quán)利要求1所述的路由器推送本地信息的方法,其特征在于:在所述的步驟S3中,加入的本地信息為廣告模塊。
      4.根據(jù)權(quán)利要求3所述的路由器推送本地信息的方法,其特征在于:事先在路由器內(nèi)核netfilter架構(gòu)中實(shí)現(xiàn)加載強(qiáng)制廣告模塊與卸載強(qiáng)制廣告模塊。
      5.根據(jù)權(quán)利要求4所述的路由器推送本地信息的方法,其特征在于:在加載強(qiáng)制廣告模塊時(shí),確認(rèn)客戶端用戶正在使用瀏覽器上網(wǎng),如果客戶端沒(méi)有正在使用瀏覽器上網(wǎng),則不做處理。
      6.根據(jù)權(quán)利要求5所述的路由器推送本地信息的方法,其特征在于:確認(rèn)客戶端用戶正在使用瀏覽器上網(wǎng)包括以下步驟: 判斷強(qiáng)制廣告功能是否全使能,打開(kāi)則檢查數(shù)據(jù)包是否有效,檢查是否為Tcp數(shù)據(jù)包,獲取Tcp頭部,只強(qiáng)制80端口 HTTP訪問(wèn),數(shù)據(jù)包的目的地址是否為路由器LAN側(cè)客戶端的地址,并且http請(qǐng)求的數(shù)據(jù)報(bào)文方法為Get。
      【文檔編號(hào)】H04L29/08GK104486381SQ201410703371
      【公開(kāi)日】2015年4月1日 申請(qǐng)日期:2015年1月23日 優(yōu)先權(quán)日:2015年1月23日
      【發(fā)明者】謝奕勇, 陶橄, 郭志躍 申請(qǐng)人:深圳市共進(jìn)電子股份有限公司
      網(wǎng)友詢問(wèn)留言 已有0條留言
      • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1