198 Commits
Author SHA1 Message Date
IWASE YusukeandFUJITA Tomonori 87b473ad4d cli: Enable to specify AS_PATH
This patch enables to specify AS_PATH in "gobgp" client command.
The syntax is similar to the output of AS_PATH in "global rib" show
command.

Signed-off-by: IWASE Yusuke <[email protected]>
2017-08-30 09:24:10 +09:00
Satoshi FujimotoandFUJITA Tomonori e696acac3e doc: Update Flowspec document
Signed-off-by: Satoshi Fujimoto <[email protected]>
2017-08-29 18:40:27 +09:00
FUJITA Tomonori c88aaff9b5 improve cli addpath usage message
also add an example to cli doc.

Signed-off-by: FUJITA Tomonori <[email protected]>
2017-07-26 15:18:49 +09:00
FUJITA Tomonori 0730e0f9dd add addpath send support
Signed-off-by: FUJITA Tomonori <[email protected]>
2017-07-26 08:09:02 +09:00
IWASE Yusuke a57c14cdb2 docs/sources/configuration.md: Update example configuration
Signed-off-by: IWASE Yusuke <[email protected]>
2017-07-24 11:12:05 +09:00
IWASE Yusuke 01e57d81a5 docs/sources/configuration: Remove obsoleted "mpls-label-range"
see be9918a163

Signed-off-by: IWASE Yusuke <[email protected]>
2017-07-24 11:12:05 +09:00
Satoshi Fujimoto be708d0b8d doc: Add description for RPKI detailed information
Signed-off-by: Satoshi Fujimoto <[email protected]>
2017-07-19 10:59:54 +09:00
Satoshi Fujimoto 0b404b8ca7 docs: Delete description for monitoring RPKI
This feature is droped in 35efcd570d.

Signed-off-by: Satoshi Fujimoto <[email protected]>
2017-07-19 09:44:20 +09:00
Satoshi FujimotoandFUJITA Tomonori 4b5e13376c packet: Use bitmask operand format to fragment
RFC 5575 suggests using "bitmask operand format" for fragmentation
field, but GoBGP does not have an interface to configure it.
This patch introduce the way to configure bitmask operands for
"fragment" field.
The syntax is similar to TCP flags rules.
For example:
    =not-a-fragment
    =is-fragment&!last-fragment

Signed-off-by: Satoshi Fujimoto <[email protected]>
2017-07-10 15:39:14 +09:00
ISHIDA WataruandFUJITA Tomonori d435da72b0 docs: update configuration.md
Signed-off-by: ISHIDA Wataru <[email protected]>
2017-07-05 13:49:47 +09:00
Satoshi Fujimoto 1af73d413a grpc: Update Java sample client for GoBGP v1.20 gRPC API
Signed-off-by: Satoshi Fujimoto <[email protected]>
2017-06-30 13:36:24 +09:00
Satoshi Fujimoto 609e3171df grpc: Update doc for Java to make sample client work
Now, the procedure to run Java sample clients is out of date
and one cannot work the example well.
This patch updates the document to work with
the latest goBGP gRPC API and plugins.

At the time of this commit, versions of each plugins and tools are as following:
* ProtocolBuffer: 3.3.0
* grpc-java: 1.4.0
* java: 1.8.0_131

Signed-off-by: Satoshi Fujimoto <[email protected]>
2017-06-30 13:36:24 +09:00
Satoshi Fujimoto e32b74d178 grpc: Add command to run Nodejs sample client
Signed-off-by: Satoshi Fujimoto <[email protected]>
2017-06-30 13:36:04 +09:00
Satoshi Fujimoto 487c30fbc4 grpc: Update and Modify C++ sample client
This patch updates C++ sample gRPC client for GoBGP v1.12 gRPC API.
And this removes the route announcement feature from C++ sample client,
for maintenance and uniformity.

Signed-off-by: Satoshi Fujimoto <[email protected]>
2017-06-30 13:33:07 +09:00
Satoshi Fujimoto aea13caea6 grpc: Improve building tools and docs for C++ client
This patch includes the following fixes:
* update Makefile for protobuf 3.3.0 / gRPC 1.4.1
* make build.sh which generates stub codes
  and builds GoBGP shared library
  (instead, remove those operations from docs)

Signed-off-by: Satoshi Fujimoto <[email protected]>
2017-06-30 13:32:57 +09:00
Satoshi Fujimoto e314f126c1 grpc: Update Ruby sample for GoBGP v1.20 gRPC API
Signed-off-by: Satoshi Fujimoto <[email protected]>
2017-06-30 13:30:36 +09:00
Satoshi Fujimoto ba2ac3e452 grpc: Update Python sample and doc for GoBGP v1.20 gRPC API
Signed-off-by: Satoshi Fujimoto <[email protected]>
2017-06-30 13:29:51 +09:00
Satoshi Fujimoto b81e2fd806 docs: Separate sample codes from gRPC document
This patch separate sample codes from grpc-client.md
and adds references to samples in tools/grpc/.

Signed-off-by: Satoshi Fujimoto <[email protected]>
2017-06-30 13:26:14 +09:00
Satoshi Fujimoto d18ddd4eca docs: Refer to official install guild for gRPC and ProtoBuf
Signed-off-by: Satoshi Fujimoto <[email protected]>
2017-06-30 13:14:52 +09:00
IWASE YusukeandFUJITA Tomonori bb562572bc server: Enable to configure static TTL for BGP packets
Like "ttl" configuration of Junos OS, this patch enables to set static
TTL value for outgoing BGP packets.

Signed-off-by: IWASE Yusuke <[email protected]>
2017-06-23 18:13:19 +09:00
IWASE YusukeandFUJITA Tomonori 4af2f4b7d5 server: Implement TTL security
This patch enable to configure Generalized TTL Security Mechanism
(GTSM).

Signed-off-by: IWASE Yusuke <[email protected]>
2017-06-23 18:13:19 +09:00
AlexanderandFUJITA Tomonori dee06c638b little fix for getting-started.md documentation 2017-06-20 22:05:12 +09:00
Satoshi Fujimoto d75edf18d7 server: Support Dynamic Neighbor
Signed-off-by: Satoshi Fujimoto <[email protected]>
2017-06-16 15:53:18 +09:00
FUJITA Tomonori d65df0b045 replace github.com/Sirupsen/logrus with github.com/sirupsen/logrus
The usage of "github.com/sirupsen/logrus" is recommended.

Signed-off-by: FUJITA Tomonori <[email protected]>
2017-06-07 21:04:11 +09:00
Satoshi FujimotoandFUJITA Tomonori 6e9d5b56c4 *: Support Peer-Group Configuration
This patch enables to create peer-groups,
also supports dynamic configuration to peer-groups.

Manually set fields in neighbor configs have priority over its peer-group's config,
except some fields, like "peer-as", or "minimum-advertisement-interval" and so on.

Signed-off-by: Satoshi Fujimoto <[email protected]>
2017-06-05 14:24:45 +09:00
IWASE YusukeandFUJITA Tomonori bbf4b7c2a9 config: Option to enable BMP Route Mirroring
Signed-off-by: IWASE Yusuke <[email protected]>
2017-06-03 18:18:23 +09:00
Satoshi FujimotoandFUJITA Tomonori 87fe4fa604 cli: Add User Interface for Redirect-IPv6 action
Signed-off-by: Satoshi Fujimoto <[email protected]>
2017-05-23 11:11:10 +09:00
IWASE Yusuke c37b50a024 config: Add interval seconds for BMP stats reports
This patch suppose the default interval of the BMP stats reports is
0 which disable this feature and the range of this interval is 15
though 65535 seconds to follow Junos OS configuration.

Signed-off-by: IWASE Yusuke <[email protected]>
2017-05-22 13:12:02 +09:00
IWASE YusukeandFUJITA Tomonori fa1378f58b bmp: Obsolete "both" option for route-monitoring-policy
Because of the introduction of "local-rib" and "all" options for
route-monitoring-policy, this patch obsoletes "both" option.

Signed-off-by: IWASE Yusuke <[email protected]>
2017-05-22 12:10:07 +09:00
Wataru Ishida 9b9a65d410 *: support replace-peer-as (aka as-override)
we use the term replace-peer-as instead of as-override
since openconfig is using it.

cli

```
$ gobgp n add <neighbor-addr> as <asn> replace-peer-as
```

config

```
neighbor:
  config:
    peer-as: <asn>
    neighbor-address: <neighbor-addr>
  as-path-options:
    config:
      replace-peer-as: true
```

Signed-off-by: Wataru Ishida <[email protected]>
2017-05-10 08:15:00 +00:00
Wataru Ishida 1f053c25c4 *: support remove private as
cli

```
$ gobgp n add <neighbor-addr> as <asn> remove-private-as (all|replace)
```

config

```
neighbor:
  config:
    peer-as: <asn>
    neighbor-address: <neighbor-addr>
    remove-private-as: all
```

Signed-off-by: Wataru Ishida <[email protected]>
2017-05-10 08:05:47 +00:00
ISHIDA Wataru 0f62519cd7 server: ignore routes when local AS is in AS_PATH
RFC4271 9.1.2 Phase 2: Route Selection

If the AS_PATH attribute of a BGP route contains an AS loop, the BGP
route should be excluded from the Phase 2 decision function.  AS loop
detection is done by scanning the full AS path (as specified in the
AS_PATH attribute), and checking that the autonomous system number of
the local system does not appear in the AS path.  Operations of a BGP
speaker that is configured to accept routes with its own autonomous
system number in the AS path are outside the scope of this document.

Also this commit adds support for allow-own-as option to relax this.

Signed-off-by: ISHIDA Wataru <[email protected]>
2017-05-09 11:10:45 -04:00
FUJITA Tomonori 6faa02f93c doc: update required go versions to 1.7 or later
[skip ci]

Signed-off-by: FUJITA Tomonori <[email protected]>
2017-04-26 23:40:57 +09:00
Daniel PortellaandGitHub 64322c5858 Update getting-started.md 2017-04-21 14:24:26 +01:00
Daniel PortellaandGitHub 1c42813ea6 Update unnumbered-bgp.md 2017-04-21 14:23:41 +01:00
Daniel PortellaandGitHub a02c8a251d Update graceful-restart.md 2017-04-21 14:23:18 +01:00
ISHIDA WataruandFUJITA Tomonori 70a654a238 docs: add doc for unnumberd BGP
Signed-off-by: ISHIDA Wataru <[email protected]>
2017-04-04 22:07:46 +09:00
Mark StrotherandFUJITA Tomonori 0cfb8f65a0 doc: improve bmp documentation
Add documentation for route-monitoring-policy = "both".
2017-03-05 05:49:18 +09:00
Matthieu TexierandFUJITA Tomonori 55e9684259 flowspec: comply with new draft RFC5575bis normalized operators 2017-03-02 15:56:02 +09:00
FUJITA Tomonori e11bceddec doc: update policy
add note that prefix-set has either v4 or v6.

[skip ci]

Signed-off-by: FUJITA Tomonori <[email protected]>
2017-02-24 15:16:33 +09:00
Matthieu TexierandFUJITA Tomonori 6de16dc885 flowspec: comply with RFC 5575 about TCP flags rules
This patch proposes a new way to configure BGP flowspec TCP flags
rules It allows to comply with RFC 5575 by defining flags like this
=SA =A / '!SA' / '=SA&=!U' = means match, ! means not, & means and,
all TCP flags are identified by their first charater S for SYN A for
Ack ...
2017-02-17 21:20:59 +09:00
Mark StrotherandGitHub a1aa21844e Document support for post-policy BMP flows 2017-02-17 03:47:05 -08:00
ISHIDA WataruandFUJITA Tomonori 9a45ed09b0 cli: add current option to monitor commands
Signed-off-by: ISHIDA Wataru <[email protected]>
2017-02-15 00:10:15 +09:00
tamihiroandFUJITA Tomonori 512b156be6 fix configuration examples with correct route-disposition policy syntax 2017-01-15 06:30:26 -08:00
Wataru Ishida 93d1dca70a config: simplify route-disposition configuration
before:

```yaml
actions:
    route-disposition:
        accept-route: true
        reject-route: false
```

after

```yaml
action:
    router-disposition: accept-route
```

Signed-off-by: Wataru Ishida <[email protected]>
2016-11-17 23:22:55 -05:00
Ruben KerkhofandFUJITA Tomonori b68491f62c fix a few typos 2016-11-13 16:25:34 -08:00
Wataru IshidaandFUJITA Tomonori 6d52e8c1e5 ops: drop open switch support
Signed-off-by: Wataru Ishida <[email protected]>
2016-11-12 21:21:49 -08:00
Wataru IshidaandFUJITA Tomonori 771d1f90af docs: update cli doc
Signed-off-by: Wataru Ishida <[email protected]>
2016-11-04 13:20:09 +09:00
FUJITA Tomonori c7653aa9d4 allow add local route with specific mpls label
Also don't allocate label for local routes. The label management needs
to work with other components rather than bgp.

Signed-off-by: FUJITA Tomonori <[email protected]>
2016-11-03 02:49:59 -07:00
Wataru Ishida 1f4a3192af cli/api: support getting table summary information
$ gobgp global rib summary -a ipv4
$ gobgp neighbor 10.0.0.1 local summary
$ gobgp neighbor 10.0.0.1 adj-in summary
$ gobgp neighbor 10.0.0.1 adj-out summary

Signed-off-by: Wataru Ishida <[email protected]>
2016-10-16 14:07:06 +00:00