diff options
Diffstat (limited to 'docs/sources')
-rw-r--r-- | docs/sources/dynamic-neighbor.md | 89 | ||||
-rw-r--r-- | docs/sources/peer-group.md | 81 |
2 files changed, 170 insertions, 0 deletions
diff --git a/docs/sources/dynamic-neighbor.md b/docs/sources/dynamic-neighbor.md new file mode 100644 index 00000000..aee75c92 --- /dev/null +++ b/docs/sources/dynamic-neighbor.md @@ -0,0 +1,89 @@ +# Dynamic Neighbor + +This page explains how to configure the Dynamic Neighbor features. +Dynamic Neighbor enables GoBGP to accept connections from the peers in specific prefix. + +## Contents + +- [Prerequisite](#prerequisite) +- [Configuration](#configuration) +- [Verification](#verification) + +## Prerequisite +Assumed that you finished [Getting Started](getting-started.md) and learned [Peer Group](peer-group.md). + +## Configuration + +The Dynamic Neighbor feature requires a peer group setting for its configuration. + +```toml +[global.config] + as = 65001 + router-id = "172.40.1.2" + +[[peer-groups]] + [peer-groups.config] + peer-group-name = "sample-group" + peer-as = 65002 + [[peer-groups.afi-safis]] + [peer-groups.afi-safis.config] + afi-safi-name = "ipv4-unicast" + [[peer-groups.afi-safis]] + [peer-groups.afi-safis.config] + afi-safi-name = "ipv4-flowspec" + +[[dynamic-neighbors]] + [dynamic-neighbors.config] + prefix = "172.40.0.0/16" + peer-group = "sample-group" +``` + +By this configuration, peers in `172.40.0.0/16` will be accepted by this GoBGP, +and the `sample-group` configuration is used as the configuration of members of this dynamic neighbor. + +Note that GoBGP will be passive mode to members of dynamic neighbors. +So if both peers listen to each other as dynamic neighbors, the connection will never be established. + +# Verification + +Dynamic neighbors are not shown by `gobgp neighbor` command until the connection is established. +```shell +$ gobgp neighbor +Peer AS Up/Down State |#Received Accepted +``` + +After the connection is established, the neighbor will appear by `gobgp neighbor` command. +You can see the neighbor config is inherited from the peer group config. + +```shell +$ gobgp neighbor +Peer AS Up/Down State |#Received Accepted +172.40.1.3 65001 00:00:23 Establ | 0 0 +$ gobgp neighbor 172.40.1.3 +BGP neighbor is 172.40.1.3, remote AS 65002 + BGP version 4, remote router ID 172.40.1.3 + BGP state = established, up for 00:00:07 + BGP OutQ = 0, Flops = 0 + Hold time is 90, keepalive interval is 30 seconds + Configured hold time is 90, keepalive interval is 30 seconds + + Neighbor capabilities: + multiprotocol: + ipv4-unicast: advertised and received + ipv4-flowspec: advertised and received + route-refresh: advertised and received + 4-octet-as: advertised and received + Message statistics: + Sent Rcvd + Opens: 1 1 + Notifications: 0 0 + Updates: 0 0 + Keepalives: 1 1 + Route Refresh: 0 0 + Discarded: 0 0 + Total: 2 2 + Route statistics: + Advertised: 0 + Received: 0 + Accepted: 0 +```
\ No newline at end of file diff --git a/docs/sources/peer-group.md b/docs/sources/peer-group.md new file mode 100644 index 00000000..a9ee39f0 --- /dev/null +++ b/docs/sources/peer-group.md @@ -0,0 +1,81 @@ +# Peer Group + +This page explains how to configure the Peer Group features. +With Peer Group, you can set the same configuration to multiple peers. + +## Contents + +- [Prerequisite](#prerequisite) +- [Configuration](#configuration) +- [Verification](#verification) + +## Prerequisite +Assumed that you finished [Getting Started](getting-started.md). + +## Configuration + +Below is the configuration to create a peer group. + +```toml +[[peer-groups]] + [peer-groups.config] + peer-group-name = "sample-group" + peer-as = 65001 + [[peer-groups.afi-safis]] + [peer-groups.afi-safis.config] + afi-safi-name = "ipv4-unicast" + [[peer-groups.afi-safis]] + [peer-groups.afi-safis.config] + afi-safi-name = "ipv4-flowspec" +``` + +The configurations in this peer group will be inherited to the neighbors which is the member of this peer group. +In addition, you can add additional configurations to each member. + +Below is the configuration to create a neighbor which belongs this peer group. + +```toml +[[neighbors]] + [neighbors.config] + neighbor-address = "172.40.1.3" + peer-group = "sample-group" + [neighbors.timers.config] + hold-time = 99 +``` + +This neighbor belongs to the peer group, so the peer-as is 65001, and ipv4-unicast and ipv4-flowspec are enabled. +Furthermore, an additional configuration is set, the hold timer is 99 secs. + +## Verification + +You can see the neighbor configuration inherits the peer group config by running `gobgp neighbor` command. + +```shell +$ gobgp neighbor 172.40.1.3 +BGP neighbor is 172.40.1.3, remote AS 65001 + BGP version 4, remote router ID 172.40.1.3 + BGP state = established, up for 00:00:05 + BGP OutQ = 0, Flops = 0 + Hold time is 99, keepalive interval is 33 seconds + Configured hold time is 99, keepalive interval is 33 seconds + + Neighbor capabilities: + multiprotocol: + ipv4-unicast: advertised and received + ipv4-flowspec: advertised and received + route-refresh: advertised and received + 4-octet-as: advertised and received + Message statistics: + Sent Rcvd + Opens: 1 1 + Notifications: 0 0 + Updates: 0 0 + Keepalives: 1 1 + Route Refresh: 0 0 + Discarded: 0 0 + Total: 2 2 + Route statistics: + Advertised: 0 + Received: 0 + Accepted: 0 +``` |