summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--README.md1
-rw-r--r--docs/sources/route-server.md68
2 files changed, 69 insertions, 0 deletions
diff --git a/README.md b/README.md
index 74368188..1bad7c4b 100644
--- a/README.md
+++ b/README.md
@@ -21,6 +21,7 @@ No dependency hell (library, package, etc) thanks to Go.
### Using GoBGP
* [Getting Started](https://github.com/osrg/gobgp/blob/master/docs/sources/getting-started.md)
+ * [Route Server](https://github.com/osrg/gobgp/blob/master/docs/sources/route-server.md)
## Contributing to GoBGP
diff --git a/docs/sources/route-server.md b/docs/sources/route-server.md
new file mode 100644
index 00000000..a3917048
--- /dev/null
+++ b/docs/sources/route-server.md
@@ -0,0 +1,68 @@
+# Route Server
+
+This page explains how to set up GoBGP as a route server.
+
+## Prerequisites
+
+Assumed that you finished [Getting Started](https://github.com/osrg/gobgp/blob/master/docs/sources/getting-started.md).
+
+## Configuration
+
+This example uses the following simple configuration file, `gobgpd.conf`. There are three changes from
+the configuration file used in [Getting Started](https://github.com/osrg/gobgp/blob/master/docs/sources/getting-started.md)
+
+ * Peers are configured as route server clients (of course!).
+ * GoBGP oesn't try to connect to peers. It only listens and accepts.
+ * MD5 passwords are enabled.
+
+```
+$ cat gobgpd.conf
+[Global]
+ As = 64512
+ RouterId = "192.168.255.1"
+[[NeighborList]]
+ NeighborAddress = "10.0.255.1"
+ PeerAs = 65001
+ AuthPassword = "hoge1"
+ [NeighborList.RouteServer]
+ RouteServerClient = true
+ [NeighborList.TransportOptions]
+ PassiveMode = true
+[[NeighborList]]
+ NeighborAddress = "10.0.255.2"
+ PeerAs = 65002
+ AuthPassword = "hoge2"
+ [NeighborList.RouteServer]
+ RouteServerClient = true
+ [NeighborList.TransportOptions]
+ PassiveMode = true
+```
+
+Starting GoBGP
+==============
+Let's start gobgpd:
+
+```
+$ sudo -E gobgpd -f gobgpd.conf
+{"level":"info","msg":"Peer 10.0.255.1 is added","time":"2015-04-06T22:55:57+09:00"}
+{"level":"info","msg":"Peer 10.0.255.2 is added","time":"2015-04-06T22:55:57+09:00"}
+```
+
+GoBGP implements multiple RIBs, that is, each peer has own local
+RIB. Let's check respectively.
+
+```
+$ gobgp show neighbor 10.0.255.1 local
+ Network Next Hop AS_PATH Age Attrs
+*> 10.3.0.0/24 10.0.255.2 [65002] 00:05:50 [{Origin: 0} {Med: 0}]
+*> 192.168.2.0/24 10.0.255.2 [65002] 00:05:50 [{Origin: 0} {Med: 0}]
+```
+
+```
+$ gobgp show neighbor 10.0.255.2 local
+ Network Next Hop AS_PATH Age Attrs
+*> 10.3.0.0/16 10.0.255.1 [65001] 00:06:12 [{Origin: 0} {Med: 0}]
+*> 10.3.0.1/32 10.0.255.1 [65001] 00:06:12 [{Origin: 0} {Med: 0}]
+```
+
+Of course, you can also look at the adjacent rib-in and rib-out of each peer as done in [Getting Started](https://github.com/osrg/gobgp/blob/master/docs/sources/getting-started.md).