Newansage v0.4.0 is out
Getting started / First session

First session

Write a minimal config, start ansage and check that the neighbor has your prefixes.

Write a config

/etc/ansage/ansage.toml
asn = 64500
router_id = "203.0.113.1"
announce = ["192.0.2.0/24", "2001:db8:1::/48"]

[[neighbor]]
address = "10.0.0.1"
asn = 64501

ansage check -c /etc/ansage/ansage.toml validates it without starting anything. Every setting is in the config reference.

Start ansage

Under systemd (see Install):

systemctl start ansage

Or in the foreground:

ansage --config /etc/ansage/ansage.toml [--log-format text|json]

Check the session

ansage show summary
ansage 0.4.0, AS 64500, router ID 203.0.113.1, up 4.0s
RIB: 2 IPv4 and 2 IPv6 prefixes, 3 attribute sets
Announcing: 192.0.2.0/24 2001:db8:1::/48

ID  NEIGHBOR       AS     STATE        FOR   RCVD v4/v6  SENT v4/v6  DESCRIPTION
1   10.0.0.1:179   64501  Established  4.0s  0/0         1/1         -

Established and SENT 1/1: the neighbor has both prefixes. ansage show peer 10.0.0.1 shows the details, and why a session is not up. All client commands take --json, and -s SOCKET (or -c CONFIG to find its socket).

Check on the router

vtysh -c 'show bgp ipv4 unicast 192.0.2.0/24'
birdc show route 192.0.2.0/24 all

The router needs a neighbor for ansage too, see Router configs.

Who connects

By default ansage connects to its neighbors and accepts nothing. To accept connections from configured neighbors as well, set listen; a neighbor with passive = true is never connected to, ansage waits for it:

listen = ["0.0.0.0:179", "[::]:179"]

[[neighbor]]
address = "10.0.0.1"
asn = 64501
passive = true

Next steps

Esc to close