Sending this port out now as there was some interest in arouteserver, I haven't got it working yet though and won't have time to look at it much for a few days (and then I doubt I know enough of Python to figure it out).
Contains: sysutils/py-packaging (seems to be needed) net/arouteserver Initial setup is script-driven, here's an example transcript: --snip----------------------------------------------- : :$ arouteserver setup :ARouteServer setup : :Where do you want configuration files and templates to be stored? (default: ~/arouteserver) :Do you confirm you want ARouteServer files to be stored at /home/sthen/arouteserver? [YES/no] :Installing configuration files into /home/sthen/arouteserver... : :Creating /home/sthen/arouteserver... OK :Populating /home/sthen/arouteserver... :- bogons.yml... OK (created) :- clients.yml... OK (created) :- general.distrib.yml... OK (created) :- log.ini... OK (created) :- rtt_getter.sh... OK (created) :- arouteserver.yml... OK (created) :Installing templates into /home/sthen/arouteserver/templates... : :Creating /home/sthen/arouteserver/templates... OK :Populating /home/sthen/arouteserver/templates... :Creating /home/sthen/arouteserver/templates/bird... OK :Populating /home/sthen/arouteserver/templates/bird... :- common.j2... OK (created) :- header.j2... OK (created) :- irrdb.j2... OK (created) :- macros.j2... OK (created) :- main.j2... OK (created) :- rpki.j2... OK (created) :- clients.j2... OK (created) :Creating /home/sthen/arouteserver/templates/html... OK :Populating /home/sthen/arouteserver/templates/html... :- main.j2... OK (created) :- macros.j2... OK (created) :Creating /home/sthen/arouteserver/templates/openbgpd... OK :Populating /home/sthen/arouteserver/templates/openbgpd... :- filters.j2... OK (created) :- header.j2... OK (created) :- irrdb.j2... OK (created) :- macros.j2... OK (created) :- main.j2... OK (created) :- rpki.j2... OK (created) :- clients.j2... OK (created) :Creating /home/sthen/arouteserver/templates/template-context... OK :Populating /home/sthen/arouteserver/templates/template-context... :- main.j2... OK (created) :Creating /home/sthen/arouteserver/cache... OK : :Configuration complete! : :- edit the /home/sthen/arouteserver/arouteserver.yml file to configure program's options :- edit the /home/sthen/arouteserver/log.ini file to set your logging preferences :- set your route server's options and policies in /home/sthen/arouteserver/general.yml : (edit it manually or use the 'arouteserver configure' command) :- configure route server clients in the /home/sthen/arouteserver/clients.yml file : :$ arouteserver configure :ARouteServer 2019-10-04 23:17:55,292 INFO Checking latest version : :BGP daemon :========== : :Depending on the BGP daemon used for the route server some features may not be :available. : :Details here: :https://arouteserver.readthedocs.io/en/latest/CONFIG.html#caveats-and- :limitations : :Which BGP daemon will be used? [bird/openbgpd] openbgpd :Which version? [6.0/6.1/6.2/6.3/6.4/6.5] 6.5 : :Router server's ASN :=================== : :What's the ASN of the route server? 65006 : :Route server's BGP router-id :============================ : :Please enter the route server BGP router-id: 1.1.1.1 : :List of local networks :====================== : :A list of local IPv4/IPv6 networks must be provided here: routes announced by :route server clients for these prefixes will be filtered out. : :Please enter a comma-separated list of local networks: 192.0.2.0/24 : : : :Route server policy definition file generated successfully! :=========================================================== : :The content of the general configuration file will now be written to :/home/sthen/arouteserver/general.yml : :Some notes: : : - For OpenBGPD, path-hiding mitigation techniques are not implemented. : - Accepted prefix lengths are 8-24 for IPv6 and 12-48 for IPv6. : - Routes with 'transit-free networks' ASNs in the middle of AS_PATH are :rejected. : - IRR-based filters are enabled; prefixes that are more specific of those :registered are accepted. : - PeeringDB is used to fetch AS-SETs for those clients that are not explicitly :configured. : - RPKI ROAs are used as if they were route objects to further enrich IRR data. : - ARIN Whois database dump is fetched from NLNOG to further enrich IRR data. : - NIC.BR Whois database dump is fetched from Registro.br to further enrich IRR :data. : - RPKI BGP Origin Validation is enabled. INVALID routes are rejected. : - PeeringDB is used to fetch networks prefix count. : - Routes tagged with the GRACEFUL_SHUTDOWN well-known community (65535:0) are :processed accordingly to draft-ietf-grow-bgp-gshut. : : --snip----------------------------------------------- Then try to generate config e.g. with "arouteserver openbgpd", or even just "arouteserver show_config" : --snip----------------------------------------------- :$ arouteserver openbgpd :ARouteServer 2019-10-04 23:18:48,093 ERROR An unexpected error occurred: bad escape \u at position 1 : :Please consider reporting this issue to the author using the URL below, including the following traceback and some hints on how to reproduce it: https://github.com/pierky/arouteserver/issues : :Traceback (most recent call last): : File "/usr/local/lib/python3.7/sre_parse.py", line 1021, in parse_template : this = chr(ESCAPES[this][1]) :KeyError: '\\u' : :During handling of the above exception, another exception occurred: : :Traceback (most recent call last): : File "/usr/local/bin/arouteserver", line 64, in <module> : if main(): : File "/usr/local/bin/arouteserver", line 53, in main : return cmd.run() : File "/usr/local/lib/python3.7/site-packages/pierky/arouteserver/commands/tpl_rendering.py", line 175, in run : builder = builder_class(**self.cfg_builder_params) : File "/usr/local/lib/python3.7/site-packages/pierky/arouteserver/builder.py", line 390, in __init__ : "general") : File "/usr/local/lib/python3.7/site-packages/pierky/arouteserver/builder.py", line 104, in _get_cfg : obj.load(path) : File "/usr/local/lib/python3.7/site-packages/pierky/arouteserver/config/base.py", line 114, in load : self._load_from_yaml_file(cfg_path) : File "/usr/local/lib/python3.7/site-packages/pierky/arouteserver/config/base.py", line 111, in _load_from_yaml_file : self._load_from_yaml(f.read()) : File "/usr/local/lib/python3.7/site-packages/pierky/arouteserver/config/base.py", line 87, in _load_from_yaml : expanded_doc = expand_env_vars(expanded_doc) : File "/usr/local/lib/python3.7/site-packages/pierky/arouteserver/config/base.py", line 81, in expand_env_vars : res = re.sub("\$\{" + v + "\}", os.environ[v], res) : File "/usr/local/lib/python3.7/re.py", line 192, in sub : return _compile(pattern, flags).sub(repl, string, count) : File "/usr/local/lib/python3.7/re.py", line 309, in _subx : template = _compile_repl(template, pattern) : File "/usr/local/lib/python3.7/re.py", line 300, in _compile_repl : return sre_parse.parse_template(repl, pattern) : File "/usr/local/lib/python3.7/sre_parse.py", line 1024, in parse_template : raise s.error('bad escape %s' % this, len(this)) :re.error: bad escape \u at position 1 --snip-----------------------------------------------
arouteserver,py-packaging.tgz
Description: application/tar-gz