VRF

## Virtual Routing Forwarding-н тухай 
**Virtual Routing Forwarding** - VRF нь  нэг рөүтер дээр олон замчлалын мэдээллийг давхцуулахгүй ялган дамжуулах боломжийг олгодог технологи юм. Олон төхөөрөмжийг ямар нэг хуваалт ашиглахгүй ажиллуулах нь сүлжээний замчлал хийх процессийг ихэсгэнэ. Ачааллыг автоматаар тусгаарласан учраас VRF нь сүлжээний аюулгүй байдлыг нэмэгдүүлж шифрлэлтийг таньж хэрэгцээ шаардлагыг багасгах болно. Интэрнетийн үйлчилгээ үзүүлэгч ихэвчлэн харилцагчдадаа тусдаа виртуал хувийн сүлжээ бий болгоход VRF-ын давуу талыг ашигладаг тиймээс энэ технологийг VPN routing болон forwarding гэж нэрлэдэг. Замчлал хийх явц нь бие даасан байдаг учраас адил буюу давхардсан IP хаяг өөр хоорондоо давцахгүйгээр ашиглаж болно. 
 Хамгийн гол онцлог нь VRF нэг рөүтер дээр олон замчлалын хүснэгтийг бий болгох боломжтой юм.

VRF логик рөүтер адил ажилладаг боловч логик рөүтер нь олон замчлалын хүснэгтүүдийг оруулж болох ч VRF тохиолдолд зөвхөн нэг л замчлалын хүснэгтийг хэрэглэнэ.Үүнээс гадна, VRF өгөгдөл пакет бүрийн хувьд дараагийн хопийг заахийг дамжуулалтын хүснэгтээс шаарддаг, мөн пакет дамжуулахын тулд шаардагдах төхөөрөмжүүдийн жагсаалт болон пакет нь хэрхэн дамжуулагдсаныг зохицуулдаг замчлалын протоколуудын багц юм.Энэ хүснэгт нь тодорхой VRF замаас гадна дамжуулагдаж буй урсгалыг урьдчилан шинжлэх мөн VRF зам нээлттэй байх ёстой урсгалыг гаргана.

Хамгийн гол онцлог нь VRF нэг рөүтер доторх олон замчлалын хүснэгтийг бий болгох боломжтой юм.Энэ нь өөр өөр үйлчлүүлэгчдийн IP хаяг ашиглах  явцад давхардаж болох боломжтой гэсэн үг юм.

VLAN-д суурилсан сүлжээ шиг свич хооронд VLAN-г дамжуулахад 802.1q trunk ашигладаг шиг VRF 802.1q trunk загварт суурилсан GRE Tunnel эсвэл MPLS хаягуудыг хамтран ашиглаж өргөтгөх болон шахах боломжийг олгоно. VRF технологи нь олон тооны байршил даяар тархсан бүрэлдэхүүн хэсгүүдийг агуулсан нэг виртуал систем бий болгох боломжийг олгодог.

VRF нь хоёр үндсэн хэсэгтэй.
# route target -VPN-үүдийг заана мөн импортлох болон экспортлох боломжийг өгнө.Тухайн VPN-ны замын мэдээллийг тодорхойлж өгдөг. route target нь 8 байтын урттай дугаарыг ашигладаг.
# route distingusher - Route distingusher-н дугаар нь интернэтийн үйлчилгээ үзүүлэгч талаас VPN үүсгэхэд хаягын давхцал үүсгэхээс сэргийлдэг дугаар байгаа.RD нь 8 байтын дугаартай 2 хэсгээс бүрддэг. 2 байт нь төрлийг нь зааж 6 байт нь утгыг нь заадаг.

VRF-lite янз бүрийн VPN-үүдийн замыг ялгаж оруулахад интерфайсүүдийг ашигладаг мөн VRF тус бүр түвшин 3-н нэг буюу хэд хэдэн интерфайс нь virtual  packet forwarding хүснэгт үүсгэдэг.VRF интерфайсүүд дотор этэрнэт порт шиг физик эсвэл логик VLAN SVI-үүд  байж болох ч түвшин 3-н интерфайс нь ямар ч үед нэгээс илүү VRF-д харъяалагдаж чадахгүй.

Энэ нь хэрэглэгч тутамд олон төрлийн бие даасан замчлалын болон forwarding хүснэгтийг үүсгэж өгдөг юм.

### VRF-Lite төхөөрөмжүүдийн төрөл: 
* Customer Edge (CE)-Хэрэглэгчийн сүлжээний хамгийн захын төхөөрөмж байх ба үйлчилгээ үзүүлэгчийн сүлжээтэй холбож өгнө.
* Provider Edge (PE) - Статик замчлал эсвэл BGP, RIPv1, RIPv2 зэрэг замчлалын протоколыг ашиглан CE төхөөрөмжүүдтэй мэдээлэл дамжуулж рөүтерүүдтэй солилцоно.
* Provider рөүтер нь CE төхөөрөмжүүдтэй холбогдохгүй үйлчилгээ үзүүлэгч сүлжээний рөүтерүүд байна.

### VRF-Lite Хэрэглэгчийн сүлжээнд пакет хэрхэн дамжуулах тухай: 
* СЕ нь VPN-ээс пакет авсан бол энэ нь оролтын интерфайс дээр суурилсан замчлалын хүснэгтэнд харагдана.Нэг зам олдсон бол PE-ээс СЕ руу пакет дамжуулна.
* СЕ-ээс пакет хүлээн авахад РЕ нэвтрэх боломжгүй бол үүнийг VRF орж шалгадаг.
* Нэг зам олдсон үед рөүтер харгалзах MPLS хаягийг нэмж MPLS сүлжээ руу пакетийг илгээнэ.
* Гаралтын PE сүлжээнээс пакетыг хүлээн авахад замчлалын хүснэгт VPN-г зөв тодорхойлохын тулд шошгыг ашигладаг.Гаралтын PE нь энгийн замчлалыг шалгадаг.Нэг зам олдсон бол энэ нь зөв хөрш рүү пакет дамжуулдаг.
* Гаралтын PE нь CE-ээс пакет хүлээн авсан бол энэ нь зөв VPN замчлалын хүснэгтээс харж оролтын интерфайсыг ашиглана.

### VRF-Lite сүлжээний бүрэлдэхүүн хэсэг: 
# **VPN route target community**- VPN community-н бусад бүх гишүүдийн жагсаалт. VPN community-н гишүүн тус бүр VPN route target-г тохируулах хэрэгтэй байдаг.
# **Multiprotocol BGP peering of VPN community PE routers**-VPN community-н бүх гишүүдийн мэдээллийг VRF хүргэж дамжуулдаг. VPN community доторх бүх PE рөүтерүүд нь peering BGP тохиргоог хийх хэрэгтэй.
# **VPN forwarding**-VPN үйлчилгээ үзүүлэгч сүлжээгээр бүх VPN community гишүүдийн хоорондох урсгалыг дамжуулна.

## Хэрэглээ 
### Shared Datacenters 
Datacenter үзүүлэгчид  оролцож буй төхөөрөмжийн тоог багасгахын тулд VRF ашиглаж болно. Жишээ нь: Datacenter (ижил дэд сүлжээнүүд ашиглах) гурван өөр хэрэглэгчдийг байршуулах бол дараа нь гурван өөр рөүтер шаардалагатай байж болох юм.
 VRF ашиглавал зөвхөн нэг л рөүтер ашиглана. 

### ISP (Интернэтийн үйлчилгээ үзүүлэгч) 
ISP-н олон хэрэглэгчийн сайтуудын хоорондох уялдаа холбоог хангах. VRF ашиглах нь олон хэрэглэгчийн хувьд нэг дэд бүтцийг хэрэгжүүлэх боломжтой юм.
 Замчлал тус бүр шинэ шошго нэмнэ.Энэ шошгыг Route Distinguisher гэж нэрлэдэг.

 VRF нь мөн EVN-той хамтран ажиллах боломжийг олгодог.

### **EVN- Easy Virtual Network** 
**Easy virtual Network –** Олон дэд сүлжээний үйлчилгээг тусгаарлаж өгдөг. 
* EVN интерфайс дээр 802.1q encapsulation дэмждэг.
* Энгийн тохиргоонууд болон IPv4/v6 хамтран дэмжиж ажилладаг.
* VNET Tag ашигладаг.Энэ нь  VLAN tag шиг VN-г тодорхойлдог.
* Энэ хаяг нь 2-4094 хүртэл утгыг хэрэглэдэг.
* VNET tag нь бүх рөүтер дээр ижилхэн тодорхойлогдоно. 

## **Тохиргооны хэсэг** 
#### **Дефаулт тохиргоо:** 
* **VRF-**идэвхигүй байдаг**.**
* **Maps-**гадаад,дотоод замыг тодорхойлж өгнө
* **VRF maximum routes-**Байхгүй
* **Forwarding Table-**Глобал замчлалын хүснэгтийн интерфайс дефаултаараа байна.
**Сүлжээндээ VRF тохируулахаас өмнө авч үзэх асуудлууд:**
* VRF-Lite MPLS-VRF бүх үйл ажиллагааг дэмждэггүй:label exchange, LDP adjancency, эсвэл labeled пакет
* Catalyst 4500 series свичийн физик порт дээр VRF тохируулахыг дэмждэг.
* PE болон CE-н хооронд BGP, OSPF,EIGRP,RIP протоколуудыг хэрэглэж болно.
* VRF-Lite IGRP болон ISIS дэмждэггүй.
* VRF-Lite Пакет свичийн үнэлгээг өөрчилж болдоггүй.
* Ижил Layer 3-ийн интерфайс дээр нэг цагт multicast тохируулж чадахгүй.

## VRF-г төхөөрөмж дээр хэрхэн тохируулах тухай 
Жишээ болгон доорх топологийг тохирууллаа.

### Гүйцэтгэсэн топологи 
#### R1 (ISP1) дээр хийсэн тохиргоо: 
 ISP1(config)#**vrf definition Blue**

 ISP1(config-vrf)#v**net tag 10**

 ISP1(config-vrf)#**address-family ipv4**

 `ISP1(config)#`**vrf definition Red**

 `ISP1(config-vrf)#`**vnet tag 20**

 `ISP1(config-vrf)#`**address-family ipv4**

 `ISP1(config)#`**interface GigabitEthernet 1/0**

 `ISP1(config-if)#`**vrf forwarding Blue**

 `ISP1(config-if)#`**ip address 192.168.1.254 255.255.255.0**

 `ISP1(config)#`**interface GigabitEthernet 3/0**

 `ISP1(config-if)#`**vrf forwarding Red**

 `ISP1(config-if)#`**ip address 192.168.2.254 255.255.255.0**

 `ISP1(config)#`**interface GigabitEthernet4/0**

 `ISP1(config-if)#`**vnet trunk**

 `ISP1(config-if)#`**ip address 192.168.56.5 255.255.255.0**

 `ISP1(config)#`**router ospf 1 vrf Blue**

 `ISP1(config-router)#`**network 192.168.1.0 0.0.0.255 area 0**

 `ISP1(config-router)#`**network 192.168.56.0 0.0.0.255 area 0**

 `ISP1(config)#`**router ospf 2 vrf Red**

 `ISP1(config-router)#`**network 192.168.2.0 0.0.0.255 area 0**

 `ISP1(config-router)#`**network 192.168.56.0 0.0.0.255 area 0**

#### R2 (ISP2) дээр хийгдсэн тохиргоо 
 `ISP2(config)#`**vrf definition Blue**

 `ISP2(config-vrf)#`**vnet tag 10**

 `ISP2(config-vrf)#`**address-family ipv4**

 `ISP2(config)#`**vrf definition Red**

 `ISP2(config-vrf)#`**vnet tag 20**

 `ISP2(config-vrf)#`**address-family ipv4**

 `ISP2(config)#`**interface GigabitEthernet 3/0**

 `ISP2(config-if)#`**vrf forwarding Blue**

 `ISP2(config-if)#`**ip address 192.168.3.254 255.255.255.0**

 `ISP2(config)#`**interface GigabitEthernet 4/0**

 `ISP2(config-if)#`**vrf forwarding Red**

 `ISP2(config-if)#`**ip address 192.168.4.254 255.255.255.0**

 `ISP2(config)#`**interface GigabitEthernet2/0**

 `ISP2(config-if)#`**vnet trunk**

 `ISP2(config-if)#`**ip address 192.168.56.6 255.255.255.0**

 `ISP2(config)#`**router ospf 1 vrf Blue**

 `ISP2(config-router)#`**network 192.168.3.0 0.0.0.255 area 0**

 `ISP2(config-router)#`**network 192.168.56.0 0.0.0.255 area 0**

 `ISP2(config)#`**router ospf 2 vrf Red**

 `ISP2(config-router)#`**network 192.168.4.0 0.0.0.255 area 0**

 `ISP2(config-router)#`**network 192.168.56.0 0.0.0.255 area 0**

#### R3 болон R5 дээр хийгдсэн тохиргоо 
 `Blue1(config)#`**interface FastEthernet 1/0**

 `Blue1(config-if)#`**ip address 192.168.1.1 255.255.255.0**

 `Blue2(config)#`**interface FastEthernet 1/0**

 `Blue2(config-if)#`**ip address 192.168.3.3 255.255.255.0**

 `Blue1(config)#`**router ospf 1** 

 `Blue1(config-router)#`**network 192.168.1.0 0.0.0.255 area 0**

 `Blue2(config)#`**router ospf 1**

 `Blue2(config-router)#`**network 192.168.3.0 0.0.0.255 area 0**

#### R4 болон R6 дээр хийгдсэн тохиргоо 
 `Red1(config)#`**interface FastEthernet 2/0**

 `Red1(config-if)#`**ip address 192.168.2.2 255.255.255**

 `Red2(config)#`**interface FastEthernet 1/0**

 `Red2(config-if)#`**ip address 192.168.4.4 255.255.255.0**

 `Red1(config)#`**router ospf 1**

 `Red1(config-router)#`**network 192.168.2.0 0.0.0.255 area 0**

 `Red2(config)#`**router ospf 1** 

 `Red2(config-router)#`**network 192.168.4.0 0.0.0.255 area 0**

## Асуудал шийдвэрлэх хэсэг 
Тохируулах явцад гарах алдааг шалгах командуудаас дурьдвал. 
 1. show ip protocols VRF *vrf name*
Энэ хэсэгт VRF тохируулсан рөүтер ямар замчлалын протокол ашиглаж байгаа ямар ямар сүлжээг бүртгэсэн мөн AD-н утгыг  харж болно.*Тэмдэглэгээ:*  VRF тохируулсан хэрэглэгчийн замчлалд буруу сүлжээ бүртгэсэн байвал энэ хэсгийг харна.
 2. show ip route vrf *vrf name* *dynamic route protocols*
Энэ хэсэгт VRF-н замчлалын хүснэгтийг харж болно.VRF тохируулахад өгсөн нэр нь зөв эсэх зөв замчлалын мэдээ орж ирсэн эсэхийг эндээс харж болно.*Тэмдэглэгээ:* VRF  дээр тохируулсан замчлалын протоколын замын мэдээлэл буруу байвад энэ командыг ашиглана.
 3. show ip vrf brief
Энэ хэсэгт VRF идэвхитэй байгаа интерфайсүүдийг харуулж байна. Энэ хэсэгт тохируулсан VRF-ийн интерфайс нь зөв байна уу тодорхойлсон нэртэйгээ таарж байгаа эсэхийг харж болно.Тэмдэглэгээ: Энэ хэсэгт таны тохируулсан интерфайсүүд алдаатай байвал энэ командаар харна.
 4. show ip vrf details *vrf name*
Энэ хэсэгт VRF тохируулсан рөүтерийн аль интерфайсд харгалзахыг харуулж байна.Тэмдэглэгээ: Энэ хэсэгт таны тохируулсан интерфайсүүд алдаатай байвал энэ командаар харна.
 5. show ip vrf interfaces *vrf name*
Энэ хэсэгт VRF тохируулсан интерфайс бүр дээрх хаяг болон VRF-н нэр харагдаж байна**.**Тэмдэглэгээ: Хэрвээ таны тохируулж өгсөн интерфайсын хаяг буруу байвал энэ командаар харж болно.

## Ашигласан материал 
Ангилал:Сүлжээний техник
Ангилал:Компьютерын сүлжээнүүд