999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Linux的HGU設備接入公網用戶數量限制的內核實現新方法

2019-04-01 15:06:00彭求明
科技創新導報 2019年28期

彭求明

摘? ?要:HGU用戶側接口(LAN、WLAN)可以連接很多用戶終端,并在同一時間接入公網,出于安全管理和上網質量的考慮,在國內三大運營商電信、移動、聯通技術規范中,均有對接入公網用戶數量限制功能的需求,本文分析了現有的實現方法,研究了Linux內核Netfilter網絡層的實現機制,通過在Netfilter的NF_IP_FORWARD Hook點注冊鉤子處理函數,在內核態實現了一種接入公網用戶數量限制的新方法。

關鍵詞:HGU/家庭網關? Netfilter? Hook點? 接入公網用戶數量限制? Linux內核

中圖分類號:TP31? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?文獻標識碼:A? ? ? ? ? ? ? ? ? ? ? ? 文章編號:1674-098X(2019)10(a)-0147-02

1? HGU應用場景

HGU(Home Gateway Unit家庭網關單元)是連接家庭網絡和Internet的網關單元,可通過各種網絡側接口(PON接入、xDSL接入、以太網接入等)與接入網/接入點相連最終連到Internet,并通過用戶側接口(LAN、WLAN)與各種用戶終端相連,用戶終端通常有個人計算機PC、筆記本、手機、平板電腦、機頂盒等,基本都是通過路由模式接入Internet,機頂盒會用到橋接模式,固定配置一個LAN口為橋接模式,其他LAN口和WLAN連接的各種用戶終端都是通過路由模式訪問Internet上網。出于安全管理和上網質量的考慮,在國內三大運營商電信、移動、聯通規范中,均有對用戶上網數量限制的功能:路由模式下,HGU/家庭網關應支持對同一時間接入公網用戶數量進行限制,配置接入公網最大用戶數為N時,第N+1個用戶開始無法正常上網。

2? 接入公網用戶數量限制的現有實現方法

接入公網用戶數量限制,目前的實現方法是:在HGU上開啟DHCP Server功能,用戶側終端通過DHCP自動獲取IP地址,配置DHCP Server對分配IP地址數量限制,來實現用戶上網數量限制功能,但如果對用戶終端配置了靜態IP地址,就無法限制。

本文研究了Linux內核Netfilter網絡層的實現機制,通過在Netfilter的NF_IP_FORWARD Hook點注冊鉤子處理函數,在內核態實現了一種接入公網用戶數量限制的新方法,用戶側終端不管是通過DHCP自動獲取IP地址,還是配置靜態IP地址,都能進行接入公網用戶數量的限制。

3? 在內核態實現接入公網用戶數量限制

3.1 用戶數量限制在Netfilter中Hook點選擇

Netfilter是Linux 2.4.x引入的一個子系統,它作為一個通用的、抽象的框架,提供一整套的hook函數的管理機制,使得諸如數據包過濾、網絡地址轉換(NAT)和基于協議類型的連接跟蹤成為了可能。Netfilter架構就是在整個網絡流程的若干位置放置了一些檢測點(Hook),而在每個檢測點上登記了一些處理函數進行處理。網絡層(IP)五個Hook點的位置如圖1所示。

NP_IP_PRE_ROUTING:剛剛進入網絡層的數據包通過此點(剛剛進行完版本號,校驗和等檢測),目的地址轉換在此點進行;

NF_IP_LOCAL_IN:經路由查找后,送往本機的通過此檢查點,INPUT包過濾在此點進行;NF_IP_FORWARD:要轉發的包通過此檢測點,FORWARD包過濾在此點進行;

NF_IP_LOCAL_OUT:本機進程發出的包通過此檢測點,OUTPUT包過濾在此點進行;

NF_IP_POST_ROUTING:所有馬上便要通過網絡設備出去的包通過此檢測點,內置的源地址轉換功能(包括地址偽裝)在此點進行。

HGU下掛的各種用戶終端上網時,HGU收到的每個數據包,首先都是進入第一個Hook點NP_IP_PRE_ROUTING進行處理;然后經過路由判決,決定該數據包是需要轉發還是發給本機,用戶終端上網的數據包的目的地不是本機,需要轉發,進入Hook點NF_IP_FORWARD處理,經過轉發的數據包經過最后一個Hook點NF_IP_POST_ROUTING處理以后,再傳輸到網絡上,之后進入Internet。因此用戶終端上網的數據包肯定會進入Hook點NF_IP_FORWARD處理,所以選擇在此Hook點注冊用戶數量限制鉤子處理函數。

3.2 接入公網用戶數量限制的內核實現

接入公網用戶數量限制內核實現是以user_num_limit.ko形式提供,分為兩個子模塊:初始化模塊、用戶數量限制實現模塊。

(1)初始化模塊:用戶數量限制內核組件user_num_limit.ko初始化,是向Netfilter在網絡層的NF_IP_FORWARD點注冊用戶數量限制的鉤子處理函數,分兩步,首先定義一個struct nf_hook_ops結構體變量user_num_limit,并且對每個成員進行賦值:

首先判斷輸入參數,如果skb或skb->mac_header或輸入設備指針或輸出設備指針任一為NULL,就接受此報文,不做用戶數限制,繼續向下處理;判斷輸入網絡設備和輸出網絡設備名的首字母,輸入設備名的首字母必須為'b',表示輸入設備名是brxxx,輸出設備名的首字母可以為'p'或'w',表示輸出設備名是pon.xxx或wan.xxxx,這些都要進行用戶數限制處理,其他情況都接受允許繼續向下處理,不做用戶數限制。

然后是用戶數限制處理,整個處理過程要加軟中斷自旋鎖保護,因為操作了全局變量用戶鏈表、最大用戶數、當前用戶數、用戶超時時間。遍歷用戶鏈表中每一個用戶節點,分三種情況:用戶鏈表中的用戶mac地址與此報文中mac地址一樣、用戶鏈表中的mac地址與此報文中的mac地址不一樣、用戶鏈表遍歷完后還找不到此報文的mac地址。如果用戶鏈表中的用戶mac地址與此報文中mac地址一樣,就更新此用戶的接入時間為當前jiffies,break跳出遍歷,接受此報文,該用戶就能上網;如果用戶鏈表中的mac地址與此報文中的mac地址不一樣,就判斷超時時間是否已到,如果已經超時了,就從用戶鏈表中把此用戶刪掉,并把當前用戶數減1,如果還沒超時,就不做處理,都是繼續遍歷;如果用戶鏈表遍歷完后還找不到此報文的mac地址,先判斷當前用戶數是否小于最大用戶數,如果是,就把此新用戶節點添加到用戶鏈表中,并把當前用戶數加1,用戶節點信息包括mac地址和接入時間,并接受此報文,該用戶就能上網,此情況也包括了最開始用戶鏈表為空;如果當前用戶數大于或等于最大用戶數就丟棄此報文,該用戶就不能上網。

4? 結語

本文提出的接入公網用戶數量限制實現的新方法,與現有方法相比,用戶側終端不管是通過DHCP自動獲取IP地址,還是配置靜態IP地址,都能進行用戶上網數量的限制,而且本方法都是在Linux內核態運行,所以執行效率高。

參考文獻

[1] 楊曉勇,于曉翠.IP家庭網關作為智能家居服務的通用多用途啟動器[J]. 機電工程技術,2019(4):33-36.

[2] 陳偉豪,代康.基于家庭網關構建物聯網家庭應用系統的研究[J].產業與科技論壇,2019(5):73-74.

[3] 余飛,楊波.Linux下基于Netfilter/Iptables防火墻的研究與應用[J]. 齊齊哈爾大學學報:自然科學版,2015(3):53-58.

[4] 王繼魁. 基于Linux的netfilter/iptables防火墻的實現[J].通化師范學院學報,2010(2):55-56.

主站蜘蛛池模板: 一本大道香蕉久中文在线播放| 日本成人福利视频| 亚洲人成网站观看在线观看| 婷婷色中文网| 91成人在线免费视频| 亚洲bt欧美bt精品| 国产精品福利一区二区久久| 伊人查蕉在线观看国产精品| 亚洲一区二区三区在线视频| 第一区免费在线观看| 波多野结衣无码视频在线观看| 欧美三级自拍| 久久综合五月婷婷| 欧美日韩亚洲综合在线观看| 狠狠综合久久| AV老司机AV天堂| 欧美日韩国产成人高清视频| 99久久亚洲综合精品TS| 亚洲欧州色色免费AV| 久久综合九色综合97网| 日韩A∨精品日韩精品无码| 欧美α片免费观看| 国产网站免费| 久久免费观看视频| 色婷婷成人| 色天天综合| 国产乱人伦AV在线A| 一级福利视频| 人妻中文久热无码丝袜| 国产剧情一区二区| 四虎在线观看视频高清无码| 无码高清专区| 99视频全部免费| 亚洲av无码牛牛影视在线二区| 亚洲综合极品香蕉久久网| 久久99精品久久久久纯品| 99在线观看免费视频| 国产91视频免费观看| 国产精品刺激对白在线 | 日韩高清欧美| 在线免费a视频| 国语少妇高潮| 国产91久久久久久| 日韩A级毛片一区二区三区| 天天摸天天操免费播放小视频| 国产亚洲视频免费播放| 欧美日韩一区二区三区四区在线观看| 欧美第一页在线| 国产高潮视频在线观看| 久热精品免费| 国产XXXX做受性欧美88| 久久久久青草大香线综合精品 | 日本在线亚洲| 嫩草国产在线| 日本少妇又色又爽又高潮| 美女潮喷出白浆在线观看视频| 99热这里只有免费国产精品| 欧美亚洲日韩中文| 无码视频国产精品一区二区| 日韩无码精品人妻| 秘书高跟黑色丝袜国产91在线| 亚洲天堂视频在线免费观看| 国产成人亚洲无吗淙合青草| 国产黄在线免费观看| 狠狠色成人综合首页| a网站在线观看| 国产凹凸视频在线观看| 一级毛片无毒不卡直接观看| 不卡视频国产| 国产一在线| 在线观看精品国产入口| 国产欧美专区在线观看| 久久久久国色AV免费观看性色| 亚洲大学生视频在线播放| 搞黄网站免费观看| 亚洲Av综合日韩精品久久久| 国产美女久久久久不卡| 孕妇高潮太爽了在线观看免费| 国产噜噜噜| 蜜臀AV在线播放| 日韩人妻精品一区| 中国黄色一级视频|