722fbde7d0
When configuring radvd service an undefined object error is thrown. The data function in RadvdService returns a dict with ifaces. The radvd template however, expects a dict with a values key. I changed the key in the template because "ifaces" is way more descriptive than "values". Original Error that is fixed: Traceback (most recent call last): File "/opt/core/venv/lib/python3.9/site-packages/core/configservice/base.py", line 471, in render_template return self._render(template, data) File "/opt/core/venv/lib/python3.9/site-packages/core/configservice/base.py", line 439, in _render return template.render_unicode( File "/opt/core/venv/lib/python3.9/site-packages/mako/template.py", line 444, in render_unicode return runtime._render( File "/opt/core/venv/lib/python3.9/site-packages/mako/runtime.py", line 874, in _render _render_context( File "/opt/core/venv/lib/python3.9/site-packages/mako/runtime.py", line 916, in _render_context _exec_template(inherit, lclcontext, args=args, kwargs=kwargs) File "/opt/core/venv/lib/python3.9/site-packages/mako/runtime.py", line 943, in _exec_template callable_(context, *args, **kwargs) File "/opt/core/venv/lib/python3.9/site-packages/core/configservices/utilservices/templates/etc/radvd/radvd.conf", line 2, in render_body % for ifname, prefixes in values: TypeError: 'Undefined' object is not iterable |
||
---|---|---|
.github | ||
daemon | ||
dockerfiles | ||
docs | ||
man | ||
netns | ||
package | ||
.editorconfig | ||
.gitignore | ||
ASSIGNMENT_OF_COPYRIGHT.pdf | ||
bootstrap.sh | ||
CHANGELOG.md | ||
configure.ac | ||
LICENSE | ||
Makefile.am | ||
mkdocs.yml | ||
README.md | ||
setup.sh | ||
tasks.py |
CORE
CORE: Common Open Research Emulator
Copyright (c)2005-2022 the Boeing Company.
See the LICENSE file included in this distribution.
About
The Common Open Research Emulator (CORE) is a tool for emulating networks on one or more machines. You can connect these emulated networks to live networks. CORE consists of a GUI for drawing topologies of lightweight virtual machines, and Python modules for scripting network emulation.
Quick Start
Requires Python 3.9+. More detailed instructions and install options can be found here.
Package Install
Grab the latest deb/rpm from releases.
This will install vnoded/vcmd, system dependencies, and CORE within a python
virtual environment at /opt/core/venv
.
sudo <yum/apt> install -y ./<package>
Then install OSPF MDR from source:
git clone https://github.com/USNavalResearchLaboratory/ospf-mdr.git
cd ospf-mdr
./bootstrap.sh
./configure --disable-doc --enable-user=root --enable-group=root \
--with-cflags=-ggdb --sysconfdir=/usr/local/etc/quagga --enable-vtysh \
--localstatedir=/var/run/quagga
make -j$(nproc)
sudo make install
Script Install
The following should get you up and running on Ubuntu 22.04. This would install CORE into a python3 virtual environment and install OSPF MDR from source.
git clone https://github.com/coreemu/core.git
cd core
# install dependencies to run installation task
./setup.sh
# run the following or open a new terminal
source ~/.bashrc
# Ubuntu
inv install
# CentOS
inv install -p /usr
Documentation & Support
We are leveraging GitHub hosted documentation and Discord for persistent chat rooms. This allows for more dynamic conversations and the capability to respond faster. Feel free to join us at the link below.