· 6 years ago · Feb 05, 2020, 08:16 AM
1# ======================================
2# Alice-LG configuration example
3# ======================================
4
5[server]
6# configures the built-in webserver and provides global application settings
7listen_http = 127.0.0.1:7340
8# enable the prefix-lookup endpoint / the global search feature
9enable_prefix_lookup = true
10# Try to refresh the neighbor status on every request to /neighbors
11enable_neighbors_status_refresh = false
12asn = 65123
13# this ASN is used as a fallback value in the RPKI feature and for route
14# filtering evaluation with large BGP communities
15
16[housekeeping]
17# Interval for the housekeeping routine in minutes
18interval = 5
19# Try to release memory via a forced GC/SCVG run on every housekeeping run
20force_release_memory = true
21
22[theme]
23path = /path/to/my/alice/theme/files
24# Optional:
25url_base = /theme
26
27[pagination]
28# Routes tables can be paginated, which comes in handy with
29# peers announcing a lot of routes. Set to 0 to disable
30# pagination.
31routes_filtered_page_size = 250
32routes_accepted_page_size = 250
33routes_not_exported_page_size = 250
34
35[rejection_reasons]
36# a pair of a large BGP community value and a string to signal the processing
37# results of route filtering
389033:65666:1 = An IP Bogon was detected
399033:65666:2 = Prefix is longer than 64
409033:65666:3 = Prefix is longer than 24
419033:65666:4 = AS path contains a bogon AS
429033:65666:5 = AS path length is longer than 64
439033:65666:6 = First AS in path is not the same as the Peer AS
449033:65666:7 = ECIX prefix hijack
459033:65666:8 = Origin AS not found in IRRDB for Peer AS-SET
469033:65666:9 = Prefix not found in IRRDB for Origin AS
479033:65666:10 = Advertised nexthop address is not the same as the peer
48
4923:42:1 = Some made up reason
50
51#
52# Optional: Define communities which might be filtered
53# in the future.
54[rejection_candidates]
55communities = 6695:1102:14, 6695:1102:15, 23:42:46
56
57[noexport]
58load_on_demand = true # Default: false
59
60[noexport_reasons]
61# a pair of a large BGP community value and a string to signal the processing
62# results of route distribution and the distribution policy applied to a route
639033:65667:1 = The target peer policy is Fairly-open and the sender ASN is an exception
649033:65667:2 = The target peer policy is Selective and the sender ASN is no exception
659033:65667:3 = The target peer policy is set to restrictive
669033:65667:4 = The sender has specifically refused export to the target peer, either through sending 65000:AS, or through the portal
679033:65667:5 = The sender has refused export to all peers and the target is no exception, either through sending 65000:0, or through the portal
689033:65667:6 = The Sender has set (peerRTTHigherDeny:ms) and the targets RTT ms >= then the ms in the community
699033:65667:7 = The Sender has set (peerRTTLowerDeny:ms) and the targets RTT ms <= then the ms in the community
70
7123:46:1 = Some other made up reason
72
73
74[rpki]
75# shows rpki validation status in the client, based on the presence of a large
76# BGP community on the route
77enabled = true
78
79# Optional, falling back to defaults as defined in:
80# https://www.euro-ix.net/en/forixps/large-bgp-communities/
81valid = 23042:1000:1
82unknown = 23042:1000:2
83# not_checked = 23042:1000:3
84invalid = 23042:1000:4-*
85
86
87# Define other known bgp communities
88[bgp_communities]
891:23 = some tag
909033:65666:1 = ip bogon detected
91# Wildcards are supported aswell:
920:* = do not redistribute to AS$1
93
94#
95# Define columns for neighbours and routes table,
96# with <key> = <Table Header>
97#
98# and <key> := <object.path> Implicitly referencing the object,
99# e.g. route.bgp.as_path -> bgp.as_path)
100# |= <Widget> A widget with special rendering features,
101# to which the object is applied. E.g.
102# Uptime, which will be rendered as
103# Uptime(neighbour).
104#
105# As per convention: Widgets are in Uppercase, object properties are
106# in lowercase.
107#
108# Available Widgets for Neighbours:
109#
110# Uptime Displays the relative uptime of this neighbour
111# Description The neighbour's description with link to routes page
112#
113
114[neighbours_columns]
115address = Neighbour
116asn = ASN
117state = State
118Uptime = Uptime
119Description = Description
120routes_received = Routes Received
121routes_filtered = Filtered
122
123
124[routes_columns]
125network = Network
126gateway = Gateway
127interface = Interface
128metric = Metric
129bgp.as_path = AS Path
130
131
132[lookup_columns]
133network = Network
134gateway = Gateway
135neighbour.asn = ASN
136neighbour.description = Description
137bgp.as_path = AS Path
138routeserver.name = RS
139
140
141# Routeservers
142[source.test]
143name = test
144[source.test.birdwatcher]
145timezone = Europe/Brussels
146api = http://10.199.0.200:29184/
147#single_table / multi_table
148type = single_table
149peer_table_prefix = T
150pipe_control_prefix = M
151#Timeout in seconds to wait for the status data (only required if enable_neighbors_status_refresh is true)
152neighbors_refresh_timeout = 2
153
154# Optional: Examples for time format
155# Please see https://golang.org/pkg/time/#pkg-constants for an
156# explanation on how time parsing in go works.
157servertime = 2006-01-02T15:04:05Z07:00
158servertime_short = 02.01.2006
159servertime_ext = Mon, 02 Jan 2006 15:04:05 -0700