IPv6 SAVI技術原理簡介
隨著互聯網技術的迅速發展,安全問題日益嚴重,通常說IPv6比IPv4更安全,這種觀點來源于IPv6最初的定義(RFC2401)對IPSec的強制使用,由于這種觀點的存在促進了IPv6得到應用。
雖然這種強制IPSec的特征阻擋了一些攻擊的入侵之機,但是IPv6并不是萬能的,各種攻擊漏洞也必定存在,而問題的根源大多是與非法主機接入有關,針對IPv4、IPv6主機的安全合法接入問題,清華大學于2009年4月提出SAVI源址合法性檢驗 rfc草案,該草案主要講述了ipv4/ipv6的CPS(Control Packet Snooping)原理,根據CPS原理在接入設備(交換機、AP)上建立基于源地址的綁定關系,從而可以判斷從接入設備的指定端口接收到的報文的源地址的有效性。
IPv6 SAVI技術原理
CPS對于客戶端是透明的,在客戶端沒有任何變化,也沒有新增任何協議,所涉及的內容都是根據已有的協議操作流程,在接入設備上建立綁定關系,這種綁定關系一般都是臨時的,有生存期,也有一些事件可以觸發接入設備解除具體的綁定關系。
CPS綁定關系的建立是以重復地址檢測為基礎的( ipv4的gratuitous ARP報文,ipv6的DAD NS報文),如果主機使用沒有進行重復檢測的地址作為源地址來發送報文,則接入設備應將該報文作為欺騙報文來處理。接入設備根據客戶端發出重復地址檢測報文后在一定時間內沒有收到應答報文而在接入端建立基于源地址的綁定關系,綁定關系建立后,從相應的端口收到的數據報文,根據其源地址是否在端口綁定關系表中有匹配來確定報文是否合法,從而對合法報文正常轉發,非法報文則丟棄。
IPv6 SAVI技術草案中關于IPv4的主機合法接入主要包括了ARP snooping與DHCP snooping兩部分的內容;關于IPv6的主機合法接入主要包括了NDP snooping與DHCPv6 snooping兩部分的內容,下面分別介紹。
NDP Snooping 功能
NDP snooping利用Control Packet Snooping(CPS)機制,通過源IPv6地址和錨信息綁定的方式,對端口接入報文進行合法性檢測,放行匹配綁定的報文,丟棄不匹配的報文,以達到對直連鏈路節點準入控制的目的。
全局啟用NDP snooping功能,交換機所有端口上均可建立NDP snooping綁定,但不下硬件表項(即準入控制表項)。
端口上啟用NDP snooping功能時,該端口上初始化拒絕所有ipv6報文(除了源地址為本地鏈路地址的IPv6報文和NS/NA報文)。當該端口上根據DAD NS報文建立一個狀態為SAC_BOUND的NDP snooping綁定時,則下發一個(IPv6 address,MAC,Port Name,VLAN ID)四元組的準入控制表項,允許符合規則的IPv6報文通過。
關閉端口的NDP snooping功能時,不刪除上層綁定表項,只刪除下發的準入控制表項;關閉全局的NDP snooping功能時,刪除所有的上層綁定表項,同時刪除下發的所有準入控制表項。
DHCPv6 Snooping 功能
在用戶不需要認證和使用DHCPv6方式獲取IPv6地址的環境之下,可以獨立使用DHCPv6 SNOOPING在交換機上綁定用戶,用戶的(ipv6 address, mac, port)綁定信息可以是通過DHCPv6 SNOOPING在用戶動態獲取地址的過程中獲得。接入主機獲取動態地址之前只能訪問DHCP SERVER和使用本地鏈路地址fe80::/10訪問本地資源;獲取動態全球單播地址之后可以訪問所有資源。在這種模式下,接入交換機能夠嚴格控制接入主機的報文,只有完全匹配IPv6 address、MAC、PORT的IPv6報文和本地鏈路報文才允許轉發,可以對用戶的源地址進行性有效控制,禁止用戶私自配置地址而訪問網絡。以上介紹IPv6 SAVI技術。