
RPF叫做逆向路徑轉(zhuǎn)發(fā),主要用于組播環(huán)境中針對(duì)于組播源對(duì)于組播組地址的所有數(shù)據(jù)做路由檢查。首先組播路由協(xié)議是基于單播路由協(xié)議來(lái)運(yùn)行的,即單播路由協(xié)議是組播路由協(xié)議的底層,而組播路由表在形成時(shí),其目的地址是一個(gè)組播地址,源地址是單播地址,為了保證源到目的的組播數(shù)據(jù)發(fā)送路徑可達(dá)且順暢,所以組播路由器會(huì)默認(rèn)開(kāi)啟RPF功能,去基于單播路由協(xié)議的下一跳反向檢查上游接口是否是可達(dá)且最優(yōu)的路徑,如果是可達(dá)且最優(yōu)的,則直接發(fā)送;如果RPF檢查失敗,則直接丟棄。
URPF叫做單播逆向路徑轉(zhuǎn)發(fā),雖然名字和上述的RPF差不多,但是這項(xiàng)技術(shù)主要用于單播領(lǐng)域,而且是用于網(wǎng)絡(luò)安全的。解釋一下,在互聯(lián)網(wǎng)環(huán)境中,我們最常見(jiàn)的網(wǎng)絡(luò)攻擊模式就是拒絕服務(wù)攻擊,即DOS。這種攻擊的主要模式就是通過(guò)大量的肉雞在同一時(shí)間內(nèi)訪問(wèn)某個(gè)服務(wù)器的固定服務(wù),導(dǎo)致服務(wù)器疲于處理大量流量,最終崩潰。既然是攻擊,就自然是數(shù)據(jù)發(fā)送,只要發(fā)送數(shù)據(jù),就可以溯源。舉個(gè)例子,黑客、服務(wù)器、普通用戶三臺(tái)終端通過(guò)公網(wǎng)互聯(lián),黑客希望攻擊服務(wù)器,但是不想讓服務(wù)器通過(guò)源地址發(fā)現(xiàn)自己,此時(shí),黑客可以通過(guò)IP地址欺騙來(lái)形成攻擊,即黑客向服務(wù)器發(fā)送大量的ICMP數(shù)據(jù)包,此時(shí)源地址應(yīng)該黑客的終端IP,但是,它在發(fā)送數(shù)據(jù)包的時(shí)候?qū)⒃吹刂纷兂闪似胀ㄓ脩舻腎P地址,那么服務(wù)器就會(huì)認(rèn)為是普通用戶給我發(fā)送的數(shù)據(jù),說(shuō)白了,就是黑客甩鍋給普通用戶了!
如何解決呢?在公網(wǎng)路由器上開(kāi)啟URPF功能,開(kāi)啟之后,它會(huì)檢測(cè)任何需要通過(guò)本設(shè)備發(fā)送的數(shù)據(jù),去溯源,如果數(shù)據(jù)源地址和設(shè)備中的轉(zhuǎn)發(fā)表的下一跳一致,則正常轉(zhuǎn)發(fā);如果不一致,則直接丟棄!當(dāng)前所有PE設(shè)備都會(huì)開(kāi)啟URPF,從而實(shí)現(xiàn)了部分網(wǎng)絡(luò)安全。
小伙伴們?nèi)绻€想了解更多學(xué)習(xí)內(nèi)容,歡迎加群一起學(xué)習(xí)~
