GoBGPdでのフルルート注入をGNS3上でやってみた(補足)

技術ネタ

なんてこった…

GoBGPdでのフルルート注入をGNS3上でやってみた
先日のGNS3でDocker使ってJupyter Notebook動かすのに味をしめてなにか他にできないかなーと考えてました。 そこでふと思い出したのが以下のエントリ。 そういえばフルルートってどんなものか見たことないなぁ VyOSでの記事...

前の記事でネクストホップをそのまま受け取る方法で悩んでたけど、あらためて見てるとこんなの見つけてしまった…

root@Ubuntu-1:~# gobgp mrt inject global --help
Usage:
  gobgp mrt inject global [flags]

Flags:
  -h, --help   help for global

Global Flags:
      --bash-cmpl-file string   bash cmpl filename (default "gobgp-completion.bash")
  -d, --debug                   use debug
  -c, --gen-cmpl                generate completion file
  -u, --host string             host (default "127.0.0.1")
  -j, --json                    use json format to output format
      --nexthop ip              Overwrite nexthop ←( ゚д゚)なんじゃこりゃー!
      --no-ipv4                 Do not import IPv4 routes
      --no-ipv6                 Do not import IPv6 routes
      --only-best               inject only best paths
  -p, --port int                port (default 50051)
  -r, --pprof-port int          pprof port
      --queue-size int          Maximum number of updates to keep queued (default 1024)
  -q, --quiet                   use quiet
      --tls                     connection uses TLS if true, else plain TCP
      --tls-ca-file string      The file containing the CA root cert file

ネクストホップ書き換えてくれるんやん…

てことで、gobgp mrt inject global rib.20180201.0000 --nexthop 192.168.255.2で受け取った結果がこちら。

RP/0/0/CPU0:ios#show bgp ipv4 unicast
Wed Feb 14 00:54:03.696 UTC
BGP router identifier 1.1.1.1, local AS number 65000
BGP generic scan interval 60 secs
Non-stop routing is enabled
BGP table state: Active
Table ID: 0xe0000000   RD version: 104183
BGP main routing table version 104183
BGP NSR Initial initsync version 3 (Reached)
BGP NSR/ISSU Sync-Group versions 0/0
BGP scan interval 60 secs

Status codes: s suppressed, d damped, h history, * valid, > best
              i - internal, r RIB-failure, S stale, N Nexthop-discard
Origin codes: i - IGP, e - EGP, ? - incomplete
   Network            Next Hop            Metric LocPrf Weight Path
*> 1.0.4.0/22         192.168.255.2                          0 65534 2497 4826 38803 56203 i
*> 1.0.4.0/24         192.168.255.2                          0 65534 2497 4826 38803 56203 i
*> 1.0.5.0/24         192.168.255.2                          0 65534 2497 4826 38803 56203 i
*> 1.0.6.0/24         192.168.255.2                          0 65534 2497 4826 38803 56203 i
*> 1.0.7.0/24         192.168.255.2                          0 65534 2497 4826 38803 56203 i
*> 1.0.16.0/24        192.168.255.2                          0 65534 2497 2519 i
*> 1.0.64.0/18        192.168.255.2                          0 65534 7500 2516 7670 18144 i
*> 1.0.128.0/17       192.168.255.2                          0 65534 7500 2497 38040 9737 i
*> 1.0.128.0/18       192.168.255.2                          0 65534 7500 2497 38040 9737 i

next-hop-self有効にしたみたいにちゃんと広報するルータのアドレスがネクストホップになってます。

ま、まぁ元データのネクストホップがちゃんと見えてたほうが意味あるよね、うん。

2018/02/18追記:
Arista vEOSだとそもそもNEXTHOPをPeerのアドレスにできるんですね。あと受信プレフィックスの最大値に制限があるのでちゃんとリミット解除しとかないと

router bgp 65000
   neighbor 192.168.255.2 remote-as 65534
   neighbor 192.168.255.2 next-hop-peer
   neighbor 192.168.255.2 maximum-routes 0
   neighbor 192.168.255.2 maximum-accepted-routes 0
   !
   address-family ipv4
      neighbor 192.168.255.2 activate

コメント

タイトルとURLをコピーしました