Ospf Sham-link 配置

来源:互联网 发布:矩阵的最大奇异值 编辑:程序博客网 时间:2024/06/08 02:05

1 R4与R5之间多添加一条属于area1 的链路,为了在mpls 骨干区域链路中断时,R1和R3之间可以通过下面的

ospf 链路互访(R1与R3之间建立sham-link,可以通过配置sham-link 11.1.1.1 33.1.1.1 cost 20 的 cost 值使路由选择不同的路径走),此实验配置sham-link 区域为 area1 。

若把ospf的所有的区域配置成area 0 ,则sham-link 更直接,操作起来更简单。



OSPF伪连接(Sham link)是MPLS VPN骨干网上两个PE之间的点到点链路,这些链路使用借用(Unnumbered)的地址。

通常情况下,BGP对等体之间通过BGP扩展团体属性在MPLS VPN骨干网上承载路由信息。另一端PE上运行的OSPF可利用这些信息来生成PE到CE的区域间路由。

如图1所示,如果本地CE所在网段和远端CE所在网段间存在一条区域内OSPF链路,则称之为后门链路(Backdoor link)。


这种情况下经过后门链路的路由是区域内路由,其优先级要高于经过MPLS VPN骨干网的区域间路由,这将导致VPN流量总是通过后门路由转发,而不走骨干网。而后门链路一般只用作备份链路。

为了避免上述问题,可以在PE之间建立OSPF伪连接(Sham link),使经过MPLS VPN骨干网的路由也成为OSPF区域内路由,并且被优选。

OSPF伪连接仅应用在属于同一个OSPF区域的两个Site间存在后门链路的情况,如果Site间没有后门链路,则不需要配置OSPF伪连接。

在伪连接两端的PE上进行如下配置。

操作步骤

  1. 配置伪连接的端点地址

    每个VPN实例中必须有一个Sham link的端点地址,它是PE设备上VPN地址空间中的一个有32位掩码的Loopback接口地址。同一个OSPF进程的多条Sham link可以共用端点地址,但不同OSPF进程不能拥有两条端点地址完全相同的Sham link。

    1. 执行命令system-view,进入系统视图。
    2. 执行命令interface loopback interface-number,创建Loopback接口并进入Loopback接口视图。
    3. 执行命令ip binding vpn-instance vpn-instance-name,将Loopback接口绑定到VPN实例。
    4. 执行命令ip address ip-address { mask | mask-length },配置Loopback接口的地址。

       说明:
      此处的Loopback接口IP地址的掩码应为32位,即255.255.255.255。

  2. 发布伪连接的端点地址的路由
    1. 执行命令system-view,进入系统视图。
    2. 执行命令bgp as-number-plain | as-number-dot },进入BGP视图。
    3. 执行命令ipv4-family vpn-instance vpn-instance-name,进入BGP-VPN实例IPv4地址族视图。
    4. 执行命令import-route direct,引入直连路由(将伪连接的端点地址的路由引入BGP)。

      伪连接端点地址被BGP作为VPN-IPv4地址发布。

       说明:

      伪连接端点地址的路由不能通过私网的OSPF进程发布到对端PE上。

      如果伪连接端点地址的路由通过私网的OSPF进程发布到对端PE上,则对端PE将同时存在两条到该伪连接端点地址的路由。其中一条是通过私网OSPF学习到的,另一条是通过MP-BGP学习到的。OSPF路由比BGP路由优先级高,对端PE错误地选择了OSPF路由,所以伪连接无法建立成功。

  3. 创建伪连接
    1. 执行命令system-view,进入系统视图。
    2. 执行命令ospf process-id [ router-id router-id ] vpn-instance vpn-instance-name,进入OSPF视图。
    3. 执行命令area area-id,进入OSPF区域视图。
    4. 执行命令sham-link source-ip-address destination-ip-address [ [ simple [ plain plain-text | [ cipher ] cipher-text ] | { md5 | hmac-md5 | hmac-sha256 } [ key-id { plain plain-text | [ cipher ] cipher-text } ] | authentication-null | keychain keychain-name ] | smart-discover | cost cost | dead dead-interval | hello hello-interval | retransmit retransmit-interval | trans-delay trans-delay-interval ] *,配置伪连接。

      缺省情况下,
      • 伪连接接口开销cost取值为1。

      • 伪连接失效间隔dead-interval为40秒。

      • 伪连接接口上发送Hello报文的间隔hello-interval为10秒。

      • 伪连接接口上重传LSA报文的时间间隔retransmit-interval为5秒。

      • 伪连接接口上延迟发送LSA报文的时间间隔trans-delay-interval为1秒。

      伪连接两端的验证方式必须一致。如果配置支持报文验证,只有通过验证的OSPF报文才能接收,否则将不能正常建立邻居。

      当采用明文验证时(simple),验证字类型缺省为明文(plain);当采用MD5算法或HMAC-MD5算法进行验证时(md5 | hmac-md5),验证字类型缺省为密文(cipher)。

       说明:

      为了使VPN流量通过MPLS骨干网转发,在配置sham-link时,应保证Sham link的cost值小于通过用户网络转发时OSPF路由的cost值。因此,常常需要调整用户网络转发接口的cost值,使它比Sham link的cost值大。

检查配置结果

OSPF伪连接完成配置后,可以查看到CE上的路由表、数据包发送经过的节点和Sham link的建立情况。

  • 在PE上执行命令display ip routing-table vpn-instance vpn-instance-name查看VPN路由表,可发现PE上去往对端CE的路由是通过用户网络的OSPF路由,不是通过骨干网的BGP路由。
  • 在CE上执行命令display ip routing-tabletracert host,可发现CE去往对端的VPN流量将通过骨干网转发。
  • 在PE上执行命令display ospf process-id sham-link [ area area-id ]查看sham-link的建立情况,可发现PE与对端CE的OSPF邻居状态为Full。
  • 在CE上执行命令display ospf routing查看OSPF路由,可发现CE去往对端CE的路由是作为区域内(Intra Area)路由学到的。



原创粉丝点击