prefix-list
prefix-list は、経路プレフィックスとprefix長を条件にして、経路を選別するためのリストである。
ACL は主にパケット条件を見る。prefix-list は経路プレフィックスを見る。DRPの再配送、distribute-list、BGP neighbor policy、route-map の match 条件でよく使う。
ip prefix-list STATIC-TO-OSPF seq 10 permit 172.16.10.0/24ip prefix-list STATIC-TO-OSPF seq 20 deny 0.0.0.0/0 le 32prefix-list も上から順に評価され、最後には暗黙の deny がある。
exact match
Section titled “exact match”ge / le を付けない場合は、prefix と prefix長の両方が一致する経路だけに一致する。
ip prefix-list DEFAULT-ONLY seq 10 permit 0.0.0.0/0これは 0.0.0.0/0 だけに一致する。すべてのIPv4経路に一致するわけではない。
ge と le は、許可するprefix長の範囲を指定する。
| 設定 | 意味 |
|---|---|
10.0.0.0/8 |
10.0.0.0/8 だけ |
10.0.0.0/8 le 24 |
10.0.0.0/8 に含まれる /8 から /24 |
10.0.0.0/8 ge 16 le 24 |
10.0.0.0/8 に含まれる /16 から /24 |
0.0.0.0/0 le 32 |
すべてのIPv4 prefix |
ge / le はネットワークアドレスの範囲と、prefix長の範囲を同時に見る。10.0.0.0/8 le 24 は、10.0.0.0/8 の外側の経路には一致しない。
IPv6 prefix-list
Section titled “IPv6 prefix-list”IPv6 では ipv6 prefix-list を使う。
ipv6 prefix-list V6-DEFAULT seq 10 permit ::/0ipv6 prefix-list V6-INTERNAL seq 10 permit 2001:db8:100::/48 le 64考え方はIPv4と同じで、prefixとprefix長の範囲を条件にする。
route-mapとの組み合わせ
Section titled “route-mapとの組み合わせ”prefix-list は単体で使うより、route-map から参照されることが多い。
ip prefix-list OSPF-TO-BGP seq 10 permit 10.10.0.0/16 le 24
route-map OSPF-TO-BGP permit 10 match ip address prefix-list OSPF-TO-BGP set local-preference 200exitこの例では、prefix-list が「どの経路か」を選び、route-map が「その経路に何をするか」を決めている。
DRPでの使いどころ
Section titled “DRPでの使いどころ”| 場面 | prefix-listの役割 |
|---|---|
| OSPFへ再配送 | 外部から入れるprefixを限定する |
| EIGRPへ再配送 | metricを付ける対象prefixを限定する |
| BGPへ再配送 | BGPへ載せる内部prefixを限定する |
| BGP neighbor policy | 広告/受信するprefixを限定する |
DRPでは、広く許可するprefix-listを作るほど経路流入の範囲も広がる。最初は必要なprefixだけを明示する方が事故を起こしにくい。