David's profile过山车PhotosBlogLists Tools Help

Blog


    August 17

    Cisco跨域三层VPN OptionB配置指导 - 网络的感觉 go home - 51CTO技术博客-领先的IT技术博客

     

    Cisco跨域三层VPN OptionB配置指导

    1 跨域VPN需求产生的背景

    随着MPLS VPN解决方案的流行,网络的规模也在不断增长,在运营商的不同城域网之间,或是同骨干网之间都存在着非常现实的跨越不同自治域问题,这些都需要一个不同于自治系统内MPLS VPN体系结构,即跨域的MPLS VPN,为了支持服务提供商之间的VPN路由选择信息交换,需要一个新的机制,以便可以穿过提供商间的链路来广播路由前缀和标签信息,跨域VPN的出现正是解决这个问题的。

    目前跨域VPN的技术方案主要有三种:

    1)VRF-TO-VRF(背靠背方式) option A

    2)MP-EBGP (单跳的MP-EBGP方式) option B

    3)MULTIHOP-EBGP(多跳的MP-EBGP方式) option C

    我在这篇文章中首先讲述OptionB的跨域VPN方案,即单跳的MP-EBGP方式,其他两种方式在后续的时间也会发布在我的blog中。

    2 OptionB方式跨域VPN描述

    如上图,整个网络中存在3个AS,AS号分别为200、300和400,其中AS200和AS400之间的VPN有互通需求。

    在这个网络中R2、R3和R4为3个AS的ASBR,那么我们在ASBR之间运行MP-EBGP协议,MP-EBGP将自己AS内的所有的VPN信息传递给另外一个AS,传递的是私网路由和标签信息,由于MP-EBGP在传递路由时,是要改变路由的下一跳,根据标签分配的原则,当一个FEC的下一跳被改变时,必须在本地更换标签,因此ASBR在收到AS内的VPN路由信息,再向外发布时,必须给这些VPN路由信息重新分配标签,VPN路由信息伴随着新的标签被发布出去,而在ASBR本地,新旧标签形成一个标签的交换操作,这也是BGPnext-hop-self的来历之一。

    对端的ASBR收到从MP-EBGP来的VPN路由信息后,在本地保存,在继续向自己AS内的PE设备扩散,当这个ASBR向域内的MP-IBGP邻居发布路由时,它可以选择不改变路由的下一跳,或是将路由的下一跳改为自己,如果改变了路由的下一跳,同上面的标签分配原则,也需要为这些VPN路由重新分配标签,在本地形成标签的交换操作。

    3 VPN路由信息扩散的关键点

    改变下一跳

    本文的跨域VPN采用的是改变下一跳的设计,即ASBR在于IBGP对等体建立邻居时,将下一跳指向自己,也就是说ASBR向IBGP邻居发送VPN路由时,会改变VPN路由的下一跳指向ASBR,这样的话在ASBR之间不需要运行额外的如LDP之类的信令协议,由MBGP触发标签即可。反之,如果不改变下一跳,那么在ASBR之间是需要运行LDP之类的信令协议的,个人认为这样做虽然可以实现跨域VPN的互通,但是不是很标准,所以在本文中均是采用改变下一跳的设计来发布VPN路由信息的。

    VPN路由信息的过滤

    报文转发时,需要ASBR都要对VPN的LSP做一次交换。还有一个问题需要注意的是,这种解决方案需要在ASBR上接收本AS内和AS外传过来的所有VPN路由,然后在把VPN给扩散出去,但是MPLS VPN的特性结构中要求,只有一个PE上有VPN匹配一条VPN路由时,这条VPN路由才会被保存下来,因此对于上述ASBR上需要保存VPN路由的需求必须做特殊的配置(因为ASBR上可能根本就没有配置VPN),让ASBR把收到的VPN路由全部的保存下来,而不管,本地是否有和它匹配的VPN。这样的目的可以通过关闭BGP默认的route-target过滤来实现,也可以配置专门的策略来实现对VPN路由信息的控制。为了省事起见,我这里采用直接关闭BGP默认的route-target过滤来实现。

    由于这种方案需要在ASBR上保存所有的VPN路由,因此这本身就是对路由器提出了很高的要求,使ASBR更容易成为故障点。不过只要VPN的路由数量不是很多,这种方案不失为一种配置简单且实用的方案。

    4 数据设计

    由于一般的跨域VPN配置示例都是两个AS,这里我故意调整成了三个AS,其实也没什么变化,就是多配置一些EBGP邻居而已。

    Loopback地址:202.1.1.X/32,X=1、2、3、4、5、6,即路由器序号;

    接口地址:80.X.Y.Z/24,X/Y=路由器序号,Z=1、2,路由器序号小的为1,大的为2;

    IGP:PE-P-PE之间部署OSPF和LDP,ASBR之间不起用任何IGP,只建立MEBGP邻居;

    AS:R1和R2AS号为200,R3的AS号为300,R4和R6的AS号为400;

    Vrf:R1上配置两个vrf

    Vrf20 RD=100:20 RT=100:20 路由为10.0.30.0/24

    Vrf30 RD=100:30 RT=100:30 路由为10.0.30.0/24

    配置为不同vpn相同的路由是客观验证一下vpn路由地址重叠的情况。

    R6上配置两个vrf

    Vrf20 RD=100:20 RT=100:20 路由为60.0.20.0/24

    Vrf30 RD=100:30 RT=100:30 路由为60.0.30.0/24

    验证:从R6上ping R1上的vrf地址,在R4-R5之间的链路上抓包。

    分析报文的标签嵌套情况,正常情况应该是:

    R1-R6方向的报文应该是两层标签,

    R6-R1方向的报文应该是一层标签。

    5 详细配置

    为了节约版本,只罗列出6台路由器的相关配置,其他无关配置均不贴出来。

    [R1]

    R1#

    R1#show run

    !

    version 12.4

    !

    hostname R1

    !

    ip cef

    !

    !

    ip vrf vrf10

    rd 100:10

    route-target export 100:10

    route-target import 100:10

    !

    ip vrf vrf20

    rd 100:20

    route-target export 100:20

    route-target import 100:20

    !

    ip vrf vrf30

    rd 100:30

    route-target export 100:30

    route-target import 100:30

    !

    interface Loopback0

    ip address 202.1.1.1 255.255.255.255

    !

    interface Ethernet4/0

    ip address 80.1.2.1 255.255.255.0

    duplex full

    mpls ip

    !

    interface Ethernet4/6

    ip vrf forwarding vrf20

    ip address 10.0.30.1 255.255.255.0

    duplex half

    !

    interface Ethernet4/7

    ip vrf forwarding vrf30

    ip address 10.0.30.1 255.255.255.0

    duplex half

    !

    router ospf 1

    log-adjacency-changes

    network 80.1.2.0 0.0.0.255 area 0

    network 202.1.1.1 0.0.0.0 area 0

    !

    router bgp 200

    no synchronization

    bgp log-neighbor-changes

    neighbor 202.1.1.2 remote-as 200

    neighbor 202.1.1.2 update-source Loopback0

    no auto-summary

    !

    address-family vpnv4

    neighbor 202.1.1.2 activate

    neighbor 202.1.1.2 send-community extended

    exit-address-family

    !

    address-family ipv4 vrf vrf30

    redistribute connected

    no synchronization

    exit-address-family

    !

    address-family ipv4 vrf vrf20

    redistribute connected

    no synchronization

    exit-address-family

    !

    address-family ipv4 vrf vrf10

    no synchronization

    exit-address-family

    !

    end

    [R2]

    R2#show run

    !

    version 12.4

    !

    hostname R2

    !

    ip cef

    !

    interface Loopback0

    ip address 202.1.1.2 255.255.255.255

    !

    interface Ethernet4/0

    ip address 80.1.2.2 255.255.255.0

    duplex full

    mpls ip

    !

    interface Ethernet4/1

    ip address 80.2.3.1 255.255.255.0

    duplex full

    !

    router ospf 1

    log-adjacency-changes

    network 80.1.2.0 0.0.0.255 area 0

    network 202.1.1.2 0.0.0.0 area 0

    !

    router bgp 200

    no synchronization

    no bgp default route-target filter

    bgp log-neighbor-changes

    neighbor 80.2.3.2 remote-as 300

    neighbor 202.1.1.1 remote-as 200

    neighbor 202.1.1.1 update-source Loopback0

    no auto-summary

    !

    address-family vpnv4

    neighbor 80.2.3.2 activate

    neighbor 80.2.3.2 send-community extended

    neighbor 202.1.1.1 activate

    neighbor 202.1.1.1 send-community extended

    neighbor 202.1.1.1 next-hop-self

    exit-address-family

    !

    end

    [R3]

    R3#show run

    !

    version 12.4

    !

    hostname R3

    !

    ip cef

    !

    no mpls ip

    !

    interface Loopback0

    ip address 202.1.1.3 255.255.255.255

    !

    interface Ethernet4/1

    ip address 80.2.3.2 255.255.255.0

    duplex full

    !

    interface Ethernet4/2

    ip address 80.3.4.1 255.255.255.0

    duplex half

    !

    router bgp 300

    no synchronization

    no bgp default route-target filter

    bgp log-neighbor-changes

    neighbor 80.2.3.1 remote-as 200

    neighbor 80.3.4.2 remote-as 400

    no auto-summary

    !

    address-family vpnv4

    neighbor 80.2.3.1 activate

    neighbor 80.2.3.1 send-community extended

    neighbor 80.3.4.2 activate

    neighbor 80.3.4.2 send-community extended

    exit-address-family

    !

    end

    [R4]

    R4#show run

    !

    version 12.4

    !

    hostname R4

    !

    ip cef

    !

    interface Loopback0

    ip address 202.1.1.4 255.255.255.255

    !

    interface Ethernet4/2

    ip address 80.3.4.2 255.255.255.0

    duplex half

    !

    interface Ethernet4/3

    ip address 80.4.5.1 255.255.255.0

    duplex half

    mpls ip

    !

    router ospf 1

    log-adjacency-changes

    network 80.3.4.0 0.0.0.255 area 0

    network 80.4.5.0 0.0.0.255 area 0

    network 202.1.1.4 0.0.0.0 area 0

    !

    router bgp 400

    no synchronization

    no bgp default route-target filter

    bgp log-neighbor-changes

    neighbor 80.3.4.1 remote-as 300

    neighbor 202.1.1.6 remote-as 400

    neighbor 202.1.1.6 update-source Loopback0

    no auto-summary

    !

    address-family vpnv4

    neighbor 80.3.4.1 activate

    neighbor 80.3.4.1 send-community extended

    neighbor 202.1.1.6 activate

    neighbor 202.1.1.6 send-community extended

    neighbor 202.1.1.6 next-hop-self

    exit-address-family

    !

    end

    [R5]

    R5#show run

    !

    version 12.4

    !

    hostname R5

    !

    ip cef

    !

    interface Loopback0

    ip address 202.1.1.5 255.255.255.255

    !

    interface Ethernet4/0

    ip address 80.5.6.1 255.255.255.0

    duplex half

    mpls ip

    !

    interface Ethernet4/3

    ip address 80.4.5.2 255.255.255.0

    duplex half

    mpls ip

    !

    router ospf 1

    log-adjacency-changes

    network 80.4.5.0 0.0.0.255 area 0

    network 80.5.6.0 0.0.0.255 area 0

    network 202.1.1.5 0.0.0.0 area 0

    !

    end

    [R6]

    R6#show run

    !

    version 12.4

    !

    hostname R6

    !

    ip cef

    !

    ip vrf vrf10

    rd 100:10

    route-target export 100:10

    route-target import 100:10

    !

    ip vrf vrf20

    rd 100:20

    route-target export 100:20

    route-target import 100:20

    !

    ip vrf vrf30

    rd 100:30

    route-target export 100:30

    route-target import 100:30

    !

    interface Loopback0

    ip address 202.1.1.6 255.255.255.255

    !

    interface Ethernet4/0

    ip address 80.5.6.2 255.255.255.0

    duplex half

    mpls ip

    !

    interface Ethernet4/6

    ip vrf forwarding vrf20

    ip address 60.0.20.1 255.255.255.0

    duplex half

    !

    interface Ethernet4/7

    ip vrf forwarding vrf30

    ip address 60.0.30.1 255.255.255.0

    duplex half

    !

    router ospf 1

    log-adjacency-changes

    network 80.5.6.0 0.0.0.255 area 0

    network 202.1.1.6 0.0.0.0 area 0

    !

    router bgp 400

    no synchronization

    bgp log-neighbor-changes

    neighbor 202.1.1.4 remote-as 400

    neighbor 202.1.1.4 update-source Loopback0

    no auto-summary

    !

    address-family vpnv4

    neighbor 202.1.1.4 activate

    neighbor 202.1.1.4 send-community extended

    exit-address-family

    !

    address-family ipv4 vrf vrf30

    redistribute connected

    no synchronization

    exit-address-family

    !

    address-family ipv4 vrf vrf20

    redistribute connected

    no synchronization

    exit-address-family

    !

    address-family ipv4 vrf vrf10

    redistribute connected

    no synchronization

    exit-address-family

    !

    end

    6 调试信息

    查看各个BGP邻居上的私网路由和标签信息

    [R1]

    R1#show bgp vpnv4 uni all

    BGP table version is 15, local router ID is 202.1.1.1

    Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,

    r RIB-failure, S Stale

    Origin codes: i - IGP, e - EGP, ? - incomplete

    NetworkNext Hop Metric LocPrf Weight Path

    Route Distinguisher: 100:20 (default for vrf vrf20)

    *> 10.0.30.0/24 0.0.0.0 0 32768 ?

    *>i60.0.20.0/24 202.1.1.2 0 100 0 300 400 ?

    Route Distinguisher: 100:30 (default for vrf vrf30)

    *> 10.0.30.0/24 0.0.0.0 0 32768 ?

    *>i60.0.30.0/24 202.1.1.2 0 100 0 300 400 ?

    R1#show bgp vpnv4 uni all labels

    NetworkNext Hop In label/Out label

    Route Distinguisher: 100:20 (vrf20)

    10.0.30.0/24 0.0.0.0 17/aggregate(vrf20)

    60.0.20.0/24 202.1.1.2 nolabel/23

    Route Distinguisher: 100:30 (vrf30)

    10.0.30.0/24 0.0.0.0 18/aggregate(vrf30)

    60.0.30.0/24 202.1.1.2 nolabel/22

    [R2]

    R2#show bgp vpnv4 uni all

    BGP table version is 9, local router ID is 202.1.1.2

    Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,

    r RIB-failure, S Stale

    Origin codes: i - IGP, e - EGP, ? - incomplete

    NetworkNext Hop Metric LocPrf Weight Path

    Route Distinguisher: 100:20

    *>i10.0.30.0/24 202.1.1.1 0 100 0 ?

    *> 60.0.20.0/24 80.2.3.2 0 300 400 ?

    Route Distinguisher: 100:30

    *>i10.0.30.0/24 202.1.1.1 0 100 0 ?

    *> 60.0.30.0/24 80.2.3.2 0 300 400 ?

    R2#show bgp vpnv4 uni all labels

    NetworkNext Hop In label/Out label

    Route Distinguisher: 100:20

    10.0.30.0/24 202.1.1.1 18/17

    60.0.20.0/24 80.2.3.2 23/20

    Route Distinguisher: 100:30

    10.0.30.0/24 202.1.1.1 19/18

    60.0.30.0/24 80.2.3.2 22/21

    [R3]

    R3#show bgp vpnv4 uni all

    BGP table version is 5, local router ID is 202.1.1.3

    Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,

    r RIB-failure, S Stale

    Origin codes: i - IGP, e - EGP, ? - incomplete

    NetworkNext Hop Metric LocPrf Weight Path

    Route Distinguisher: 100:20

    *> 10.0.30.0/24 80.2.3.1 0 200 ?

    *> 60.0.20.0/24 80.3.4.2 0 400 ?

    Route Distinguisher: 100:30

    *> 10.0.30.0/24 80.2.3.1 0 200 ?

    *> 60.0.30.0/24 80.3.4.2 0 400 ?

    R3#show bgp vpnv4 uni all labels

    NetworkNext Hop In label/Out label

    Route Distinguisher: 100:20

    10.0.30.0/24 80.2.3.1 19/18

    60.0.20.0/24 80.3.4.2 20/22

    Route Distinguisher: 100:30

    10.0.30.0/24 80.2.3.1 18/19

    60.0.30.0/24 80.3.4.2 21/23

    [R4]

    R4#show bgp vpnv4 uni all

    BGP table version is 9, local router ID is 202.1.1.4

    Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,

    r RIB-failure, S Stale

    Origin codes: i - IGP, e - EGP, ? - incomplete

    NetworkNext Hop Metric LocPrf Weight Path

    Route Distinguisher: 100:20

    *> 10.0.30.0/24 80.3.4.1 0 300 200 ?

    *>i60.0.20.0/24 202.1.1.6 0 100 0 ?

    Route Distinguisher: 100:30

    *> 10.0.30.0/24 80.3.4.1 0 300 200 ?

    *>i60.0.30.0/24 202.1.1.6 0 100 0 ?

    R4#show bgp vpnv4 uni all labels

    NetworkNext Hop In label/Out label

    Route Distinguisher: 100:20

    10.0.30.0/24 80.3.4.1 25/19

    60.0.20.0/24 202.1.1.6 22/20

    Route Distinguisher: 100:30

    10.0.30.0/24 80.3.4.1 24/18

    60.0.30.0/24 202.1.1.6 23/21

    [R6]

    R6#show bgp vpnv4 uni all

    BGP table version is 15, local router ID is 202.1.1.6

    Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,

    r RIB-failure, S Stale

    Origin codes: i - IGP, e - EGP, ? - incomplete

    NetworkNext Hop Metric LocPrf Weight Path

    Route Distinguisher: 100:20 (default for vrf vrf20)

    *>i10.0.30.0/24 202.1.1.4 0 100 0 300 200 ?

    *> 60.0.20.0/24 0.0.0.0 0 32768 ?

    Route Distinguisher: 100:30 (default for vrf vrf30)

    *>i10.0.30.0/24 202.1.1.4 0 100 0 300 200 ?

    *> 60.0.30.0/24 0.0.0.0 0 32768 ?

    R6#show bgp vpnv4 uni all labels

    NetworkNext Hop In label/Out label

    Route Distinguisher: 100:20 (vrf20)

    10.0.30.0/24 202.1.1.4 nolabel/25

    60.0.20.0/24 0.0.0.0 20/aggregate(vrf20)

    Route Distinguisher: 100:30 (vrf30)

    10.0.30.0/24 202.1.1.4 nolabel/24

    60.0.30.0/24 0.0.0.0 21/aggregate(vrf30)

    从上面的标签信息可以明显的看出MBGP的VPN路由触发的标签情况,即在跨域的时候报文中是靠这些标签指导转发的,也从侧面印证了前文中[改变下一跳]中所描述的VPN路由触发标签分配的情况。

    查看实际的mpls标签转发表

    [R1]

    R1#show mpls forwarding-table

    Local Outgoing Prefix Bytes tag Outgoing Next Hop

    tag tag or VC or Tunnel Id switched interface

    16 Pop tag 202.1.1.2/32 0Et4/0 80.1.2.2

    17 Aggregate 10.0.30.0/24[V] 0

    18 Aggregate 10.0.30.0/24[V] 0

    [R2]

    R2#show mpls forwarding-table

    Local Outgoing Prefix Bytes tag Outgoing Next Hop

    tag tag or VC or Tunnel Id switched interface

    16 Pop tag 202.1.1.1/32 0Et4/0 80.1.2.1

    17 Pop tag 80.2.3.2/32 0Et4/1 80.2.3.2

    18 17 100:20:10.0.30.0/24 \ 0Et4/0 80.1.2.1

    19 18 100:30:10.0.30.0/24 \ 0Et4/0 80.1.2.1

    22 21 100:30:60.0.30.0/24 \ 0Et4/1 80.2.3.2

    23 20 100:20:60.0.20.0/24 \ 0Et4/1 80.2.3.2

    [R3]

    R3#show mpls forwarding-table

    Local Outgoing Prefix Bytes tag Outgoing Next Hop

    tag tag or VC or Tunnel Id switched interface

    16 Pop tag 80.2.3.1/32 0Et4/1 80.2.3.1

    17 Pop tag 80.3.4.2/32 0Et4/2 80.3.4.2

    18 19 100:30:10.0.30.0/24 \ 0Et4/1 80.2.3.1

    19 18 100:20:10.0.30.0/24 \ 0Et4/1 80.2.3.1

    20 22 100:20:60.0.20.0/24 \ 0Et4/2 80.3.4.2

    21 23 100:30:60.0.30.0/24 \ 0Et4/2 80.3.4.2

    [R4]

    R4#show mpls forwarding-table

    Local Outgoing Prefix Bytes tag Outgoing Next Hop

    tag tag or VC or Tunnel Id switched interface

    16 Pop tag 80.3.4.1/32 0Et4/2 80.3.4.1

    17 Pop tag 80.5.6.0/24 0Et4/3 80.4.5.2

    18 Pop tag 202.1.1.5/32 0Et4/3 80.4.5.2

    19 18 202.1.1.6/32 0Et4/3 80.4.5.2

    22 18 100:20:60.0.20.0/24 \ 0Et4/3 80.4.5.2

    23 18 100:30:60.0.30.0/24 \ 0Et4/3 80.4.5.2

    24 18 100:30:10.0.30.0/24 \ 0Et4/2 80.3.4.1

    25 19 100:20:10.0.30.0/24 \ 0Et4/2 80.3.4.1

    [R5]

    R5#show mpls forwarding-table

    Local Outgoing Prefix Bytes tag Outgoing Next Hop

    tag tag or VC or Tunnel Id switched interface

    16 Pop tag 80.3.4.0/24 0Et4/3 80.4.5.1

    17 Pop tag 202.1.1.4/32 73 Et4/3 80.4.5.1

    18 Pop tag 202.1.1.6/32 8236 Et4/0 80.5.6.2

    [R6]

    R6#show mpls forwarding-table

    Local Outgoing Prefix Bytes tag Outgoing Next Hop

    tag tag or VC or Tunnel Id switched interface

    16 Pop tag 80.4.5.0/24 0Et4/0 80.5.6.1

    17 16 80.3.4.0/24 0Et4/0 80.5.6.1

    18 17 202.1.1.4/32 0Et4/0 80.5.6.1

    19 Pop tag 202.1.1.5/32 0Et4/0 80.5.6.1

    20 Aggregate 60.0.20.0/24[V] 0

    21 Aggregate 60.0.30.0/24[V] 0

    从上面的信息我们看出,在ASBR上能够明显的看到VPNV4的路由信息对应的标签转发项。

    公网标签和私网标签

    前面提到从R6上ping R1上的vrf地址,在R4-R5之间的链路上抓包。然后分析报文的标签嵌套情况,正常情况应该是:

    R1-R6方向的报文应该是两层标签,公网标签+私网标签;

    R6-R1方向的报文应该是一层标签,公网标签被弹出,只剩余私网标签。

    可以通过下面的抓包图片进行验证:

    R1-R6方向的两层标签

    R6-R1方向的一层标签

    根据朋友的提醒,在此增加从R6到R1的私网路由trace信息,可以清楚的看到沿途标签信息的变化:

    R6#traceroute vrf vrf30
    Protocol [ip]:   
    Target IP address: 10.0.30.1 
    Source address: 60.0.30.1    
    Numeric display [n]:   
    Resolve AS number in (G)lobal table, (V)RF or(N)one [G]:   
    Timeout in seconds [3]:
    Probe count [3]: 
    Minimum Time to Live [1]:    
    Maximum Time to Live [30]:   
    Port Number [33434]:   
    Loose, Strict, Record, Timestamp, Verbose[none]:
    Type escape sequence to abort.
    Tracing the route to 10.0.30.1

      1 80.5.6.1 [MPLS: Labels 17/21 Exp 0] 180 msec 224 msec 144 msec
      2 80.4.5.1 [MPLS: Label 21 Exp 0] 156 msec 208 msec 192 msec   
      3 80.3.4.1 [MPLS: Label 18 Exp 0] 180 msec 272 msec 236 msec   
      4 80.2.3.1 [MPLS: Label 19 Exp 0] 164 msec 192 msec 364 msec   
      5 10.0.30.1 220 msec 196 msec *

    Cisco跨域三层VPN OptionB配置指导 - 网络的感觉     go home - 51CTO技术博客-领先的IT技术博客

    Cisco跨域三层VPN OptionC配置指导 - 网络的感觉 go home - 51CTO技术博客-领先的IT技术博客

     

    Cisco跨域三层VPN OptionC配置指导

    1 OptionC方式跨域VPN的理解

    之前,我写了一篇OptionB的文档,并提供了相应的配置,对于该文档中相应的内容,我在这里就不再罗嗦了,本文开始对OptionC方式的跨域VPN做分析。

    在OptionB方式中,VPN的路由信息是通过自治系统之间的ASBR来保存和扩散的,当VPN路由比较多的时候,会对ASBR产生巨大的压力;如果经过多个自治系统,每个ASBR上都会维护大量相同的VPN路由,由于这些ASBR一般都承担着公网IP转发的任务,这样对设备的要求就更高了。从另一个方面来看,OptionB方式采用的是一种中继的方式,通过ASBR把VPN路由信息向其他自治系统扩散,这也把这些中间设备强加上必须要支持VPN功能的要求,虽然对于设备而言,这是必须的,但是这样的实现方式个人觉得并不完全符合三层VPN的思想,按照正常的理解,除了接入CE的PE之外,其他设备是不应该看到VPN信息的,这也是OptionC方式所解决的问题。

    OptionC方式的思想就是在跨域的情况下,PE之间仍然可以像域内那样,在PE和PE之间建立直接的MEBGP邻居,交换VPNV4路由信息,这样就不需要中间设备再保存、维护和扩散VPN路由信息。这里需要从两个方面去考虑:信令和转发。在信令层面上,实现跨域MEBGP邻居的建立,并交换VPN路由信息并不是一件困难的事情,只要公网路由可达,建立起邻居,私网的VPN路由信息就可以很轻松的发给对端邻居了。但是,在转发层面上,还有一个最重要的问题需要解决,那就是如何在跨域的情况下建立一条PE到PE的VPN LSP,否则,即便有了VPN路由信息,到了公网部分,根本无法识别数据的私网标签,转发层面上还是不通的。

    这里,需要提到标签IPv4路由,在RFC3107即[Carrying Label Information in BGP-4]中有定义。这里在ASBR之间传递的就不是普通的IP路由信息了,而是携带了标签的公网路由信息,这样,就会在公网上形成一个由BGP触发的公网LSP,在公网上也是靠标签交换就数据传送到目的地,而公网上无法识别的私网标签就可以被封装在内层作为内层标签被转发了。有兴趣的朋友可以看一下RFC3107中所定义的应用场景和具体的update的消息格式,该RFC内容不长,这里不作过多的阐述,下面列举一下普通的update和支持标签IPv4路由信息的update的格式即可。

    普通update消息

    标签ipv4格式的update消息

    2 OptionC方式的数据转发

    仍然沿用跟OptionB方式中大致类似的网络结构,如上图。

    以从R6上的vrf30 ping R1上的vrf30为例,即ping vrf vrf30 10.0.30.1 source 60.0.30.1,从R6àR1方向,IP数据会首先被封装上VPNv4目的路由对应的标签,接着会被封装上标签IPv4路由信息对应的标签,最后才会被封装上LDP标签,其中LDP标签完成LDP域的标签交换,随后通过标签IPv4路由的标签完成EBGP域的标签交换,然后再进入对方自治系统的LDP域,最后通过私网标签完成VPN域的标签交换,达到目的地。也就是说在整个数据传输过程中,最多的时候数据会被封装三层标签,即LDP | EBGP标签 | 私网标签。在上面的拓扑中,能够看到三层标签的位置为R6到R5的出方向,理论上LDP域中都应该是三层标签头,但是由于存在空标签的缘故,有的位置只能显示的看到两层标签。在R5和R6之间抓包如下,可以清楚的看到三层标签:

    在R6上显示各种标签信息,可以明显的看出图中的标签16为LDP标签,标签29为EBGP公网标签,标签18为私网路由标签,显示信息如下:

    私网路由标签

    R6#show bgp vpnv4 unicast all labels

    Network Next Hop In label/Out label

    Route Distinguisher: 100:20 (vrf20)

    10.0.30.0/24 202.1.1.1 nolabel/17

    60.0.20.0/24 0.0.0.0 19/aggregate(vrf20)

    Route Distinguisher: 100:30 (vrf30)

    10.0.30.0/24 202.1.1.1 nolabel/18

    60.0.30.0/24 0.0.0.0 20/aggregate(vrf30)

    公网EBGP标签

    R6#show bgp ipv4 unicast labels

    Network Next Hop In Label/Out Label

    80.1.2.0/24 202.1.1.4 nolabel/25

    80.2.3.0/24 202.1.1.4 nolabel/26

    80.2.3.2/32 202.1.1.4 nolabel/28

    80.5.6.0/24 0.0.0.0 imp-null/nolabel

    202.1.1.1/32 202.1.1.4 nolabel/29

    202.1.1.2/32 202.1.1.4 nolabel/27

    202.1.1.6/32 0.0.0.0 imp-null/nolabel

    LDP标签

    R6#show mpls forwarding-table

    Local Outgoing Prefix Bytes tag Outgoing Next Hop

    tag tag or VC or Tunnel Id switched interface

    16 Pop tag 80.4.5.0/24 0 Et4/0 80.5.6.1

    17 16 202.1.1.4/32 0 Et4/0 80.5.6.1

    18 Pop tag 202.1.1.5/32 0 Et4/0      80.5.6.1

    19 Aggregate 60.0.20.0/24[V] 0

    20 Aggregate 60.0.30.0/24[V] 0

    从上面的显示信息也可以清楚的看出路由的迭代关系与标签之间的关联,即到vrf30 10.0.30.0/24的下一跳为202.1.1.1,到202.1.1.1的下一跳为202.1.1.4,通过路由迭代形成一个三层标签16 | 29 | 18 ,与抓包的数据完全一致。

    3 OptionC方式的关键点

    BGP4的扩展

    通过RFC3107对BGP4进行扩展,使得BGP发布路由信息时可以支持标签IPv4路由信息,所以在配置的时候也要配置支持标签IPv4路由信息的能力,如果不进行配置,那么只是普通的BGP,发布的路由信息也是普通的IPv4路由。

    路由策略的创建:

    在ASBR上应用路由策略,对于从本AS的PE接收的路由,在向对端ASBR发布时,分配MPLS 标签。对于向本AS的PE 发布的路由,如果是带标签的IPv4路由,为其重新分配MPLS 标签。对IPv4 路由分配MPLS标签是通过路由策略控制的,只对满足某些条件的路由分配标签,其它路由还是普通IPv4 路由。缺省情况下,IPv4 路由不带MPLS 标签。

    4 数据设计

    由于一般的跨域VPN配置示例都是两个AS,这里我故意调整成了三个AS,其实也没什么变化,就是多配置一些EBGP邻居而已。

    Loopback地址:202.1.1.X/32,X=1、2、3、4、5、6,即路由器序号;

    接口地址:80.X.Y.Z/24,X/Y=路由器序号,Z=1、2,路由器序号小的为1,大的为2;

    IGP:PE-P-PE之间部署OSPF和LDP,ASBR之间不起用任何IGP,只建立MEBGP邻居;

    AS:R1和R2AS号为200,R3的AS号为300,R4和R6的AS号为400;

    Vrf:R1上配置两个vrf

    Vrf20 RD=100:20 RT=100:20 路由为10.0.30.0/24

    Vrf30 RD=100:30 RT=100:30 路由为10.0.30.0/24

    配置为不同vpn相同的路由是客观验证一下vpn路由地址重叠的情况。

    R6上配置两个vrf

    Vrf20 RD=100:20 RT=100:20 路由为60.0.20.0/24

    Vrf30 RD=100:30 RT=100:30 路由为60.0.30.0/24

    5 详细配置

    为了节约版本,只罗列出6台路由器的相关配置,其他无关配置均不贴出来。具体的配置和显示信息可以参看最后附件中的文档。

    [R1]

    R1#show run

    !

    version 12.4

    !

    hostname R1

    !

    ip cef

    !

    ip vrf vrf10

    rd 100:10

    route-target export 100:10

    route-target import 100:10

    !

    ip vrf vrf20

    rd 100:20

    route-target export 100:20

    route-target import 100:20

    !

    ip vrf vrf30

    rd 100:30

    route-target export 100:30

    route-target import 100:30

    !

    interface Loopback0

    ip address 202.1.1.1 255.255.255.255

    !

    interface Ethernet4/0

    ip address 80.1.2.1 255.255.255.0

    duplex full

    mpls ip

    !

    interface Ethernet4/6

    ip vrf forwarding vrf20

    ip address 10.0.30.1 255.255.255.0

    duplex half

    !

    interface Ethernet4/7

    ip vrf forwarding vrf30

    ip address 10.0.30.1 255.255.255.0

    duplex half

    !

    router ospf 1

    log-adjacency-changes

    network 80.1.2.0 0.0.0.255 area 0

    network 202.1.1.1 0.0.0.0 area 0

    !

    router bgp 200

    bgp log-neighbor-changes

    neighbor 202.1.1.2 remote-as 200

    neighbor 202.1.1.2 update-source Loopback0

    neighbor 202.1.1.6 remote-as 400

    neighbor 202.1.1.6 ebgp-multihop 10

    neighbor 202.1.1.6 update-source Loopback0

    !

    address-family ipv4

    redistribute connected

    neighbor 202.1.1.2 activate

    neighbor 202.1.1.2 send-label

    no neighbor 202.1.1.6 activate

    no auto-summary

    no synchronization

    exit-address-family

    !

    address-family vpnv4

    neighbor 202.1.1.6 activate

    neighbor 202.1.1.6 send-community extended

    exit-address-family

    !

    address-family ipv4 vrf vrf30

    redistribute connected

    no synchronization

    exit-address-family

    !

    address-family ipv4 vrf vrf20

    redistribute connected

    no synchronization

    exit-address-family

    !

    address-family ipv4 vrf vrf10

    no synchronization

    exit-address-family

    !

    end

    [R2]

    R2#show run

    !

    version 12.4

    !

    hostname R2

    !

    ip cef

    !

    interface Loopback0

    ip address 202.1.1.2 255.255.255.255

    !

    interface Ethernet4/0

    ip address 80.1.2.2 255.255.255.0

    duplex full

    mpls ip

    !

    interface Ethernet4/1

    ip address 80.2.3.1 255.255.255.0

    duplex full

    !

    router ospf 1

    log-adjacency-changes

    network 80.1.2.0 0.0.0.255 area 0

    network 202.1.1.2 0.0.0.0 area 0

    !

    router bgp 200

    no synchronization

    no bgp default route-target filter

    bgp log-neighbor-changes

    redistribute connected

    redistribute ospf 1

    neighbor 80.2.3.2 remote-as 300

    neighbor 80.2.3.2 route-map atol out

    neighbor 80.2.3.2 send-label

    neighbor 202.1.1.1 remote-as 200

    neighbor 202.1.1.1 update-source Loopback0

    neighbor 202.1.1.1 next-hop-self

    neighbor 202.1.1.1 route-map ltol out

    neighbor 202.1.1.1 send-label

    no auto-summary

    !

    route-map atol permit 10

    set mpls-label

    !

    route-map ltol permit 10

    match mpls-label

    set mpls-label

    end

    [R3]

    R3#show run

    !

    version 12.4

    !

    hostname R3

    !

    ip cef

    !

    interface Loopback0

    ip address 202.1.1.3 255.255.255.255

    !

    interface Ethernet4/1

    ip address 80.2.3.2 255.255.255.0

    duplex full

    !

    interface Ethernet4/2

    ip address 80.3.4.1 255.255.255.0

    duplex half

    !

    router bgp 300

    no synchronization

    no bgp default route-target filter

    bgp log-neighbor-changes

    neighbor 80.2.3.1 remote-as 200

    neighbor 80.2.3.1 route-map atol out

    neighbor 80.2.3.1 send-label

    neighbor 80.3.4.2 remote-as 400

    neighbor 80.3.4.2 route-map atol out

    neighbor 80.3.4.2 send-label

    no auto-summary

    !

    route-map atol permit 10

    set mpls-label

    !

    end

    [R4]

    R4#show run

    !

    version 12.4

    !

    hostname R4

    !

    ip cef

    !

    interface Loopback0

    ip address 202.1.1.4 255.255.255.255

    !

    interface Ethernet4/2

    ip address 80.3.4.2 255.255.255.0

    duplex half

    !

    interface Ethernet4/3

    ip address 80.4.5.1 255.255.255.0

    duplex half

    mpls ip

    !

    router ospf 1

    log-adjacency-changes

    network 80.4.5.0 0.0.0.255 area 0

    network 202.1.1.4 0.0.0.0 area 0

    !

    router bgp 400

    no synchronization

    no bgp default route-target filter

    bgp log-neighbor-changes

    redistribute connected

    redistribute ospf 1

    neighbor 80.3.4.1 remote-as 300

    neighbor 80.3.4.1 route-map atol out

    neighbor 80.3.4.1 send-label

    neighbor 202.1.1.6 remote-as 400

    neighbor 202.1.1.6 update-source Loopback0

    neighbor 202.1.1.6 next-hop-self

    neighbor 202.1.1.6 route-map ltol out

    neighbor 202.1.1.6 send-label

    no auto-summary

    !

    route-map atol permit 10

    set mpls-label

    !

    route-map ltol permit 10

    match mpls-label

    set mpls-label

    !

    end

    [R5]

    R5#show run

    !

    version 12.4

    !

    hostname R5

    !

    ip cef

    !

    interface Loopback0

    ip address 202.1.1.5 255.255.255.255

    !

    interface Ethernet4/0

    ip address 80.5.6.1 255.255.255.0

    duplex half

    mpls ip

    !

    interface Ethernet4/3

    ip address 80.4.5.2 255.255.255.0

    duplex half

    mpls ip

    !

    router ospf 1

    log-adjacency-changes

    network 80.4.5.0 0.0.0.255 area 0

    network 80.5.6.0 0.0.0.255 area 0

    network 202.1.1.5 0.0.0.0 area 0

    !

    end

    [R6]

    R6#show run

    !

    version 12.4

    !

    hostname R6

    !

    ip cef

    !

    ip vrf vrf10

    rd 100:10

    route-target export 100:10

    route-target import 100:10

    !

    ip vrf vrf20

    rd 100:20

    route-target export 100:20

    route-target import 100:20

    !

    ip vrf vrf30

    rd 100:30

    route-target export 100:30

    route-target import 100:30

    !

    interface Loopback0

    ip address 202.1.1.6 255.255.255.255

    !

    interface FastEthernet0/0

    no ip address

    shutdown

    duplex half

    !

    interface Ethernet4/0

    ip address 80.5.6.2 255.255.255.0

    duplex half

    mpls ip

    !

    interface Ethernet4/6

    ip vrf forwarding vrf20

    ip address 60.0.20.1 255.255.255.0

    duplex half

    !

    interface Ethernet4/7

    ip vrf forwarding vrf30

    ip address 60.0.30.1 255.255.255.0

    duplex half

    !

    router ospf 1

    log-adjacency-changes

    network 80.5.6.0 0.0.0.255 area 0

    network 202.1.1.6 0.0.0.0 area 0

    !

    router bgp 400

    bgp log-neighbor-changes

    neighbor 202.1.1.1 remote-as 200

    neighbor 202.1.1.1 ebgp-multihop 10

    neighbor 202.1.1.1 update-source Loopback0

    neighbor 202.1.1.4 remote-as 400

    neighbor 202.1.1.4 update-source Loopback0

    !

    address-family ipv4

    redistribute connected

    no neighbor 202.1.1.1 activate

    neighbor 202.1.1.4 activate

    neighbor 202.1.1.4 send-label

    no auto-summary

    no synchronization

    exit-address-family

    !

    address-family vpnv4

    neighbor 202.1.1.1 activate

    neighbor 202.1.1.1 send-community extended

    exit-address-family

    !

    address-family ipv4 vrf vrf30

    redistribute connected

    no synchronization

    exit-address-family

    !

    address-family ipv4 vrf vrf20

    redistribute connected

    no synchronization

    exit-address-family

    !

    address-family ipv4 vrf vrf10

    redistribute connected

    no synchronization

    exit-address-family

    !

    end

    根据朋友的提醒,在此增加从R6到R1的私网路由trace信息,可以清楚的看到沿途标签信息的变化:

    R6#traceroute vrf vrf30
    Protocol [ip]:   
    Target IP address: 10.0.30.1 
    Source address: 60.0.30.1    
    Numeric display [n]:   
    Resolve AS number in (G)lobal table, (V)RF or(N)one [G]:   
    Timeout in seconds [3]:
    Probe count [3]: 
    Minimum Time to Live [1]:    
    Maximum Time to Live [30]:   
    Port Number [33434]:   
    Loose, Strict, Record, Timestamp, Verbose[none]:
    Type escape sequence to abort.
    Tracing the route to 10.0.30.1

      1 80.5.6.1 [MPLS: Labels 16/20/18 Exp 0] 300 msec 456 msec 384 msec  
      2 80.4.5.1 [MPLS: Labels 20/18 Exp 0] 320 msec 336 msec 312 msec
      3 80.3.4.1 [MPLS: Labels 24/18 Exp 0] 280 msec 280 msec 328 msec
      4 80.2.3.1 [AS 200] [MPLS: Labels 17/18 Exp 0] 300 msec 264 msec 480 msec  
      5 10.0.30.1 376 msec 388 msec 580 msec   

    Cisco跨域三层VPN OptionC配置指导 - 网络的感觉     go home - 51CTO技术博客-领先的IT技术博客

    October 23

    神话vs功夫:席卷全球的搜索引擎大战

    近年来,搜索引擎市场可谓风起云涌。业界新贵Google的异军突起让分析家们跌破眼镜,而老牌劲旅雅虎的持续走强相信也出乎多数人的意料,近期盘踞软体市场多年的微软公司也试图利用MSN逐步打开搜索引擎市场的大门,并宣称自己的新技术将比其他的竞争者更加精确、直接和迅速。据美国《商业周刊》报道,随着付费搜索业务的发展与成熟,搜索市场上涌现的滚滚财源的确散发出难以抵抗的诱惑。今年全球搜索广告业务销量增幅有望达到40%,这也能解释为何大量风险投资商将大把大把的银子投向了这块曾经不被看好的金矿中。技术领域的权威人士认为,如果现在科技市场上还存在一夜走火的机会,那么毫无疑问这个机会必然来自搜索市场,搜索引擎市场成功的大门还远远没有关闭,Google这样的神话还将再一次上演。搜索引擎市场已成为互联网行业争夺制高点的关键领域.

    面对这种难以抵抗的诱惑,IT领域的各大厂商当然不会按兵不动。3月21日,老牌网路公司美国在线正式发布了自己首款针对旅游信息的搜索引擎服务PinpointTravel.com。而曾经帮助用户进行文件搜索和交流的网站Nextaris.com随后也揭开了自己最新搜索引擎服务的神秘面纱。作为业界传统权威,雅虎在本年度4月份发布一款全新的针对购物的搜索引擎,名为Become.com。更为有趣的是,NBA球队达拉斯小牛队的传奇性老板马克.库班也在不久前亲自投资了一家名为IceRocket.com的搜索引擎网站。慕名而来的竞争对手还远不止这些,澳大利亚一家名为FactBites.com的网站最新发布的一款搜索服务可以帮助学生和学术工作者在互联网上查找相关的文献信息。
    目前来看,搜索将会经历四个阶段:一、门户搜索,门户用专业搜索公司提供的技术为用户提供服务;二、专业的搜索引擎提供专业的搜索入口;三、Toolbar,工具条搜索;四、桌面搜索。但今天的因特网已经成为知识沉淀和分享的最佳平台。它被数字化、被海量存储;被人阅读后、被人理解消化后,人们有新的理解、新的智慧;然后又不断数字化,不断加入进来。直到形成一个由人参与、由信息汇集的人类知识库。而搜索引擎正在这个平台上发挥着这样的作用:整合知识与人的关系,促进着文明的前进,可以想见,与搜索引擎相关的神话定会不断上演。

    各路功夫迷人眼

    由于不同的用户有不同的需求,不同的需求需要不同的搜索引擎。网民们都期待有更多更新更具个性化的搜索引擎出现,最好可以百家齐放。而对于服务商而言,在这个充满个性的时代,搜索引擎只有走差异化道路才可能不会被埋没,甚至胜出比赛。也就是说,最终能否突围而去,取决于各自的真功夫。而目前在擂台站得较稳的都有着自己的与众不同的招数

    如当年,百度放言“百度就是中国的Google”。现在,百度确实凭藉专注于中文搜索的本地化优势,在中文新闻检索上具有很大天时,加之信息量大,内容分类细的搜索,及伺服器稳定赢得用户的青睐,在中国的搜索引擎市场上份额第一。处于中国搜索市场第二位置的雅虎一搜,其搜索模式主要是基于浏览器和基于门户的搜索,雅虎与阿里巴巴合作后,在阿里巴巴核心业务─电子商务基础上,推出电子商务的搜索,这无疑为更多的搜索公司提供了新的方式,搜索与其他行业的合作或许能创造更高的价值。作为搜索引擎的开山鼻祖,强大的搜索演算法是Google市场领先的利器。虽然最初Google的搜索功能比较单一,但凭藉海量的显示搜索结果,赢得了全球大量用户。但是,由于其伺服器不在中国,不少网民也抱怨网页打开速度慢,甚至有时打不开,没有本地搜索也是一大缺陷。但是最近有消息称,google的伺服器将进入中国,且会推出本地搜索。新浪爱问选择为用户提供特色搜索功能作为自身发展之路。新浪推出的爱问搜索引擎是全球首款中文智慧型互动搜索引擎,独创提问的方式。 除了以上几个行业老大和行业新秀,其他的搜索引擎的表现也不俗:中搜则拥有“拼音纠错”功能,对于发音不准的用户可是贴心设计;搜狗的地图搜索功能,像一位贴心,细心的导游,能详尽地搜索出你想要的地方,对于在旅游,出差的人来说真是方便至极。

    在群雄逐鹿的过程中,招式复杂一时胜负难辨,但有一条朴素的真理:即最终生存下来并创造神话的一定是拥有真功夫的那一方。

    中国势成兵家必争之地

    互联网的搜索引擎的诞生彻底颠覆了过去的查找信息,知识的传统方式,在很大程度上解决了信息不对称的问题。现在越来越多的网民加入到使用搜索引擎来查找资料的行列中来

    IResearch的资料显示,2004年使用搜索引擎的互联网用户为8000万,占中国互联网用户的80%,预计2007年随着互联网用户的增长将接近1.9亿。中国的搜索引擎市场2003年达到了5亿元人民币,比2002年一年增长了117%。搜索引擎作为连接互联网的一座桥梁,越来越受到重视,也逐渐成为继广告、短信、游戏后又一收入增长点。IResearch统计资料显示,2004年中国搜索引擎市场规模将达到12.5亿元人民币,年增长率为81%。(chinesenewsnet.com)

    预计截至2007年中国搜索引擎市场规模将达到56.2亿元人民币。 在这种背景下,百度在美国一上市就受到投资者狂热追捧。百度在纳斯达克以66美元开盘价火热登场,一路上飙,最高达到151.2美元,成为美国最近五年多来表现最强劲的一支新股。反映出搜索引擎市场的强烈吸引力。

    曾经默默无闻但却悄然改变人们生活的搜索引擎,作为一种成功网络盈利模式逐渐成为互联网产业一大亮点。尤其随着百度成功上市,阿里巴巴联姻雅虎,搜索引擎市场也称为继邮件、短信和网路游戏后为人争抢的互联网市场第四桶金。

    期待更多神话

     

     


    目前,百度、雅虎、Google分别以36.29%,22.72%,21.22%的用户占有率占引擎市场的前三名。为了进一步抢夺市场,近来,搜索引擎公司都有大的动作。新浪突出的爱问在某种程度上突破了由Google、百度为代表的演算法制胜的收缩模式,爱问搜索提供的搜索排序结果不同于竞价排名的商业运作模式,而是完全按照用户行为,心理方式,使搜索变得充满乐趣。在新浪推出共自主研发的搜索引擎体验的同时,百度推出了与“爱问知识人”同样性质的“知道”测试版,说明了提问式搜索代表了未来搜索引擎的一种趋势,对于用户来说是一种全新的搜索体验。而新浪的最大优势是,其影响力对于中国网民来说是其他门户网站难以企及的。此外,国外的搜索引擎公司也是动作频频,微软MSN突出其中国搜索版本;世界搜索巨擎Google于9月10 日也宣布将推出中国本地搜索。很明显,这些引擎公司的目标就是占据更多的中国市场份额。搜索市场早已硝烟四起,大战陆续有来。
    September 07

    自由自在的飞翔

    挣扎在恶梦之间,希望早一点可以flypast.
     
    flapst:飞越过去,可以很帅的来一个空中致礼 。

    精算师分类

     

    按职能分类的精算师头衔

     

    1.    首席精算师/总精算师(Chief Actuary

    指保险公司或其他机构中从事高级精算管理的精算师。首席精算师的主要职能有:领导精算报告的准备,审查精算报告,审查并批准精算部门预算,审查年报中的精算项目,审查再保险协议,分配和监督其他精算人员的工作,领导风险评级系统的开发和审查,管理特别的研究项目,作为专家证人出席听证会并提交技术报告,就一些复杂的精算问题代表其公司或机构与公众和官方进行会晤。首席精算师在工作中受到来自上层的限制最小,可以做出自己开创性的和独立的判断。

     

    2.    资产负债管理精算师 (Asset and Liability Management Actuary)

    指保险公司中专门从事资产负债管理的精算师。资产负债管理精算师的主要职责是使用各种资产负债管理工具(如现金流模拟)来分析保险公司的财务风险,向保险公司管理层提交资产负债管理报告,向保险公司管理层提供关于现金流风险、利率风险和资产运作的策略性建议。资产负债管理精算师制定保险公司的中期和长期的资产负债管理计划并向保险公司管理层提供能够实现主要资产负债管理目标的策略性意见。资产负债管理精算师还要开发和更新保险公司的资产负债分析系统模型。

     

    3.    业务发展精算师(Business Development Actuary

    指保险公司中负责研究新业务发展对保险公司的影响的精算师。业务发展精算师主要通过建立模型,在不同的假设下对保险公司的现金流、准备金和负债进行测试,估计新业务对公司的净资产和获利能力的影响。业务发展精算师还需考虑其他保险公司可能施加的竞争压力以及从其他保险公司可能取得的分保业务。

     

    4.    财务精算师(Finance Actuary

    指北美精算学会(SOA)认可的在财务、业务经营和估值方面专长的精算师。财务精算师负责及时、准确地做出财务报告。财务精算师还负责准备财务计划。

     

    5.    营销精算师(Marketing Actuary

    指从事市场营销工作的精算师。营销精算师的主要职能有:建立和管理客户关系,在特定区域展开营销服务渠道,根据客户要求提供创新的解决方案,管理报价过程,向管理层提交内部管理报告。由于拓展国际业务的需要,除英语外,营销精算师还需掌握一门欧洲国家的语言(一般为法语或德语)。

     

    6.    产品开发和定价精算师(Product Development and Pricing Actuary

    指从事产品开发和定价工作的精算师。产品开发和定价精算师负责新产品的市场定位、设计、利润测试,完成定价整个过程。产品开发精算师也负责对现有产品的改良和定价工具的开发。

     

    7.    准备金精算师(Reserving Actuary

    指从事准备金提留工作的精算师。准备金精算师负责提留准备金并确保准备金没有被挪用。准备金精算师还需证明财务报表中的准备金项目真实有效。

     

    8.    估值精算师(Valuation Actuary

    指负责向保险公司股东提交估值报告的精算师。估值精算师的估值报告主要是对公司负债的估值。

     

    12.   集团精算师(Group Actuary

    指服务于保险集团总部的精算师。集团精算师的主要职能有:集团的财务管理、为集团建立风险管理系统、对集团下属公司的承保过程、定价过程、提取准备金过程进行管理。

     

    四、按所处部门分类的精算师头衔

    按精算师所服务的部门,可以分成以下几类:

    1.          寿险和健康险精算师(Life and Health Actuary):服务于寿险和健康险公司。

    2.          意外和财产险精算师 (Casualty and Property Actuary):服务于意外险和财产险公司。

    3.          养老金精算师(Pension Actuary):服务于养老金机构。

    4.          投资精算师(Investment Actuary):服务于保险公司投资部门或投资公司、投资银行等投资机构。

    具有法定签字权的精算师头衔

     

    如同审计报告有注册会计师签字才有效,精算报告也要有相应的精算师签字才有效。精算师的签字权来自于相关法律的赋权,同时签字的精算师要承担相应的法律责任。

     

    1.    委任精算师(Appointed Actuary

    根据英国保险公司法1982Insurance Company Act 1982)和金融服务和市场法2000Financial Services and Markets Act 2000)规定,寿险公司必须拥有一个委任精算师,制作和签署委任精算师报告(Financial Condition Report)。在美国,各州拥有自己的法律体系,但是各州的保险监管部门都要求寿险公司必须聘任一名委任精算师。委任精算师具有特定的法律职责,其基本职责是持续性地对所在保险公司的偿付能力进行监控,以保证保险公司具有充足的偿付能力,即保险公司的资产在任何时刻都足以支付当时的(或可以预见的)保险赔付。委任精算师要保证保险公司的财务记录合理、适当,责任准备金提留充分,并对精算报告负责。委任精算师还应关注保险公司的红利分配政策是否符合保单持有人的合理预期。委任精算师对可能影响保险公司偿付能力的情形向董事会提交报告并建议改善方案。当保险公司在上述主要方面没有令委任精算师满意时,委任精算师将及时向监管部门上报以作为预警。

     

    2.    临时委任精算师(Appropriate Actuary

    专指英国特有的保险机构互助会(Friendly Society)中行使类似委任精算师职能的精算师。有的互助会规模较小,没有自己的委任精算师,按照互助会法1992Friendly Society Act 1992)和金融服务和市场法2000Financial Services and Markets Act 2000)的要求,互助会必须从外部聘请一位临时委任精算师。临时委任精算师不是全职的,只是在特定时间履行其职责(如互助会向监管部门提交精算报告期间)。互助会可能有非寿险业务,签署非寿险精算报告的临时委任精算师不一定每年都需要报告,但间隔时间不应超过三年。

    注:Appropriate Actuary目前还没有合适的中文译名,“临时委任精算师”只是本文的一种尝试。

     

    3.    认可精算师(Approved Actuary

        认可精算师在美国和澳大利亚具有不同含义。在美国,拥有北美精算学会(SOA)正式会员资格或在公共部门养老基金工作至少15年或作为公司正式员工的精算师都可以称为认可精算师。在澳大利亚,认可精算师指由澳大利亚金融监管机构APRAAustralian Prudential Regulation Authority)认可的,为非寿险保险公司签署精算报告或准备金评估报告的精算师,其地位与为非寿险公司签署审计报告的许可审计师完全等同。认可精算师必须满足下列条件:(1)没有违反澳大利亚保险和金融法规的记录,没有违反澳大利亚其他法律和在国外违法的记录,在职业生涯中没有不忠诚记录;(2)是合适的精算职业团体的正式会员;(3)是澳大利亚的常住居民;(4)在非寿险保险公司有至少5年的工作经验;(5)遵守APRA颁布的规定和相关职业团体颁布的职业标准。

     

    4.    报告精算师 (Reporting Actuary)

    按照英国保险公司法1982Insurance Company Act 1982)保险公司必须有专门计算长期责任准备金并向董事会提交报告的精算师,并称之为报告精算师。计算长期责任准备金是报告精算师的法定职能,报告精算师也可为计算资产负债表和损益表中的其他项目提供精算建议。

     

    5.    养老金计划精算师(Scheme Actuary

    按照英国养老金法1995Pension Act 1995),职业养老金计划(Occupational Pension Scheme)需要聘请有养老金精算执业证书的精算师出具各类精算报告,以及聘请精算师来管理计划,并且所聘请的精算师必须来自同一机构。养老金计划精算师的主要职能有:估算养老金计划的成本,分析养老金计划的投资收益和投资风险并向投资部门提供建议,在雇主破产时估算该雇主对其养老金计划的负债,为养老金计划参加保险提供建议。养老金计划精算师具有法律职责要向职业养老金监管机构(Occupational Pensions Regulatory Authority)提交报告以揭露养老金计划运营中违反养老金法的行为。

     

    6.    注册精算师(Enrolled Actuary

    按照美国员工退休收入保证法案(Employee Retirement Income Security ActERISA),大型的职工养老金机构需要聘请“注册精算师联合理事会” (The US Joint Board for Enrollment of Actuaries) 认可的养老金精算师出具精算报告。有的大公司由于职工人数巨大,也聘用自己的注册精算师来建立养老金计划。注册精算师的职能与上文中养老金计划精算师类似。

    可以说,养老金计划精算师和注册精算师在职能上并无多大区别,只是养老金计划精算师是英国说法而注册精算师是美国说法。

     

    7.    劳合社精算师(Lloyld’s Actuary

    按照劳合社法以及劳合社负债评估规则(The Lloyld’s Valuation of Liability Rules 1997),每个劳合社承保人每年都必须向劳合社理事会提交有关负债和准备金的精算报告。在美国做再保险业务的劳合社承保人除了向劳合社理事会外,还需向纽约保险部提交类似的精算报告。为该精算报告签字的精算师称为劳合社精算师。劳合社精算师可以是劳合社辛迪加(Lloyld’s Syndicate)自己雇用的精算师,这时又称之为辛迪加精算师(Syndicate Actuary);劳合社精算师也可以是劳合社辛迪加从精算师咨询公司聘请的咨询精算师。辛迪加精算师和咨询精算师必须拥有劳合社精算执业证书才可以签署劳合社精算报告。

     

    8.    精算责任人/责任精算师(Responsible Actuary

    按照中国保监会20002月发布的《人身保险产品备案管理暂行办法》规定:保险公司应当指定一名精算负责人,对其报备产品的精算方面问题负责。精算负责人应当符合以下条件:(一)在中华人民共和国境内有住所;(二)具有中国精算师资格;(三)有三年以上精算从业经验;(四)未受过刑事处罚;(五)在执业中,没有故意欺骗行为。精算责任人应当恪尽职守,确保保险公司报备产品的精算基础、精算方法和精算公式符合精算原理、中国保监会的规定和精算标准,精算结果准确、合理,并出具精算声明书。由于我国还没有正式实施“委任精算师”制度,精算责任人可以看作是一种过渡性的提法。

    在德国,保险法规要求每个寿险公司指定一名“责任精算师”(Responsible Actuary),其职责是确保公司保险费率的厘定和准备金的计提符合法规要求。责任精算师有责任就有关保单持有人的红利分配等问题向董事会提出建议,同时也有与英国委任精算师类似的在保险公司违反保险法规时向监管部门报告的职责。

    9.    咨询精算师 (Consulting Actuary)

    一般是指精算咨询公司中工作的合格精算师,又称为独立精算师(Independent Actuary)。咨询精算师可以为各种类型的客户提供咨询服务,包括保险公司、政府监管部门、保险经纪人、被保险人等等,至于他能签署什么报告则取决于他持有的精算执业证书。咨询精算师的服务项目包括保险公司的负债和资产评估、准备金计算、新产品开发及定价、为保险公司审查财务报表、为保险公司的利润分配和再保险安排提供建议、为保险公司提供财务计划等。

     

    10.   政府精算师(Government Actuary

    指由政府部门聘用、为政府部门服务的精算师,如英国的政府精算署(Government Actuary’s Department)就聘用一定数量的政府精算师。政府精算师的主要职能有:在政府建立社会保险计划时提供精算咨询,向公共部门养老金计划提供精算咨询,与人口计划、公共卫生和统计等政府部门合作,协助保险监管部门对保险公司进行监管。

    精算师职业和职业组织

    精算师作为一种专门职业,有自己的职业组织,这就是精算学会或精算师协会。我们通常说的某人是“精算师”,是指这个人是某精算职业组织的正式会员(Fellow),比如英国精算学会(IOA)、北美精算学会(SOA)、美国财险及意外险精算学会(CAS)、澳大利亚精算学会(IAAust)等精算职业组织的会员。因此,精算师的全称应该是“Fellow of某某学会”。如果是以上几个学会的会员,在其名片上就简写为FIA,FSA,FCAS或FIAA。要想成为精算师,除了在北欧等少数国家和地区外,在大多数国家都要通过严格的考试才能获得会员资格,有的学会还要求一些工作经验,如要成为英国精算学会的正式会员,除通过15门课程考试外,还要求三年以上工作经验。一般来说,成为精算师的过程是先在精算学会/协会注册为学生会员,参加一系列课程考试,成为准精算师,最终成为精算师。

     

     

    以下是北美精算学会和英国精算学会的考试课程和要求:

                      北美精算学会(SOA)              英国精算学会(IOA)

    精算学生        无要求                                   一般要求有本科学历

     

    准精算师 课程1—6 + 职业课程短训班    课程101—109, 201, 及课程301—304 + 职业课程短训班

     

    精算师 课程1—8 完成指导课题               课程101—109, 201, 301—304,  课程401-404任选一门 +3年工作经验  

                                                                           

     

    精算师的含义还有“执业”和“非执业”的差别,成为正式会员后,由于不一定都到实务部门,比如可以在大学从事教学和研究,也就不需要对实际的精算报告签字负责。因此,对于精算学会的会员,还可以进一步分为“执业精算师”和“非执业精算师”,执业精算师是指通过向执业组织和主管部门申请,经过认可并被授予“执业证书”的精算师。执业精算师的执业证书不是永久性的,需要办理年检,对职业进修和执业表现方面的记录都有一定的要求。主管部门可能对执业证书还分专业或业务范围,以英国的情况为例,现有三种类型的精算师执业证书(Actuarial Practice Certificate),分别是寿险精算执业证书、劳合社精算执业证书和养老金精算师执业证书。精算学会/协会通常将各类成员分为正式会员/精算师(Fellow)、准会员/准精算师(Associate)和学生会员/精算学生(Actuarial Student)。准会员又可称为部分合格的精算师(Partly Qualified Actuary),正式会员则称为合格的精算师(Qualified Actuary)。此外,区分国内会员和海外会员。精算学会对各类会员都会有相应的要求,如交纳会费等等。

    how to add the backgroud music

    请访问"MSN 能量魔法",我的页面上有连接的,呵呵,很简单,自己试一下就可以了,如果有什么问题可以一起探讨。

    :)

    今天开版,但是不知道如何加音乐背景,寻找中。