A modern WAN Emulator
Project description
A modern WAN Emulator developed by the Institute for Networked Solutions
WEmulate
Have a look at the documentation for detailed information.
Installation
Requirements
- At least two network interfaces for
LAN-AandLAN-B - A third management interface if you would like to use the api and frontend module
- Ubuntu installed
- Root permissions
Getting Started
To install only the WEmulate cli with bash, simply run this command in your terminal of choice:
bash -c "$(curl -fsSL https://raw.githubusercontent.com/wemulate/wemulate/main/install/install.sh)"
There are different arguments available in order to enhance the installation experience:
-h Prints the help message
-f Skip the confirmation prompt during installation
-i <int1,int2> List of interfaces which should be used as management interfaces
-a Install the api module
-v Install the frontend module
You can for example install the cli, api and frontend module together with one management interface with the following command:
curl -fsSL https://raw.githubusercontent.com/wemulate/wemulate/main/install/install.sh | bash -s -- -a -v -i ens2 -f
Usage
# Add a new connection
$ wemulate add connection -n connectionname -i LAN-A LAN-B
# Delete a connection
$ wemulate delete connection -n connectionname
# Add parameters bidirectional
$ wemulate add parameter -n connectionname -j 20 -d 40
# Add parameters in specific direction
$ wemulate add parameter -n connectionname -j 20 -d 40 -src LAN-A -dst LAN-B
Development
Configure poetry to create the environment inside the project path, in order that VSCode can recognize the virtual environment.
$ poetry config virtualenvs.in-project true
Install the virtualenv.
$ poetry install
Testing
In order to test WEmulate and to use an in-memory sqlite database, the following environment variable has to be set:
export WEMULATE_TESTING=true
Install the dev dependencies:
poetry install --with dev
The tests can then be executed with pytest.
poetry run pytest
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file wemulate-2.0.5.tar.gz.
File metadata
- Download URL: wemulate-2.0.5.tar.gz
- Upload date:
- Size: 29.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5e9b4f575fdb2be4eb67af80436a05e84b12a54ff39a0211fcb6d2d70095a1a4
|
|
| MD5 |
e5c24dea9db7a6a99b8d8bcf87ff5312
|
|
| BLAKE2b-256 |
868faeb76df183168495bb514a8117deaaeb9d1194c34d69100aa29acf0150e1
|
File details
Details for the file wemulate-2.0.5-py3-none-any.whl.
File metadata
- Download URL: wemulate-2.0.5-py3-none-any.whl
- Upload date:
- Size: 41.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d6ee44842b111d6f8337790795a4eaf565e3bd86b645da5b96f98771fdef7386
|
|
| MD5 |
2d1877df7996c8f39b8852bb039c1dce
|
|
| BLAKE2b-256 |
b755b45b248e3b28c609f6772031e980e077b1966b07af4c3b4fbde47a464305
|