summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--docs/sources/configuration.md160
-rw-r--r--docs/sources/getting-started.md3
2 files changed, 163 insertions, 0 deletions
diff --git a/docs/sources/configuration.md b/docs/sources/configuration.md
new file mode 100644
index 00000000..abe04d32
--- /dev/null
+++ b/docs/sources/configuration.md
@@ -0,0 +1,160 @@
+# Configuration example
+
+```toml
+[global.config]
+ as = 1
+ router-id = "1.1.1.1"
+ [global.apply-policy.config]
+ import-policy-list = ["policy1"]
+ default-import-policy = "reject-route"
+ export-policy-list = ["policy2"]
+ default-export-policy = "accept-route"
+ [[global.bmp-servers]]
+ [global.bmp-servers.config]
+ address = "127.0.0.1"
+ port = 11019
+ [global.mrt]
+ file-name = "/var/log/mrt.dump"
+ [global.zebra]
+ enabled = true
+ url = "unix:/var/run/quagga/zserv.api"
+ redistribute-route-type-list = ["connect"]
+ [global.mpls-label-range]
+ min-label = 1000
+ max-label = 2000
+
+[[rpki-servers]]
+ [rpki-servers.config]
+ address = "210.173.170.254"
+ port = 323
+
+[[neighbors]]
+ [neighbors.config]
+ peer-as = 2
+ auth-password = "password"
+ neighbor-address = "192.168.10.2"
+ [neighbors.timers.config]
+ connect-retry = 5
+ hold-time = 9
+ keepalive-interval = 3
+ [neighbors.transport.config]
+ passive-mode = true
+ local-address = "192.168.10.1"
+ [neighbors.ebgp-multihop.config]
+ enabled = true
+ multihop-ttl = 100
+ [neighbors.route-reflector.config]
+ route-reflector-client = true
+ route-reflector-cluster-id = "192.168.0.1"
+ [[neighbors.afi-safis]]
+ afi-safi-name = "ipv4-unicast"
+ [[neighbors.afi-safis]]
+ afi-safi-name = "ipv6-unicast"
+ [[neighbors.afi-safis]]
+ afi-safi-name = "l3vpn-ipv4-unicast"
+ [[neighbors.afi-safis]]
+ afi-safi-name = "l3vpn-ipv6-unicast"
+ [[neighbors.afi-safis]]
+ afi-safi-name = "l2vpn-evpn"
+ [[neighbors.afi-safis]]
+ afi-safi-name = "rtc"
+ [[neighbors.afi-safis]]
+ afi-safi-name = "encap"
+ [[neighbors.afi-safis]]
+ afi-safi-name = "ipv4-flowspec"
+ [[neighbors.afi-safis]]
+ afi-safi-name = "ipv6-flowspec"
+ [neighbors.apply-policy.config]
+ import-policy-list = ["policy1"]
+ default-import-policy = "reject-route"
+ export-policy-list = ["policy2"]
+ default-export-policy = "accept-route"
+ in-policy-list = ["policy3"]
+ default-in-policy = "reject-route"
+ [neighbors.route-server.config]
+ route-server-client = true
+
+[[defined-sets.prefix-sets]]
+ prefix-set-name = "ps0"
+ [[defined-sets.prefix-sets.prefix-list]]
+ ip-prefix = "10.0.0.0/8"
+ masklength-range = "24..32"
+[[defined-sets.neighbor-sets]]
+ neighbor-set-name = "ns0"
+ neighbor-info-list = ["192.168.10.2"]
+[[defined-sets.bgp-defined-sets.community-sets]]
+ community-set-name = "cs0"
+ community-list = ["100:100"]
+[[defined-sets.bgp-defined-sets.ext-community-sets]]
+ ext-community-set-name = "es0"
+ ext-community-list = ["rt:100:100", "soo:200:200"]
+[[defined-sets.bgp-defined-sets.as-path-sets]]
+ as-path-set-name = "as0"
+ as-path-list = ["^100", "200$"]
+
+[[policy-definitions]]
+ name = "policy1"
+ [[policy-definitions.statements]]
+ [policy-definitions.statements.conditions.match-prefix-set]
+ prefix-set = "ps0"
+ match-set-options = "any"
+ [policy-definitions.statements.conditions.match-neighbor-set]
+ neighbor-set = "ns0"
+ match-set-options = "invert"
+ [policy-definitions.statements.conditions.bgp-conditions.match-community-set]
+ community-set = "cs0"
+ match-set-options = "all"
+ [policy-definitions.statements.actions.bgp-actions.set-as-path-prepend]
+ as = "last-as"
+ repeat-n = 5
+ [policy-definitions.statements.actions.route-disposition]
+ accept-route = true
+ [[policy-definitions.statements]]
+ [policy-definitions.statements.conditions.bgp-conditions.match-ext-community-set]
+ ext-community-set = "es0"
+ [policy-definitions.statements.actions.route-disposition]
+ accept-route = false
+
+[[policy-definitions]]
+ name = "policy2"
+ [[policy-definitions.statements]]
+ [policy-definitions.statements.conditions.bgp-conditions.match-as-path-set]
+ as-path-set = "as0"
+ [policy-definitions.statements.actions.route-disposition]
+ accept-route = true
+ [policy-definitions.statements.actions.bgp-actions.set-community]
+ options = "add"
+ [policy-definitions.statements.actions.bgp-actions.set-community.set-community-method]
+ communities-list = ["100:200"]
+
+[[policy-definitions]]
+ name = "policy3"
+ [[policy-definitions.statements]]
+ [policy-definitions.statements.conditions.bgp-conditions.match-as-path-set]
+ as-path-set = "as0"
+ [policy-definitions.statements.actions.route-disposition]
+ accept-route = true
+ [policy-definitions.statements.actions.bgp-actions.set-community]
+ options = "add"
+ [policy-definitions.statements.actions.bgp-actions.set-community.set-community-method]
+ communities-list = ["100:200"]
+ [[policy-definitions.statements]]
+ [policy-definitions.statements.conditions.match-prefix-set]
+ prefix-set = "ps0"
+ match-set-options = "invert"
+ [policy-definitions.statements.actions.route-disposition]
+ accept-route = true
+ [policy-definitions.statements.actions.bgp-actions.set-ext-community]
+ options = "replace"
+ [policy-definitions.statements.actions.bgp-actions.set-ext-community.set-ext-community-method]
+ communities-list = ["soo:100:200", "rt:300:400"]
+ [[policy-definitions.statements]]
+ [policy-definitions.statements.conditions.match-neighbor-set]
+ neighbor-set = "ns0"
+ [policy-definitions.statements.actions.route-disposition]
+ accept-route = true
+ [policy-definitions.statements.actions.bgp-actions.set-ext-community]
+ options = "remove"
+ [policy-definitions.statements.actions.bgp-actions.set-ext-community.set-ext-community-method]
+ communities-list = ["soo:500:600", "rt:700:800"]
+```
diff --git a/docs/sources/getting-started.md b/docs/sources/getting-started.md
index b2c4be37..9f3d532e 100644
--- a/docs/sources/getting-started.md
+++ b/docs/sources/getting-started.md
@@ -51,6 +51,9 @@ If you don't like `toml`, you can use `json`, `yaml` and `hcl` instead.
peer-as = 65002
```
+see [here](https://github.com/osrg/gobgp/blob/master/docs/sources/configuration.md) for
+more complicated configuration.
+
## Starting GoBGP
Save the configuration above as gobgpd.conf and start gobgpd: