介紹
為什么需要 VRF 以及 VRF 主要解決了那些問題
對於多租戶的場景下,通常使用 T1 來區分不同租戶,該T1上聯到同一個T0,可以在T1上做網關防火牆控制租戶南北向流量,可以通過在T1上配置SNAT實現租戶內業務訪問外網,在T1上配置DNAT實現業務需要擁有固定的外網訪問IP,使用分布式防火牆來控制東西向流量,不同租戶間IP地址也可以重復,因為T1只宣告 NAT IP 地址到T0.這樣的設計也是 VMware 推薦的做法,但是這樣做有以下幾個問題需要考慮
- 多 POD 場景下的業務互聯 (無論是通過L2橋接或者在T1上創建CSP的方式 都需要管理員在T1上創建靜態路由)
- 業務虛擬機通常還需要POD下的公共服務 (PAAS SAAS) 這種場景下似乎通過維護靜態路由的方式還算可行 因為公共服務的地址段基本固定的。
以上兩個場景都設計到租戶內業務需要與其它節點互聯,互聯的數量一旦過大 通過靜態手工維護的方式 那就太LOW了,如果你說那可以為每個租戶創建一個T0(T0之間是可以跑動態路由協議的呢) 一個 T1完全可以解決上面的問題,那我要手動為你點贊了,可是這樣的話有會帶來另外一個問題,T0的上聯口需要綁定Edge 而且每個Edge只能綁定到一個T0的上聯口,多個租戶的情況下 那得多少台Edge服務器啊。
所以有沒有一種方式 既有T0的特性能夠創建動態路由協議,而且又能公用Edge創建上聯端口的邏輯路由器實例呢?
答案就是: VRF
什么是VRF?
簡單總結就是: VRF是運行在T0路由器上的實例,通常會繼承T0的一些配置(主要是 Edge群集,BGP AS Number)此外還可以獨立配置其它參數(主要Uplink IP, BGP鄰居),一個T0上的VRF實例是通過配置Uplink IP在不同的VLAN來進行隔離的。