- Strongly suggested: install
pipand setup a Virtualenv:
# on Debian/Ubuntu: sudo apt-get install python-virtualenv # on CentOS: sudo yum install epel-release sudo yum install python-pip python-virtualenv # setup a virtualenv mkdir -p ~/.virtualenvs/arouteserver virtualenv ~/.virtualenvs/arouteserver source ~/.virtualenvs/arouteserver/bin/activate
Install the program.
- If you plan to run built-in Live tests on your own or to contribute to the project, clone the GitHub repository locally and install dependencies:
# from within the previously created arouteserver directory git clone https://github.com/pierky/arouteserver.git ./ export PYTHONPATH="`pwd`" pip install -r requirements.txt
- If you plan to just use the program to build configurations or to run your own live tests scenarios, you can install it using
pip install arouteserver
If you receive the following error while installing the program (or its requirements) using pip: error in setup command: ‘install_requires’ must be a string or list of strings containing valid project/version requirement specifiers then please upgrade the setuptools package that is used in your virtualenv:
pip install --upgrade setuptools.
Setup your system layout (confirmation will be asked before each action):
# if you installed from GitHub export PYTHONPATH="`pwd`" ./scripts/arouteserver setup # if you used pip arouteserver setup
The program will ask you to create some directories (under
~/arouteserverby default) and to copy some files there. These paths can be changed by editing the
arouteserver.ymlprogram configuration file or by using command line arguments. More information in the configuration section.
ARouteServer uses the following external programs:
(mandatory) bgpq3 is used to gather information from IRRDBs.
To install it:
mkdir /path/to/bgpq3/directory cd /path/to/bgpq3/directory git clone https://github.com/snar/bgpq3.git ./ # make and gcc packages required ./configure make make install
To install it, please refer to its official guide.
To install it:
apt-get install qemu-kvm virtinst
More details: https://wiki.debian.org/KVM
To install them:
curl -o rtrlib.zip -L https://github.com/rtrlib/rtrlib/archive/v0.3.6.zip unzip rtrlib.zip cd rtrlib-0.3.6 && \ cmake -D CMAKE_BUILD_TYPE=Release . && \ make && \ make install curl -o bird-rtrlib-cli.zip -L https://github.com/rtrlib/bird-rtrlib-cli/archive/v0.1.1.zip unzip bird-rtrlib-cli.zip cd bird-rtrlib-cli-0.1.1 && \ cmake . && \ make
More details: https://github.com/rtrlib/rtrlib/wiki/Installation
To configure bird-rtrlib-cli please refer to the README.
To upgrade the program, download the new version…
# if you cloned the repository from GitHub, # from within the local repository's directory: git pull origin master # if you installed it with pip: pip install --upgrade arouteserver
… then sync the local templates with those distributed in the new version:
If local templates have been edited, make a backup of your files in order to merge your changes in the new ones later. To customize the configuration of the route server with your own options, please consider using Site-specific custom configuration files instead of editing the template files.
Development and pre-release versions¶
Consider your needs carefully before using a version other than the current production versions. These are preview releases, and their use is not recommended in production settings.
The dev branch is used for the development of the project, while the master branch always contains the latest, (hopefully) stable production-ready code.
pip install --index-url https://test.pypi.org/simple/ --extra-index-url https://pypi.org/simple --pre arouteserver