19、VRF
VRF基本概念
VRF(Virtual Routing and Rorwarding,虚拟路由转发)技术通过在一台三层转发设备上创建多张路由表实现数据或业务的隔离,常用于APLS VPN、防火墙等一些需要实现隔离的应用场景。
应用场景:
VRF又称VPN实例(VPNInstance),是一种虚拟化技术。在物理设备上创建多个VPN实例,每个VPN实例拥有独立的接口、路由表和路由协议进程等。
VRF是对物理设备的一个逻辑划分,每个逻辑单元都被称为一个VPN实例,实例之间在路由层面是隔离的。VRF实现过程如下:
- 创建实例,并将三层接口(可以是路由器的物理接口或者子接口,也可以是VLANIF:接口)绑定到实例;
- (可选)配置与实例绑定的路由协议或静态路由;
- 基于与实例绑定的接口和路由协议等建立实例路由表并基于实例路由表转发数据,实现实例间隔离。
缺省时,一个网络设备的所有接口都属于同一个转发实例——设备的根实例。
上图中其实优三张路由表,实例A和B的两张,以及根实例上还有一张。
VRF应用举例
部署VRF后
也可以部署动态路由协议
注意:一个路由进程只能绑定一个实例,但一个实例中可以关联多种路由协议或多个路由进程。
常见应用场景
VRF基本配置命令
1、创建VPN实例/进入VPN实例视图
[Huawei] ip vpn-instance vpn-instance-name
2、使能VPN实例的IPv4类型的路由通告和数据转发功能
[Huawei-vpn-instance-InstanceName] ipv4-family
缺省情况下,未使能VPN实例的IPv4地址族。接口不能与未使能任何地址族的VPN实例绑定。
3、将接口绑定到VPN实例
[Huawei-GigabitEtherneto/0/0] ip binding vpn-instance vpn-instance-name
缺省,接口不与任何VPN实例绑定,属于根实例。
接口与VPN实例绑定、或者取消绑定,都会清除该接口的IP地址、三层特性和IP相关的路由协议。
4、向VPN实例的路由表中添加静态路由
[Huawei] ip route-static vpn-instance vpn-instance-name ip-address {mask | mask-length } {nexthop-address | interface-type interface-number}
5、创建与VPN实例绑定的动态路由协议进程
[Huawei] ospf [process-id | router-id router-id] vpn-instance vpn-instance-name
6、VPN实例维护命令
# 查看VPN实例下的路由表
[Huawei] display ip routing-table vpn-instance vpn-instance-name
# 在指定的VPN实例上执行ping操作
[Huawei] pign -vpn-instance vpn-instance-name host
# 在指定的VPN实例上执行tracert操作
[Huawei] tracert -vpn-instance vpn-instance-name host
如果执行ping时没有待vpn-instance关键字及参数,则默认在根设备上执行ping操作,并且所产生的ICMP报文根据全局路由表进行转发。tracert操作同理。
配置案例
实验要求:通过配置VRF实现,PC1与PC2之间通信时,流量需经过防火墙。
在交换机上创建两个VPN实例A和B,进行配置后,逻辑拓扑如下:
实验步骤:
1、在交换机上创建VPN实例A和B,并激活ipv-4地址族。
[SW1] ip vpn-instance A
[SW1-vpn-instance-A] ipv4-family
2、在交换机上创建vlan10和vlan20,将g/0/0/1口划分到vlan10,g0/0/2口划分到vlan20。
vlan batch 10 20
# 将g0/0/2接口划分到vlan10
interface GigabitEthernet0/0/1
port link-type access
port default vlan 10
3、在交换机上创建vlanif10和20,分别绑定VPN实例A和B,再配置IP地址作为PC机的网关。
# 绑定实例A,并配置IP地址
interface Vlanif10
ip binding vpn-instance A
ip address 10.1.1.254 255.255.255.0
注意:需要先绑定实例,在配置IP,因为绑定实例后会情况IP配置。
4、在交换机上创建vlan 101和vlan102,并设置g0/0/3端口未trunk模式允许101和102通过。
vlan batch 101 102
interface GigabitEthernet0/0/3
port link-type trunk
port trunk allow-pass vlan 10 20 101 to 102
5、在交换机上创建vlanif101和102,分别绑定VPN实例A和B,再配置IP地址。
interface Vlanif101
ip binding vpn-instance A
ip address 101.1.1.1 255.255.255.0
6、在防火墙上创建vlan101和vlan102,并设置g1/0/0端口(不要使用g0/0/0)为trunk模式允许101和102通过。(防火墙密码更改为了Huawei@123)
vlan batch 101 102
# 注意,需要使用portswitch将端口转换为二层模式
interface GigabitEthernet1/0/0
portswitch
port link-type trunk
port trunk allow-pass vlan 101 to 102
7、在防火墙上创建vlnaif101和102,并配置IP地址。
interface Vlanif101
ip address 101.1.1.2 255.255.255.0
8、在防火墙上,将vlanif101和102接口都加入到trust区域中。(因为处于同一个区域,所以不需要配置安全策略,两者也能通信)
firewall zone trust
add interface Vlanif101
add interface Vlanif102
9、静态路由配置。
静态路由看着逻辑拓扑图进行配置,注意不要忘了配置回程路由。
10、测试PC1和PC2的连通性。
思考题
1.B
2.A