BGP AS Pathにおける正規表現の確認 |
Dynalconf HOME |
Dynamips/Dynagenを使用してBGP AS Pathにおける正規表現を show bgp ipv4 unicast regexp(show ip bgp regexp) コマンドで確認します。
複数あるAS Pathリストの中から正規表現で指定したパターンに合致したAS Pathを選択することができる。なお、正規表現はAS Pathリストだけではなく、showコマンドやmoreコマンドをパイプ処理した際などにも使用可能である。
文字 | 意味 |
---|---|
_ (アンダースコア) |
カンマ","、左波カッコ"{"、右波カッコ"}"、文字列の先頭、文字列の末尾、空白と一致。左カッコ"("、右カッコ")"とは一致しない。 例)
_65001_ : 通過ASにAS65001を含むもの。例えば、AS Path "65000 65001 65002 i"と一致。
__65002(先頭にアンダースコアが2つと65002) : 例えば、"65000 65001 {65002,65003} i"と一致。 |
. (ピリオド) | 空白を含む任意の1文字と一致。 |
* (アスタリスク) |
直前の文字の0回以上の繰り返しと一致。 例)
.*(ピリオドとアスタリスク) : 全ての文字列(全てのAS Path)と一致。
|
+ (プラス) | 直前の文字の1回以上の繰り返しと一致。 |
? (クエスチョン) | 直前の文字の1回以内(0または1回)と一致。 |
^ (キャレット) |
文字列の先頭と一致。 例)
^65000_ : 例えば、"65000 65001 65002 i"と一致(隣接のASが65000と一致)。
|
$ (ダラー) |
文字列の末尾と一致。 例)
_65000$ : 例えば、"65001 65002 65000 i"と一致(発生元ASが65000と一致)。
^65000$ : "65000"のみと一致。 |
[ ] (レフトブラケット/ライトブラケット) |
[ ]内の任意の1文字と一致。[ ]内の文字列の先頭に"^"(キャレット)を指定すると指定したもの以外に反転。 例)
6500[12] : 例えば、"65000 65001 i"や"65000 65002 65003 i"と一致。
6500[1-5] : 例えば、"65000 65003 i"と一致。 6500[^1-5] : 例えば、"65006 65007 i"と一致。 |
| (パイプ) |
| を挟んだ2つの文字列のうち、いずれか一方と一致。 例)
_65001|65002_65003 : 例えば、"65001 65003 i"と一致。
|
( ) (レフトパーレン/ライトパーレン) |
文字列のまとまり(アトム)を指定。 また、( )内の文字列と一致する文字列を記憶し、"\1"~"\9"で呼び出し。( )のグループは最大9グループまで作成可能。 例)
_(65000 65001)+ : 例えば、"65000 65001 65002 i"と一致。( )内の文字列の1回以上の繰り返し。
_(65001)_\1_ : 例えば、"65010 65001 65001 65001 65002 i"と一致。 |
R8#sh bgp ipv4 unicast Network Next Hop Metric LocPrf Weight Path *> 1.1.1.1/32 10.8.10.10 0 100 0 (65410) 65104 65001 i *> 2.2.2.2/32 10.7.8.7 0 65307 65205 65002 i *> 3.3.3.3/32 10.7.8.7 0 65307 65206 65003 i *> 7.7.7.7/32 10.7.8.7 0 0 65307 i *> 9.9.9.9/32 10.7.8.7 0 65307 65206 65009 i *> 20.0.0.0 10.7.8.7 0 65307 65206 {65003,65009} i
R8#sh bgp ipv4 unicast regexp ^65307$ Network Next Hop Metric LocPrf Weight Path *> 7.7.7.7/32 10.7.8.7 0 0 65307 i
R8#sh bgp ipv4 unicast regexp _6520[56]_ Network Next Hop Metric LocPrf Weight Path *> 2.2.2.2/32 10.7.8.7 0 65307 65205 65002 i *> 3.3.3.3/32 10.7.8.7 0 65307 65206 65003 i *> 9.9.9.9/32 10.7.8.7 0 65307 65206 65009 i *> 20.0.0.0 10.7.8.7 0 65307 65206 {65003,65009} i
R8#sh bgp ipv4 unicast regexp _65009$ Network Next Hop Metric LocPrf Weight Path *> 9.9.9.9/32 10.7.8.7 0 65307 65206 65009 i
R8#sh bgp ipv4 unicast regexp _65003 Network Next Hop Metric LocPrf Weight Path *> 3.3.3.3/32 10.7.8.7 0 65307 65206 65003 i
R8#sh bgp ipv4 unicast regexp __65003 Network Next Hop Metric LocPrf Weight Path *> 20.0.0.0 10.7.8.7 0 65307 65206 {65003,65009} i
R8#sh bgp ipv4 unicast regexp _?65003 Network Next Hop Metric LocPrf Weight Path *> 3.3.3.3/32 10.7.8.7 0 65307 65206 65003 i *> 20.0.0.0 10.7.8.7 0 65307 65206 {65003,65009} i
R8#sh bgp ipv4 unicast regexp ^\(65410 Network Next Hop Metric LocPrf Weight Path *> 1.1.1.1/32 10.8.10.10 0 100 0 (65410) 65104 65001 i
R8#sh bgp ipv4 unicast regexp _65009}$ Network Next Hop Metric LocPrf Weight Path *> 20.0.0.0 10.7.8.7 0 65307 65206 {65003,65009} i
R8#sh bgp ipv4 unicast regexp _65009_$ Network Next Hop Metric LocPrf Weight Path *> 9.9.9.9/32 10.7.8.7 0 65307 65206 65009 i *> 20.0.0.0 10.7.8.7 0 65307 65206 {65003,65009} i
R8#sh bgp ipv4 unicast regexp 6(.)307_6520\1 Network Next Hop Metric LocPrf Weight Path *> 2.2.2.2/32 10.7.8.7 0 65307 65205 65002 i
1. Dynagen .net file 2. R1 3. R2 4. R3 5. R4 6. R5 7. R6 8. R7 9. R8 10. R9 11. R10
Dynalconf HOME |