国产精品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>

      客戶端身份檢測方法及網(wǎng)關(guān)的制作方法

      文檔序號:7984977閱讀:164來源:國知局
      客戶端身份檢測方法及網(wǎng)關(guān)的制作方法
      【專利摘要】本發(fā)明實施例公開了客戶端身份檢測方法及網(wǎng)關(guān),該方法包括:網(wǎng)關(guān)接收客戶端發(fā)送的包含發(fā)送方IP地址和發(fā)送方MAC地址的ARP消息;如果網(wǎng)關(guān)的ARP表中的每一個ARP表項包含的IP地址和MAC地址均與發(fā)送方IP地址和發(fā)送方MAC地址不同,則向DHCP服務(wù)器發(fā)送包含發(fā)送方IP地址的查詢請求消息;接收DHCP服務(wù)器發(fā)送的查詢結(jié)果消息,該查詢結(jié)果消息中包含DHCP服務(wù)器根據(jù)發(fā)送方IP地址從DHCP服務(wù)器的租約表中查找到的與發(fā)送方IP地址對應的MAC地址;根據(jù)查詢結(jié)果消息確定客戶端的合法性。本發(fā)明無需客戶端在ARP消息過程中重復向DHCP服務(wù)器請求IP地址,由此降低了請求過程的繁瑣性,相應提高了網(wǎng)絡(luò)性能。
      【專利說明】客戶端身份檢測方法及網(wǎng)關(guān)
      【技術(shù)領(lǐng)域】
      [0001]本發(fā)明涉及網(wǎng)絡(luò)通信【技術(shù)領(lǐng)域】,尤其涉及客戶端身份檢測方法及網(wǎng)關(guān)。
      【背景技術(shù)】
      [0002]動態(tài)主機設(shè)置協(xié)議(英文為Dynamic Host Configuration Protocol,縮寫為DHCP)服務(wù)器對互聯(lián)網(wǎng)協(xié)議(英文為Internet Protocol,縮寫為IP)網(wǎng)絡(luò)配置進行集中管理,在一個典型的IP網(wǎng)絡(luò)中,各個客戶端,例如IP電話、個人計算機(英文為PersonalComputer,縮寫為PC)終端等通過交換機連接到網(wǎng)關(guān),網(wǎng)關(guān)作為DHCP的中繼代理,通過互聯(lián)網(wǎng)實現(xiàn)客戶端與DHCP服務(wù)器之間的通信,由DHCP服務(wù)器為客戶端動態(tài)分配IP地址。
      [0003]通常,在DHCP服務(wù)器為客戶端動態(tài)分配IP地址過程中,網(wǎng)關(guān)可以監(jiān)聽客戶端與DHCP服務(wù)器之間交互的消息,從這些消息中獲取客戶端的IP地址、介質(zhì)訪問控制層(英文為Medium Access Control,縮寫為MAC)地址、以太網(wǎng)接口等信息,并將獲得的信息添加到緩存的地址解析協(xié)議(英文為Address Resolution Protocol,縮寫為ARP)表中,ARP表中的每個表項以IP地址為索引記錄一個客戶端的ARP信息。當網(wǎng)關(guān)接收到客戶端的ARP請求后,根據(jù)該ARP表驗證ARP請求,丟棄惡意ARP請求。
      [0004]但是,由于ARP表緩存在網(wǎng)關(guān)中,當網(wǎng)關(guān)重啟時原來緩存的ARP表可能丟失,因此當網(wǎng)關(guān)開啟并再次接收到客戶端發(fā)送的ARP請求時,由于ARP表中已經(jīng)沒有該客戶端的表項,則網(wǎng)關(guān)將該客戶端檢測為非法客戶端,直接丟棄該ARP請求,該客戶端只能重新向DHCP服務(wù)器請求IP地址,以便網(wǎng)關(guān)通過監(jiān)聽重新在ARP表中添加該客戶端的表項,客戶端才能作為合法用戶完成ARP請求。由此可知,由于網(wǎng)關(guān)對ARP表的緩存特性,使得客戶端在ARP請求過程中需要重復向DHCP服務(wù)器請求IP地址,才能實現(xiàn)身份驗證,從而導致請求過程繁瑣,降低了網(wǎng)絡(luò)性能。

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

      [0005]本發(fā)明提供了客戶端身份檢測方法及網(wǎng)關(guān),以解決客戶端在ARP請求過程中需要重復向DHCP服務(wù)器請求IP地址,從而導致請求過程繁瑣的問題。
      [0006]為解決上述問題,本發(fā)明提供的技術(shù)方案如下:
      [0007]第一方面,提供一種客戶端身份檢測方法,所述方法包括:
      [0008]網(wǎng)關(guān)接收客戶端發(fā)送的地址解析協(xié)議ARP消息,所述ARP消息中包含發(fā)送方互聯(lián)網(wǎng)協(xié)議IP地址和發(fā)送方介質(zhì)訪問控制層MAC地址;
      [0009]如果所述網(wǎng)關(guān)的ARP表中的每一個ARP表項包含的IP地址和MAC地址均與所述發(fā)送方IP地址和發(fā)送方MAC地址不同,則向動態(tài)主機設(shè)置協(xié)議DHCP服務(wù)器發(fā)送查詢請求消息,所述查詢請求消息中包含所述發(fā)送方IP地址;
      [0010]接收所述DHCP服務(wù)器發(fā)送的查詢結(jié)果消息,所述查詢結(jié)果消息中包含所述DHCP服務(wù)器根據(jù)所述發(fā)送方IP地址從所述DHCP服務(wù)器的租約表中查找到的與所述發(fā)送方IP地址對應的MAC地址;[0011]根據(jù)所述查詢結(jié)果消息確定所述客戶端的合法性。
      [0012]在第一方面的第一種可能的實現(xiàn)方式中,所述根據(jù)所述查詢結(jié)果消息確定所述客戶端的合法性,包括:
      [0013]如果所述查詢結(jié)果消息中攜帶的MAC地址與所述發(fā)送方MAC地址一致,則確定所述客戶端為合法客戶端,如果所述查詢結(jié)果消息中攜帶的MAC地址與所述發(fā)送方MAC地址不一致,則確定所述客戶端為非法客戶端。
      [0014]結(jié)合第一方面,或第一方面的第一種可能的實現(xiàn)方式,在第一方面的第二種可能的實現(xiàn)方式中,所述方法還包括:
      [0015]所述網(wǎng)關(guān)在所述ARP表中添加ARP表項,所述ARP表項中包括所述查詢結(jié)果消息中攜帶的IP地址和MAC地址。
      [0016]結(jié)合第一方面,或第一方面的第一種可能的實現(xiàn)方式,或第一方面的第二種可能的實現(xiàn)方式,在第一方面的第三種可能的實現(xiàn)方式中,所述方法還包括:當所述客戶端為非法客戶端時,所述網(wǎng)關(guān)丟棄所述ARP消息。
      [0017]結(jié)合第一方面,或第一方面的第一種可能的實現(xiàn)方式,或第一方面的第二種可能的實現(xiàn)方式,或第一方面的第三種可能的實現(xiàn)方式,在第一方面的第四種可能的實現(xiàn)方式中,所述方法還包括:如果所述網(wǎng)關(guān)的ARP表中存在一個ARP表項包含的IP地址和MAC地址與所述發(fā)送方IP地址和發(fā)送方MAC地址相同,則確定所述客戶端為合法客戶端。
      [0018]第二方面,提供一種網(wǎng)關(guān),所述網(wǎng)關(guān)包括:
      [0019]第一接收單元,用于接收客戶端發(fā)送的ARP消息,所述ARP消息中包含發(fā)送方IP地址和發(fā)送方MAC地址;
      [0020]判斷單元,用于判斷所述網(wǎng)關(guān)的ARP表中的每一個ARP表項包含的IP地址和MAC地址是否均與所述第一接收單元接收到的ARP消息中包含的發(fā)送方IP地址和發(fā)送方MAC地址不同;
      [0021]發(fā)送單元,用于如果所述判斷單元的判斷結(jié)果為所述網(wǎng)關(guān)的ARP表中的每一個ARP表項包含的IP地址和MAC地址均與所述第一接收單元接收到的ARP消息中包含的發(fā)送方IP地址和發(fā)送方MAC地址不同,則向DHCP服務(wù)器發(fā)送查詢請求消息,所述查詢請求消息中包含所述發(fā)送方IP地址;
      [0022]第二接收單元,用于接收所述DHCP服務(wù)器發(fā)送的查詢結(jié)果消息,所述查詢結(jié)果消息中包含所述DHCP服務(wù)器根據(jù)所述發(fā)送方IP地址從所述DHCP服務(wù)器的租約表中查找到的與所述發(fā)送方IP地址對應的MAC地址;
      [0023]檢測單元,用于根據(jù)所述第二接收單元接收到的查詢結(jié)果消息確定所述客戶端的合法性。
      [0024]在第二方面的第一種可能的實現(xiàn)方式中,所述檢測單元,具體用于如果所述第二接收單元接收到的查詢結(jié)果消息中攜帶的MAC地址與所述發(fā)送方MAC地址一致,則確定所述客戶端為合法客戶端,如果所述第二接收單元接收到的查詢結(jié)果消息中攜帶的MAC地址與所述發(fā)送方MAC地址不一致,則確定所述客戶端為非法客戶端。
      [0025]結(jié)合第二方面,或第二方面的第一種可能的實現(xiàn)方式,在第二方面的第二種可能的實現(xiàn)方式中,所述網(wǎng)關(guān)還包括:
      [0026]添加單元,用于在所述ARP表中添加ARP表項,所述ARP表項中包括所述第二接收單元接收到的所述查詢結(jié)果消息中攜帶的IP地址和MAC地址。
      [0027]結(jié)合第二方面,或第二方面的第一種可能的實現(xiàn)方式,或第二方面的第二種可能的實現(xiàn)方式,在第二方面的第三種可能的實現(xiàn)方式中,所述網(wǎng)關(guān)還包括:
      [0028]丟棄單元,用于當所述檢測單元確定所述客戶端為非法客戶端時,丟棄所述第一接收單元接收到的ARP消息。
      [0029]結(jié)合第二方面,或第二方面的第一種可能的實現(xiàn)方式,或第二方面的第二種可能的實現(xiàn)方式,或第二方面的第三種可能的實現(xiàn)方式,在第二方面的第四種可能的實現(xiàn)方式中,所述檢測單元,還用于如果所述判斷單元的判斷結(jié)果為所述網(wǎng)關(guān)的ARP表中存在一個ARP表項包含的IP地址和MAC地址與所述第一接收單元接收到的ARP消息中包含的發(fā)送方IP地址和發(fā)送方MAC地址相同,則確定所述客戶端為合法客戶端。
      [0030]本發(fā)明中,網(wǎng)關(guān)接收客戶端發(fā)送的包含發(fā)送方IP地址和發(fā)送方MAC地址的ARP消息,如果網(wǎng)關(guān)的ARP表中的每一個ARP表項包含的IP地址和MAC地址均與發(fā)送方IP地址和發(fā)送方MAC地址不同,則向DHCP服務(wù)器發(fā)送包含發(fā)送方IP地址的查詢請求消息,接收DHCP服務(wù)器發(fā)送的查詢結(jié)果消息,該查詢結(jié)果消息中包含DHCP服務(wù)器根據(jù)發(fā)送方IP地址從DHCP服務(wù)器的租約表中查找到的與發(fā)送方IP地址對應的MAC地址,根據(jù)查詢結(jié)果消息確定客戶端的合法性。應用本發(fā)明,當DHCP服務(wù)器為客戶端分配過IP地址,但網(wǎng)關(guān)中未記錄該客戶端的地址信息時,則網(wǎng)關(guān)可以通過與DHCP服務(wù)器交互,根據(jù)DHCP服務(wù)器中記錄的地址信息完成客戶端身份的檢測,從而無需客戶端在ARP請求過程中重復向DHCP服務(wù)器請求IP地址,由此降低了請求過程的繁瑣性,相應提高了網(wǎng)絡(luò)性能。
      【專利附圖】

      【附圖說明】
      [0031]為了更清楚地說明本發(fā)明或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
      [0032]圖1為本發(fā)明客戶端身份檢測方法的一個實施例流程圖;
      [0033]圖2為本發(fā)明客戶端身份檢測方法的另一個實施例流程圖;
      [0034]圖3為應用本發(fā)明實施例的網(wǎng)絡(luò)架構(gòu)示意圖;
      [0035]圖4為本發(fā)明客戶端身份檢測系統(tǒng)的實施例框圖;
      [0036]圖5為本發(fā)明網(wǎng)關(guān)的一個實施例框圖;
      [0037]圖6為本發(fā)明網(wǎng)關(guān)的另一個實施例框圖;
      [0038]圖7為本發(fā)明網(wǎng)關(guān)的另一個實施例框圖。
      【具體實施方式】
      [0039]下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明的技術(shù)方案進行清楚、完整的描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
      [0040]參見圖1,為本發(fā)明客戶端身份檢測方法的一個實施例流程圖:[0041]步驟101:網(wǎng)關(guān)接收客戶端發(fā)送的ARP消息,該ARP消息中包含發(fā)送方IP地址和發(fā)送方MAC地址。
      [0042]本發(fā)明實施例中,客戶端可以具體為PC或IP電話等具有網(wǎng)絡(luò)通信功能的終端。通常,每個客戶端在進行網(wǎng)絡(luò)通信前,可以通過網(wǎng)關(guān)請求DHCP服務(wù)器為該客戶端分配IP地址,DHCP服務(wù)器在為客戶端分配完IP地址后,會在租約表中記錄該客戶端的租約表項,該租約表項中包含客戶端的IP地址、MAC地址、租期等信息。本實施例中,網(wǎng)關(guān)在上述DHCP服務(wù)器為客戶端分配IP地址的過程中,通過監(jiān)聽二者之間的交互消息獲得客戶端的MAC地址,以及DHCP服務(wù)器為客戶端分配的IP地址,網(wǎng)關(guān)在ARP表中記錄客戶端的ARP表項,該ARP表項中包含客戶端的IP地址和MAC地址。網(wǎng)關(guān)不根據(jù)ARP消息在ARP表中記錄ARP表項。一般地,ARP表可以保存在網(wǎng)關(guān)的存儲器內(nèi),例如隨機存儲器(英文為Random AccessMemory,縮寫為 RAM)。
      [0043]當客戶端發(fā)起ARP請求以請求網(wǎng)關(guān)地址時,客戶端向網(wǎng)關(guān)發(fā)送包含發(fā)送方IP地址和發(fā)送方MAC地址的ARP消息。
      [0044]步驟102:如果網(wǎng)關(guān)的ARP表中的每一個ARP表項包含的IP地址和MAC地址均與所述發(fā)送方IP地址和發(fā)送方MAC地址不同,則向DHCP服務(wù)器發(fā)送查詢請求消息,該查詢請求消息中包含發(fā)送方IP地址。
      [0045]在本實施例的一個可選的實現(xiàn)方式中,網(wǎng)關(guān)在存儲器中記錄了客戶端的ARP表項。網(wǎng)關(guān)重啟后,則重啟之前記錄的ARP表項丟失,這種情況下,如果網(wǎng)關(guān)接收到客戶端發(fā)送的包含發(fā)送方IP地址的ARP消息,則網(wǎng)關(guān)在ARP表中無法查找到發(fā)送方IP地址對應的ARP表項,因此網(wǎng)關(guān)向DHCP服務(wù)器發(fā)送包含發(fā)送方IP地址的查詢請求消息,以便檢測該客戶端是否為合法客戶端。
      [0046]在本實施例的另一個可選的實現(xiàn)方式中,如果DHCP服務(wù)器重新為客戶端分配了新的IP地址,但是網(wǎng)關(guān)未將該新的IP地址記錄到更新后的客戶端的ARP表項。當網(wǎng)關(guān)接收到該客戶端發(fā)送的包含發(fā)送方IP地址的ARP消息時,由于該ARP消息中包含的發(fā)送方IP地址為該客戶端的新的IP地址,網(wǎng)關(guān)的ARP表中的ARP表項中與該發(fā)送方MAC地址對應的IP地址為該客戶端的舊的IP地址。因此網(wǎng)關(guān)在ARP表中無法查找到包括該發(fā)送方IP地址與該發(fā)送方MAC地址的ARP表項。網(wǎng)關(guān)向DHCP服務(wù)器發(fā)送包含該發(fā)送方IP地址的查詢請求消息,以便檢測該客戶端是否為合法客戶端;
      [0047]在本實施例的另一個實現(xiàn)方式中,當該網(wǎng)關(guān)作為第一網(wǎng)關(guān),其具有互為備份的第二網(wǎng)關(guān)時,如果DHCP服務(wù)器首次為客戶端分配了第一 IP地址時,該第一網(wǎng)關(guān)記錄了包含該客戶端的第一 IP地址和第一 MAC地址的ARP表項;后續(xù)如果DHCP服務(wù)器再次為該客戶端分配了第二 IP地址,由第二網(wǎng)關(guān)記錄了包含該客戶端的第二 IP地址和第一MAC地址的ARP表項,且DHCP服務(wù)器將第一 IP地址重新分配給了新的客戶端,也由該第二網(wǎng)關(guān)記錄包含該新的客戶端的第一 IP地址和第二 MAC地址的ARP表項。當該第一網(wǎng)關(guān)接收到新的客戶端發(fā)送的包含發(fā)送方IP地址的ARP消息時,由于該ARP消息中包含的發(fā)送方IP地址為DHCP服務(wù)器分配給該新的客戶端的第一 IP地址,第一網(wǎng)關(guān)的APR表中的ARP表項中與該發(fā)送方IP地址對應的MAC地址為客戶端的第一 MAC地址,而不是新的客戶端的第二 MAC地址。因此第一網(wǎng)關(guān)在緩存的ARP表中無法查找到包括該發(fā)送方IP地址與發(fā)送方MAC地址的ARP表項。第一網(wǎng)關(guān)向DHCP服務(wù)器發(fā)送包含該發(fā)送方IP地址的查詢請求消息,以便查詢該新的客戶端是否為合法客戶端。
      [0048]步驟103:網(wǎng)關(guān)接收DHCP服務(wù)器發(fā)送的查詢結(jié)果消息,該查詢結(jié)果消息中包含DHCP服務(wù)器根據(jù)發(fā)送方IP地址從該DHCP服務(wù)器的租約表中查找到的與該發(fā)送方IP地址對應的MAC地址。
      [0049]DHCP服務(wù)器中記錄了包含每個客戶端的IP地址和MAC地址的租約表項,對于重新分配過IP地址的客戶端,則DHCP服務(wù)器記錄包含為該客戶端重新分配過的IP地址和MAC地址的租約表項。當DHCP服務(wù)器接收到網(wǎng)關(guān)發(fā)送的查詢請求消息后,根據(jù)該查詢請求消息中包含的發(fā)送方IP地址查找租約表項,獲取與該發(fā)送方IP地址對應的租約表項,并根據(jù)查找到的租約表項中的IP地址、MAC地址、租期等信息構(gòu)建查詢結(jié)果消息,并將該查詢結(jié)果消息發(fā)送給網(wǎng)關(guān)。
      [0050]步驟104:網(wǎng)關(guān)根據(jù)查詢結(jié)果消息確定客戶端的合法性。
      [0051]在本實施例的實現(xiàn)方式中,網(wǎng)關(guān)接收到查詢結(jié)果消息后,如果查詢結(jié)果消息中攜帶的MAC地址與發(fā)送方MAC地址一致,則確定發(fā)送ARP消息的客戶端為合法客戶端,如果查詢結(jié)果消息中攜帶的MAC地址與發(fā)送方MAC地址不一致,則確定發(fā)送ARP消息的客戶端為非法客戶端。
      [0052]可選的,網(wǎng)關(guān)可以根據(jù)查詢結(jié)果消息在ARP表中添加ARP表項,該ARP表項中包括查詢結(jié)果消息中攜帶的IP地址和MAC地址。
      [0053]由上述實施例可見,當DHCP服務(wù)器為客戶端分配過IP地址,但網(wǎng)關(guān)中未記錄該客戶端的地址信息時,則網(wǎng)關(guān)可以通過與DHCP服務(wù)器交互,根據(jù)DHCP服務(wù)器中記錄的地址信息完成客戶端身份的檢測,從而無需客戶端在ARP請求過程中重復向DHCP服務(wù)器請求IP地址,由此降低了請求過程的繁瑣性,相應提高了網(wǎng)絡(luò)性能。
      [0054]參見圖2,為本發(fā)明客戶端身份檢測方法的另一個實施例流程圖,該實施例中詳細描述了對客戶端身份進行檢測的過程:
      [0055]步驟201:網(wǎng)關(guān)接收客戶端發(fā)送的ARP消息,該ARP消息中包含發(fā)送方IP地址和發(fā)送方MAC地址。
      [0056]本發(fā)明實施例中,本發(fā)明實施例中,客戶端可以具體為PC或IP電話等具有網(wǎng)絡(luò)通信功能的終端。通常,每個客戶端在進行網(wǎng)絡(luò)通信前,可以通過網(wǎng)關(guān)請求DHCP服務(wù)器為該客戶端分配IP地址,DHCP服務(wù)器在為客戶端分配完IP地址后,會在租約表中記錄該客戶端的租約表項,該租約表項中包含客戶端的IP地址、MAC地址、租期等信息。本實施例中,網(wǎng)關(guān)在上述DHCP服務(wù)器為客戶端分配IP地址的過程中,通過監(jiān)聽二者之間的交互消息獲得客戶端的MAC地址,以及DHCP服務(wù)器為客戶端分配的IP地址,網(wǎng)關(guān)在ARP表中記錄客戶端的ARP表項,該ARP表項中包含客戶端的IP地址和MAC地址。網(wǎng)關(guān)不根據(jù)ARP消息在ARP表中記錄ARP表項。一般地,ARP表可以保存在網(wǎng)關(guān)的存儲器內(nèi),例如RAM。
      [0057]當客戶端發(fā)起ARP請求以請求網(wǎng)關(guān)地址時,客戶端向網(wǎng)關(guān)發(fā)送包含發(fā)送方IP地址和發(fā)送方MAC地址的ARP消息。
      [0058]步驟202:判斷網(wǎng)關(guān)的ARP表中的每一個ARP表項包含的IP地址和MAC地址是否均與ARP消息中包含的發(fā)送方IP地址和發(fā)送方MAC地址不同,如果網(wǎng)關(guān)的ARP表中存在一個ARP表項包含的IP地址和MAC地址與ARP消息中包含的發(fā)送方IP地址和發(fā)送方MAC地址相同,則執(zhí)行步驟208 ;如果網(wǎng)關(guān)的ARP表中的每一個ARP表項包含的IP地址和MAC地址均與ARP消息中包含的發(fā)送方IP地址和發(fā)送方MAC地址不同,則執(zhí)行步驟203。
      [0059]在本實施例的一個可選的實現(xiàn)方式中,網(wǎng)關(guān)在存儲器中記錄了客戶端的ARP表項。網(wǎng)關(guān)重啟后,則重啟之前記錄的ARP表項丟失,這種情況下,如果網(wǎng)關(guān)接收到客戶端發(fā)送的包含發(fā)送方IP地址的ARP消息,則網(wǎng)關(guān)在ARP表中無法查找到發(fā)送方IP地址對應的ARP表項,因此網(wǎng)關(guān)執(zhí)行步驟203。
      [0060]在本實施例的另一個可選的實現(xiàn)方式中,如果DHCP服務(wù)器重新為客戶端分配了新的IP地址,但是網(wǎng)關(guān)未將該新的IP地址記錄到更新后的客戶端的ARP表項。當網(wǎng)關(guān)接收到該客戶端發(fā)送的包含發(fā)送方IP地址的ARP消息時,由于該ARP消息中包含的發(fā)送方IP地址為該客戶端的新的IP地址,網(wǎng)關(guān)的ARP表中的ARP表項中與該發(fā)送方MAC地址對應的IP地址為該客戶端的舊的IP地址。因此網(wǎng)關(guān)在ARP表中無法查找到包括該發(fā)送方IP地址與該發(fā)送方MAC地址的ARP表項,因此網(wǎng)關(guān)執(zhí)行步驟203 ;
      [0061]在本實施例的另一個實現(xiàn)方式中,當該網(wǎng)關(guān)作為第一網(wǎng)關(guān),其具有互為備份的第二網(wǎng)關(guān)時,如果DHCP服務(wù)器首次為客戶端分配了第一 IP地址時,該第一網(wǎng)關(guān)記錄了包含該客戶端的第一 IP地址和第一 MAC地址的ARP表項;后續(xù)如果DHCP服務(wù)器再次為該客戶端分配了第二 IP地址,由第二網(wǎng)關(guān)記錄了包含該客戶端的第二 IP地址和第一MAC地址的ARP表項,且DHCP服務(wù)器將第一 IP地址重新分配給了新的客戶端,也由該第二網(wǎng)關(guān)記錄包含該新的客戶端的第一 IP地址和第二 MAC地址的ARP表項。當該第一網(wǎng)關(guān)接收到新的客戶端發(fā)送的包含發(fā)送方IP地址的ARP消息時,由于該ARP消息中包含的發(fā)送方IP地址為DHCP服務(wù)器分配給該新的客戶端的第一 IP地址,第一網(wǎng)關(guān)的APR表中的ARP表項中與該發(fā)送方IP地址對應的MAC地址為客戶端的第一 MAC地址,而不是新的客戶端的第二 MAC地址。因此第一網(wǎng)關(guān)在緩存的ARP表中無法查找到包括該發(fā)送方IP地址與發(fā)送方MAC地址的ARP表項,因此網(wǎng)關(guān)執(zhí)行步驟203。
      [0062]步驟203:網(wǎng)關(guān)向DHCP服務(wù)器發(fā)送查詢請求消息,該查詢請求消息中包含發(fā)送方IP地址。
      [0063]步驟204 =DHCP服務(wù)器根據(jù)發(fā)送方IP地址從租約表中查找與該發(fā)送方IP地址對應的MAC地址。
      [0064]DHCP服務(wù)器中的租約表中記錄了包含每個客戶端的IP地址和MAC地址的租約表項,對于重新分配過IP地址的客戶端,則DHCP服務(wù)器記錄包含為該客戶端重新分配過的IP地址和MAC地址的租約表項。當DHCP服務(wù)器接收到網(wǎng)關(guān)發(fā)送的查詢請求消息后,根據(jù)該查詢請求消息中包含的發(fā)送方IP地址查找租約表項,獲取與該發(fā)送方IP地址對應的租約表項,該租約表項中包含與該發(fā)送方IP地址對應的MAC地址和租期。
      [0065]步驟205:DHCP服務(wù)器向網(wǎng)關(guān)發(fā)送包含發(fā)送方IP地址和對應的MAC地址的查詢結(jié)果消息。
      [0066]DHCP服務(wù)器根據(jù)查找到的租約表項中的IP地址、MAC地址、租期等信息構(gòu)建查詢結(jié)果消息,并將查詢結(jié)果消息發(fā)送給網(wǎng)關(guān)。
      [0067]步驟206:網(wǎng)關(guān)在ARP表中添加ARP表項,該ARP表項中包括查詢結(jié)果消息中攜帶的IP地址和MAC地址。
      [0068]由于DHCP服務(wù)器的租約表中保存的IP地址和MAC地址為可信的地址,因此網(wǎng)關(guān)可以將查詢結(jié)果消息中攜帶的IP地址和MAC地址添加到ARP表中。[0069]步驟207:網(wǎng)關(guān)判斷查詢結(jié)果消息中攜帶的MAC地址是否與發(fā)送方MAC地址一致,如果攜帶的MAC地址與發(fā)送方MAC地址一致,則執(zhí)行步驟208 ;如果攜帶的MAC地址與發(fā)送方MAC地址不一致,則執(zhí)行步驟209。
      [0070]步驟208:網(wǎng)關(guān)確定客戶端為合法客戶端,向該客戶端返回網(wǎng)關(guān)地址,結(jié)束當前流程。
      [0071]步驟209:網(wǎng)關(guān)確定客戶端為非法客戶端,丟棄該客戶端發(fā)送的ARP消息,結(jié)束當前流程。
      [0072]由上述實施例可見,當DHCP服務(wù)器為客戶端分配過IP地址,但網(wǎng)關(guān)中未記錄該客戶端的地址信息時,則網(wǎng)關(guān)可以通過與DHCP服務(wù)器交互,根據(jù)DHCP服務(wù)器中記錄的地址信息完成客戶端身份的檢測,從而無需客戶端在ARP請求過程中重復向DHCP服務(wù)器請求IP地址,由此降低了請求過程的繁瑣性,相應提高了網(wǎng)絡(luò)性能。
      [0073]參見圖3,為應用本發(fā)明實施例的一種網(wǎng)絡(luò)架構(gòu)示意圖:
      [0074]該網(wǎng)絡(luò)架構(gòu)中包括:網(wǎng)關(guān),該網(wǎng)關(guān)通過互聯(lián)網(wǎng)(英文為Internet)與DHCP服務(wù)器相連,不同的客戶端通過接入層交換機與網(wǎng)關(guān)相連。圖3中為了示例方便,示出了四個客戶端,分別為客戶端11 (例如,PC)、客戶端12 (例如,IP電話)、客戶端21 (例如,PC)和客戶端22 (例如,PC)。
      [0075]下面結(jié)合圖3示出的網(wǎng)絡(luò)架構(gòu),描述一個本發(fā)明實施例中的客戶端身份檢測過程的應用實例:
      [0076]其中,假設(shè)客戶端11為合法客戶端,其MAC地址為00a0-c0a8-0165,客戶端21為非法客戶端,其MAC地址為00a0-c0a8-0001。
      [0077]對于合法客戶端11:
      [0078]初始客戶端11通過網(wǎng)關(guān)向DHCP服務(wù)器發(fā)送包含其MAC地址的DHCP請求消息,請求DHCP服務(wù)器為客戶端11分配IP地址,假設(shè)DHCP服務(wù)器為客戶端11分配的IP地址為192.168.1.101,同時DHCP服務(wù)器記錄客戶端11的租約表項,該租約表項中包含客戶端11的IP地址和MAC地址,如圖3中示出的租約表中的編號為I的表項;另外,網(wǎng)關(guān)通過監(jiān)聽客戶端11與DHCP服務(wù)器之間的交互也可以獲取到客戶端11的IP地址和MAC地址,并在ARP表中記錄客戶端11的ARP表項,該ARP表項中包含客戶端11的IP地址和MAC地址。本應用示例中,假設(shè)網(wǎng)關(guān)重啟后,該網(wǎng)關(guān)緩存中原來保存的客戶端11的ARP表項已經(jīng)丟失,僅保存了該網(wǎng)關(guān)重啟后另外一個客戶端的ARP表項,如圖3中示出的ARP表中的編號為I的表項;
      [0079]此時,當客戶端11要發(fā)起ARP過程時,客戶端11向網(wǎng)關(guān)發(fā)送用于請求網(wǎng)關(guān)地址的ARP消息,該ARP消息中包含客戶端11的IP地址192.168.1.101和MAC地址00a0-c0a8_0165 ;
      [0080]當網(wǎng)關(guān)收到客戶端11發(fā)送的ARP消息后,根據(jù)ARP消息中包含的客戶端11的IP地址查找緩存中的ARP表,根據(jù)圖3中示出的ARP表,則網(wǎng)關(guān)未查找到客戶端11的ARP表項,網(wǎng)關(guān)向DHCP服務(wù)器發(fā)送租約查詢消息,在DHCP協(xié)議中該租約查詢消息為LEASEQUERY消息,該LEASEQUERY消息中包含客戶端11的IP地址192.168.1.101,用于向DHCP服務(wù)器請求IP地址為192.168.1.101的客戶端11的租約記錄;
      [0081]DHCP服務(wù)器收到LEASEQUERY消息之后,在租約表中查找IP地址192.168.1.101對應的表項,如圖3中所示,DHCP服務(wù)器的租約表中包含該表項,則DHCP服務(wù)器根據(jù)查找到的表項創(chuàng)建包含IP地址192.168.1.101、MAC地址00a0-c0a8_0165和租期86400s(秒)的租約激活消息,在DHCP協(xié)議中該租約激活消息為LEASEACTIVE消息,并將創(chuàng)建的LEASEACTIVE消息發(fā)送給網(wǎng)關(guān);
      [0082]網(wǎng)關(guān)收到LEASEACTIVE消息之后,將ARP消息中包含的客戶端11的MAC地址00a0-c0a8-0165與LEASEACTIVE消息中包含的MAC地址進行匹配,由于二者一致,則表明客戶端11為DHCP服務(wù)器授權(quán)的合法客戶端,網(wǎng)關(guān)在ARP表中為該客戶端11添加ARP表項,并向客戶端11發(fā)送包含網(wǎng)關(guān)地址的ARP應答。
      [0083]對于非法客戶端21:
      [0084]假設(shè)非法客戶端21偽造了與客戶端11 一致的IP地址192.168.1.101 ;
      [0085]當客戶端21要發(fā)起ARP過程時,客戶端21向網(wǎng)關(guān)發(fā)送用于請求網(wǎng)關(guān)地址的ARP消息,該ARP消息中包含客戶端21的IP地址192.168.1.101和MAC地址00a0-c0a8-0001 ;
      [0086]當網(wǎng)關(guān)收到客戶端21發(fā)送的ARP消息后,根據(jù)ARP消息中包含的客戶端21的IP地址查找緩存中的ARP表,根據(jù)圖3中示出的ARP表,則網(wǎng)關(guān)未查找到客戶端21的ARP表項,網(wǎng)關(guān)向DHCP服務(wù)器發(fā)送LEASEQUERY消息,該LEASEQUERY消息中包含客戶端21的IP地址192.168.1.101,用于向DHCP服務(wù)器請求IP地址為192.168.1.101的客戶端11的租約記錄;
      [0087]DHCP服務(wù)器收到LEASEQUERY消息之后,在租約表中查找IP地址192.168.1.101對應的表項,如圖3中所示,DHCP服務(wù)器的租約表中包含該表項,則DHCP服務(wù)器根據(jù)查找到的表項創(chuàng)建包含IP地址192.168.1.101、MAC地址00a0-c0a8_0165和租期86400s (秒)的LEASEACTIVE消息,并將創(chuàng)建的LEASEACTIVE消息發(fā)送給網(wǎng)關(guān);
      [0088]網(wǎng)關(guān)收到LEASEACTIVE消息之后,將ARP消息中包含的客戶端21的MAC地址00a0-c0a8-0001與LEASEACTIVE消息中包含的MAC地址進行匹配,由于二者不一致,則表明客戶端21不是DHCP服務(wù)器授權(quán)的合法客戶端,網(wǎng)關(guān)直接丟客戶端21發(fā)送的ARP消息。
      [0089]另外除了上述圖3示出的網(wǎng)絡(luò)架構(gòu)外,當本發(fā)明實施例應用在虛擬路由器冗余協(xié)議(英文為Virtual Router Redundancy Protocol,縮寫為VRRP)場景中時,則在圖3不出的網(wǎng)絡(luò)架構(gòu)基礎(chǔ)上,該網(wǎng)關(guān)還設(shè)置有一個備份網(wǎng)關(guān),假設(shè)該網(wǎng)關(guān)和其備份網(wǎng)關(guān)分別稱為網(wǎng)關(guān)I和網(wǎng)關(guān)2。假設(shè)初始時,客戶端11通過網(wǎng)關(guān)I向DHCP服務(wù)器請求分配IP地址時,網(wǎng)關(guān)I記錄客戶端11的ARP表項,該ARP表項中包含客戶端11的IP地址192.168.1.101和MAC地址00a0-c0a8-0165 ;后續(xù)客戶端11又通過網(wǎng)關(guān)2向DHCP服務(wù)器請求分配IP地址,則網(wǎng)關(guān)2會記錄客戶端11的ARP表項,該ARP表項中包含客戶端11的IP地址192.168.1.105和MAC地址00a0-c0a8-0165,并且客戶端12通過網(wǎng)關(guān)2向DHCP服務(wù)器請求分配IP地址時,網(wǎng)關(guān)2會記錄客戶端12的ARP表項,該ARP表項中包含客戶端12的IP地址192.168.1.101(即初始時分配給客戶端11的IP地址)和MAC地址00a0-c0a8-0002 ;同時,在DHCP服務(wù)器的租約表中,記錄最近一次為客戶端11分配的租約表項,該租約表項中包含客戶端11的IP地址192.168.1.105和MAC地址00a0-c0a8_0165,以及為客戶端12分配的租約表項,該租約表項中包含客戶端12的IP地址192.168.1.101和MAC地址00a0-c0a8_0002。
      [0090]對于客戶端11:
      [0091]此時當客戶端11要發(fā)起ARP過程時,假設(shè)客戶端11向網(wǎng)關(guān)I發(fā)送用于請求網(wǎng)關(guān)I地址的ARP消息,該ARP消息中包含客戶端11的IP地址192.168.1.105和MAC地址00a0-c0a8_0165 ;
      [0092]當網(wǎng)關(guān)I收到客戶端11發(fā)送的ARP消息后,根據(jù)ARP消息中包含的客戶端11的IP地址查找緩存中的ARP表,則網(wǎng)關(guān)I未查找到客戶端11的ARP表項(查找到MAC地址,但未查找到IP地址),網(wǎng)關(guān)I向DHCP服務(wù)器發(fā)送LEASEQUERY消息,該LEASEQUERY消息中包含客戶端11的IP地址192.168.1.105,用于向DHCP服務(wù)器請求IP地址為192.168.1.105的客戶端11的租約記錄;
      [0093]DHCP服務(wù)器收到LEASEQUERY消息之后,在租約表中查找IP地址192.168.1.105對應的表項,由于DHCP服務(wù)器的租約表中包含該表項,則DHCP服務(wù)器根據(jù)查找到的表項創(chuàng)建包含 IP 地址 192.168.1.105、MAC 地址 00a0-c0a8_0165 的 LEASEACTIVE 消息,并將創(chuàng)建的LEASEACTIVE消息發(fā)送給網(wǎng)關(guān)I ;
      [0094]網(wǎng)關(guān)I收到LEASEACTIVE消息之后,將ARP消息中包含的客戶端11的MAC地址00a0-c0a8-0165與LEASEACTIVE消息中包含的MAC地址進行匹配,由于二者一致,則表明客戶端11為DHCP服務(wù)器授權(quán)的合法客戶端,網(wǎng)關(guān)I根據(jù)LEASEACTIVE消息中包含的IP地址和MAC地址在ARP表更新原來記錄的客戶端11的ARP表項,并向客戶端11發(fā)送包含網(wǎng)關(guān)I地址的ARP應答。
      [0095]對于客戶端12:
      [0096]此時當客戶端12要發(fā)起ARP過程時,假設(shè)客戶端12向網(wǎng)關(guān)I發(fā)送用于請求網(wǎng)關(guān)I地址的ARP消息,該ARP消息中包含客戶端12的IP地址192.168.1.101和MAC地址00a0_c0a8_0002 ;
      [0097]當網(wǎng)關(guān)I收到客戶端12發(fā)送的ARP消息后,根據(jù)ARP消息中包含的客戶端12的IP地址查找緩存中的ARP表,則網(wǎng)關(guān)I未查找到客戶端12的ARP表項(未查找到MAC地址,但查找到IP地址),網(wǎng)關(guān)I向DHCP服務(wù)器發(fā)送LEASEQUERY消息,該LEASEQUERY消息中包含客戶端12的IP地址192.168.1.101,用于向DHCP服務(wù)器請求IP地址為192.168.1.101的客戶端12的租約記錄;
      [0098]DHCP服務(wù)器收到LEASEQUERY消息之后,在租約表中查找IP地址192.168.1.101對應的表項,由于DHCP服務(wù)器的租約表中包含該表項,則DHCP服務(wù)器根據(jù)查找到的表項創(chuàng)建包含 IP 地址 192.168.1.101、MAC 地址 00a0-c0a8-0002 的 LEASEACTIVE 消息,并將創(chuàng)建的LEASEACTIVE消息發(fā)送給網(wǎng)關(guān)I ;
      [0099]網(wǎng)關(guān)I收到LEASEACTIVE消息之后,將ARP消息中包含的客戶端12的MAC地址00a0-c0a8-0002與LEASEACTIVE消息中包含的MAC地址進行匹配,由于二者一致,則表明客戶端12為DHCP服務(wù)器授權(quán)的合法客戶端,網(wǎng)關(guān)I在ARP表中為該客戶端12添加ARP表項,并向客戶端12發(fā)送包含網(wǎng)關(guān)I地址的ARP應答。
      [0100]與本發(fā)明客戶端身份檢測方法的實施例相對應,本發(fā)明還提供了用于執(zhí)行該方法的客戶端身份檢測系統(tǒng)及網(wǎng)關(guān)的實施例。
      [0101]參見圖4,為本發(fā)明客戶端身份檢測系統(tǒng)的實施例框圖:
      [0102]該系統(tǒng)包括:網(wǎng)關(guān)410和DHCP服務(wù)器420。
      [0103]其中,所述網(wǎng)關(guān)410,用于接收客戶端發(fā)送的ARP消息,所述ARP消息中包含發(fā)送方IP地址和發(fā)送方MAC地址,如果所述網(wǎng)關(guān)410的ARP表中的每一個ARP表項包含的IP地址和MAC地址均與所述發(fā)送方IP地址和發(fā)送方MAC地址不同,向所述DHCP服務(wù)器420發(fā)送查詢請求消息,所述查詢請求消息中包含所述發(fā)送方IP地址;
      [0104]所述DHCP服務(wù)器420,用于根據(jù)所述發(fā)送方IP地址從所述DHCP服務(wù)器420的租約表中查找到的與所述發(fā)送方IP地址對應的MAC地址,并將包含所述MAC地址的查詢結(jié)果消息發(fā)送給所述網(wǎng)關(guān)410;
      [0105]所述網(wǎng)關(guān)410,還用于根據(jù)所述查詢結(jié)果消息確定所述客戶端的合法性。
      [0106]在本實施例的一個實現(xiàn)方式中,所述網(wǎng)關(guān)410,具體用于如果所述查詢結(jié)果消息中攜帶的MAC地址與所述發(fā)送方MAC地址一致,則確定所述客戶端為合法客戶端,如果所述查詢結(jié)果消息中攜帶的MAC地址與所述發(fā)送方MAC地址不一致,則確定所述客戶端為非法客戶端。
      [0107]在本實施例的另一個實現(xiàn)方式中,所述網(wǎng)關(guān)410,還用于在所述ARP表中添加ARP表項,所述ARP表項中包括所述查詢結(jié)果消息中攜帶的IP地址和MAC地址。
      [0108]在本實施例的另一個實現(xiàn)方式中,所述網(wǎng)關(guān)410,還用于當所述客戶端為非法客戶端時,丟棄所述ARP消息。
      [0109]在本實施例的另一個實現(xiàn)方式中,所述網(wǎng)關(guān)410,還用于如果所述網(wǎng)關(guān)410的ARP表中存在一個ARP表項包含的IP地址和MAC地址與所述發(fā)送方IP地址和發(fā)送方MAC地址相同,則確定所述客戶端為合法客戶端。
      [0110]參見圖5,為本發(fā)明網(wǎng)關(guān)的一個實施例框圖:
      [0111]該網(wǎng)關(guān)包括:第一接收單元510、判斷單元520、發(fā)送單元530、第二接收單元540和檢測單元550。
      [0112]其中,第一接收單元510,用于接收客戶端發(fā)送的ARP消息,所述ARP消息中包含發(fā)送方IP地址和發(fā)送方MAC地址;
      [0113]判斷單元520,用于判斷所述網(wǎng)關(guān)的ARP表中的每一個ARP表項包含的IP地址和MAC地址是否均與所述第一接收單元510接收到的ARP消息中包含的發(fā)送方IP地址和發(fā)送方MAC地址不同;
      [0114]發(fā)送單元530,用于如果所述判斷單元520的判斷結(jié)果為所述網(wǎng)關(guān)的ARP表中的每一個ARP表項包含的IP地址和MAC地址均與所述第一接收單元接收到的ARP消息中包含的發(fā)送方IP地址和發(fā)送方MAC地址不同,則向DHCP服務(wù)器發(fā)送查詢請求消息,所述查詢請求消息中包含所述發(fā)送方IP地址;
      [0115]第二接收單元540,用于接收所述DHCP服務(wù)器發(fā)送的查詢結(jié)果消息,所述查詢結(jié)果消息中包含所述DHCP服務(wù)器根據(jù)所述發(fā)送方IP地址從所述DHCP服務(wù)器的租約表中查找到的與所述發(fā)送方IP地址對應的MAC地址;
      [0116]檢測單元550,用于根據(jù)所述第二接收單元540接收到的查詢結(jié)果消息確定所述客戶端的合法性。
      [0117]在本實施例的一個實現(xiàn)方式中,所述檢測單元550,具體用于如果所述第二接收單元540接收到的查詢結(jié)果消息中攜帶的MAC地址與所述發(fā)送方MAC地址一致,則確定所述客戶端為合法客戶端,如果所述第二接收單元540接收到的查詢結(jié)果消息中攜帶的MAC地址與所述發(fā)送方MAC地址不一致,則確定所述客戶端為非法客戶端。
      [0118]參見圖6,為本發(fā)明網(wǎng)關(guān)的另一個實施例框圖:[0119]該網(wǎng)關(guān)包括:第一接收單元610、判斷單元620、發(fā)送單元630、第二接收單元640和檢測單元650、添加單元660和丟棄單元670。
      [0120]其中,第一接收單元610,用于接收客戶端發(fā)送的ARP消息,所述ARP消息中包含發(fā)送方IP地址和發(fā)送方MAC地址;
      [0121]判斷單元620,用于判斷所述網(wǎng)關(guān)的ARP表中的每一個ARP表項包含的IP地址和MAC地址是否均與所述第一接收單元610接收到的ARP消息中包含的發(fā)送方IP地址和發(fā)送方MAC地址不同;
      [0122]發(fā)送單元630,用于如果所述判斷單元620的判斷結(jié)果為所述網(wǎng)關(guān)的ARP表中的每一個ARP表項包含的IP地址和MAC地址均與所述第一接收單元接收到的ARP消息中包含的發(fā)送方IP地址和發(fā)送方MAC地址不同,則向DHCP服務(wù)器發(fā)送查詢請求消息,所述查詢請求消息中包含所述發(fā)送方IP地址;
      [0123]第二接收單元640,用于接收所述DHCP服務(wù)器發(fā)送的查詢結(jié)果消息,所述查詢結(jié)果消息中包含所述DHCP服務(wù)器根據(jù)所述發(fā)送方IP地址從所述DHCP服務(wù)器的租約表中查找到的與所述發(fā)送方IP地址對應的MAC地址;
      [0124]所述檢測單元650,用于根據(jù)所述第二接收單元640接收到的查詢結(jié)果消息確定所述客戶端的合法性;
      [0125]添加單兀660,用于在所述ARP表中添加ARP表項,所述ARP表項中包括所述第二接收單元640接收到的所述查詢結(jié)果消息中攜帶的IP地址和MAC地址;
      [0126]丟棄單元670,用于當所述檢測單元650確定所述客戶端為非法客戶端時,丟棄所述第一接收單元610接收到的ARP消息。
      [0127]在本實施例的一個實現(xiàn)方式中,所述檢測單元650,具體用于如果所述第二接收單元640接收到的查詢結(jié)果消息中攜帶的MAC地址與所述發(fā)送方MAC地址一致,則確定所述客戶端為合法客戶端,如果所述第二接收單元接收到的查詢結(jié)果消息中攜帶的MAC地址與所述發(fā)送方MAC地址不一致,則確定所述客戶端為非法客戶端。
      [0128]參見圖7,為本發(fā)明網(wǎng)關(guān)的另一個實施例框圖:
      [0129]該網(wǎng)關(guān)包括:客戶端端口 710、網(wǎng)絡(luò)端口 720、存儲器730、處理器740及總線750。
      [0130]其中,客戶端端口 710、網(wǎng)絡(luò)端口 720、存儲器730和處理器740通過總線750相連。
      [0131]所述存儲器730中存儲ARP表;
      [0132]客戶端端口 710接收客戶端發(fā)送的ARP消息,所述ARP消息中包含發(fā)送方IP地址和發(fā)送方MAC地址;
      [0133]所述處理器740判斷如果存儲器730存儲的ARP表中的每一個ARP表項包含的IP地址和MAC地址均與所述ARP消息中的發(fā)送方IP地址和發(fā)送方MAC地址不同,則通過網(wǎng)絡(luò)端口 720向DHCP服務(wù)器發(fā)送查詢請求消息,所述查詢請求消息中包含所述發(fā)送方IP地址;判斷如果存儲器730存儲的ARP表中存在一個ARP表項包含的IP地址和MAC地址與所述發(fā)送方IP地址和發(fā)送方MAC地址相同,則確定所述客戶端為合法客戶端;當獲得網(wǎng)絡(luò)端口720接收的DHCP服務(wù)器發(fā)送的查詢結(jié)果消息后,根據(jù)所述查詢結(jié)果消息確定所述客戶端的合法性;
      [0134]所述網(wǎng)絡(luò)端口 720接收所述DHCP服務(wù)器發(fā)送的查詢結(jié)果消息,所述查詢結(jié)果消息中包含所述DHCP服務(wù)器根據(jù)所述發(fā)送方IP地址從所述DHCP服務(wù)器的租約表中查找到的與所述發(fā)送方IP地址對應的MAC地址。
      [0135]在本實施例的一個實現(xiàn)方式中,所述處理器740可以判斷如果所述查詢結(jié)果消息中攜帶的MAC地址與所述發(fā)送方MAC地址一致,則確定所述客戶端為合法客戶端,如果所述查詢結(jié)果消息中攜帶的MAC地址與所述發(fā)送方MAC地址不一致,則確定所述客戶端為非法
      客戶端。
      [0136]在本實施例的另一個實現(xiàn)方式中,所述處理器740可以在所述存儲器730存儲的ARP表中添加ARP表項,所述ARP表項中包括所述查詢結(jié)果消息中攜帶的IP地址和MAC地址。
      [0137]在本實施例的另一個實現(xiàn)方式中,所述處理器740可以當確定所述客戶端為非法客戶端時,丟棄所述ARP消息。
      [0138]由上述實施例可見,網(wǎng)關(guān)接收客戶端發(fā)送的包含發(fā)送方IP地址和發(fā)送方MAC地址的ARP消息,如果網(wǎng)關(guān)的ARP表中的每一個ARP表項包含的IP地址和MAC地址均與發(fā)送方IP地址和發(fā)送方MAC地址不同,則向DHCP服務(wù)器發(fā)送包含發(fā)送方IP地址的查詢請求消息,接收DHCP服務(wù)器發(fā)送的查詢結(jié)果消息,該查詢結(jié)果消息中包含DHCP服務(wù)器根據(jù)發(fā)送方IP地址從DHCP服務(wù)器的租約表中查找到的與發(fā)送方IP地址對應的MAC地址,根據(jù)查詢結(jié)果消息確定客戶端的合法性。應用本發(fā)明實施例,當DHCP服務(wù)器為客戶端分配過IP地址,但網(wǎng)關(guān)中未記錄該客戶端的地址信息時,則網(wǎng)關(guān)可以通過與DHCP服務(wù)器交互,根據(jù)DHCP服務(wù)器中記錄的地址信息完成客戶端身份的檢測,從而無需客戶端在ARP請求過程中重復向DHCP服務(wù)器請求IP地址,由此降低了請求過程的繁瑣性,相應提高了網(wǎng)絡(luò)性能。
      [0139]本領(lǐng)域的技術(shù)人員可以清楚地了解到本發(fā)明實施例中的技術(shù)可借助軟件加必需的通用硬件平臺的方式來實現(xiàn)?;谶@樣的理解,本發(fā)明實施例中的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機軟件產(chǎn)品可以存儲在存儲介質(zhì)中,如R0M/RAM、磁碟、光盤等,包括若干指令用以使得一臺計算機設(shè)備(可以是個人計算機,服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個實施例或者實施例的某些部分所述的方法。
      [0140]本說明書中的各個實施例均采用遞進的方式描述,各個實施例之間相同相似的部分互相參見即可,每個實施例重點說明的都是與其他實施例的不同之處。尤其,對于系統(tǒng)實施例而言,由于其基本相似于方法實施例,所以描述的比較簡單,相關(guān)之處參見方法實施例的部分說明即可。
      [0141]以上所述的本發(fā)明實施方式,并不構(gòu)成對本發(fā)明保護范圍的限定。任何在本發(fā)明的保護范圍之內(nèi)所作的修改、等同替換和改進等,均應包含在本發(fā)明的保護范圍之內(nèi)。
      【權(quán)利要求】
      1.一種客戶端身份檢測方法,其特征在于,所述方法包括: 網(wǎng)關(guān)接收客戶端發(fā)送的地址解析協(xié)議ARP消息,所述ARP消息中包含發(fā)送方互聯(lián)網(wǎng)協(xié)議IP地址和發(fā)送方介質(zhì)訪問控制層MAC地址; 如果所述網(wǎng)關(guān)的ARP表中的每一個ARP表項包含的IP地址和MAC地址均與所述發(fā)送方IP地址和發(fā)送方MAC地址不同,則向動態(tài)主機設(shè)置協(xié)議DHCP服務(wù)器發(fā)送查詢請求消息,所述查詢請求消息中包含所述發(fā)送方IP地址; 接收所述DHCP服務(wù)器發(fā)送的查詢結(jié)果消息,所述查詢結(jié)果消息中包含所述DHCP服務(wù)器根據(jù)所述發(fā)送方IP地址從所述DHCP服務(wù)器的租約表中查找到的與所述發(fā)送方IP地址對應的MAC地址; 根據(jù)所述查詢結(jié)果消息確定所述客戶端的合法性。
      2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)所述查詢結(jié)果消息確定所述客戶端的合法性,包括: 如果所述查詢結(jié)果消息中攜帶的MAC地址與所述發(fā)送方MAC地址一致,則確定所述客戶端為合法客戶端,如果所述查詢結(jié)果消息中攜帶的MAC地址與所述發(fā)送方MAC地址不一致,則確定所述客戶端為非法客戶端。
      3.根據(jù)權(quán)利要求1或2所述的方法,其特征在于,所述方法還包括: 所述網(wǎng)關(guān)在所述ARP表中添加ARP表項,所述ARP表項中包括所述查詢結(jié)果消息中攜帶的IP地址和MAC地址 。
      4.根據(jù)權(quán)利要求1至3任意一項所述的方法,其特征在于,所述方法還包括:當所述客戶端為非法客戶端時,所述網(wǎng)關(guān)丟棄所述ARP消息。
      5.根據(jù)權(quán)利要求1至4任意一項所述的方法,其特征在于,所述方法還包括: 如果所述網(wǎng)關(guān)的ARP表中存在一個ARP表項包含的IP地址和MAC地址與所述發(fā)送方IP地址和發(fā)送方MAC地址相同,則確定所述客戶端為合法客戶端。
      6.一種網(wǎng)關(guān),其特征在于,所述網(wǎng)關(guān)包括: 第一接收單元,用于接收客戶端發(fā)送的ARP消息,所述ARP消息中包含發(fā)送方IP地址和發(fā)送方MAC地址; 判斷單元,用于判斷所述網(wǎng)關(guān)的ARP表中的每一個ARP表項包含的IP地址和MAC地址是否均與所述第一接收單元接收到的ARP消息中包含的發(fā)送方IP地址和發(fā)送方MAC地址不同; 發(fā)送單元,用于如果所述判斷單元的判斷結(jié)果為所述網(wǎng)關(guān)的ARP表中的每一個ARP表項包含的IP地址和MAC地址均與所述第一接收單元接收到的ARP消息中包含的發(fā)送方IP地址和發(fā)送方MAC地址不同,則向DHCP服務(wù)器發(fā)送查詢請求消息,所述查詢請求消息中包含所述發(fā)送方IP地址; 第二接收單元,用于接收所述DHCP服務(wù)器發(fā)送的查詢結(jié)果消息,所述查詢結(jié)果消息中包含所述DHCP服務(wù)器根據(jù)所述發(fā)送方IP地址從所述DHCP服務(wù)器的租約表中查找到的與所述發(fā)送方IP地址對應的MAC地址; 檢測單元,用于根據(jù)所述第二接收單元接收到的查詢結(jié)果消息確定所述客戶端的合法性。
      7.根據(jù)權(quán)利要求6所述的網(wǎng)關(guān),其特征在于,所述檢測單元,具體用于如果所述第二接收單元接收到的查詢結(jié)果消息中攜帶的MAC地址與所述發(fā)送方MAC地址一致,則確定所述客戶端為合法客戶端,如果所述第二接收單元接收到的查詢結(jié)果消息中攜帶的MAC地址與所述發(fā)送方MAC地址不一致,則確定所述客戶端為非法客戶端。
      8.根據(jù)權(quán)利要求6或7所述的網(wǎng)關(guān),其特征在于,所述網(wǎng)關(guān)還包括: 添加單元,用于在所述ARP表中添加ARP表項,所述ARP表項中包括所述第二接收單元接收到的所述查詢結(jié)果消息中攜帶的IP地址和MAC地址。
      9.根據(jù)權(quán)利要求6至8任意一項所述的網(wǎng)關(guān),其特征在于,所述網(wǎng)關(guān)還包括: 丟棄單元,用于當所述檢測單元確定所述客戶端為非法客戶端時,丟棄所述第一接收單元接收到的ARP消息。
      10.根據(jù)權(quán)利要求6至9任意一項所述的網(wǎng)關(guān),其特征在于, 所述檢測單元,還用于如果所述判斷單元的判斷結(jié)果為所述網(wǎng)關(guān)的ARP表中存在一個ARP表項包含的IP地址和MAC地址與所述第一接收單元接收到的ARP消息中包含的發(fā)送方IP地址和發(fā)送方MAC地 址相同,則確定所述客戶端為合法客戶端。
      【文檔編號】H04L12/66GK103795584SQ201210424018
      【公開日】2014年5月14日 申請日期:2012年10月30日 優(yōu)先權(quán)日:2012年10月30日
      【發(fā)明者】張帥 申請人:華為技術(shù)有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1