From what I understand, Stéphane Graber's code is tailored to generate a (very) large number of nodes and study network interactions but does not provide facilities to (re)generate/individualize the role of the nodes
In MI-LXC, my aim is to achieve a smaller-scale network but with every node playing a specific role (custom apps, custom config) and in fact, most of the work is the creation of these templates rather than the lxc part. The current scenario generates an organization information system, with a DMZ (SMTP, wiki, DNS, etc.), client machines, auth server, filer, etc.
Here's a fork of mininet that can use docker containers as hosts - https://github.com/gmiotto/dockernet. I had done something similar to have mininet hosts as LXC containers. Unfortunately I had created my version for LXC 1.x I haven't had the time to upgrade it to LXC 2.0 yet.
From what I understand, Mininet is (as sgraber's) tailored to generate a (very) large number of nodes and study network interactions at level 2. It does not provide facilities to (re)generate/individualize the role of the nodes
Dockernet seems to solve this problem but (1) I did not know of it ;) and (2) it does not seem maintained. It seems quite complex to fork...
In MI-LXC, my aim is to achieve a smaller-scale network but with every node playing a specific role (custom apps, custom config) and in fact, most of the work is the creation of these templates rather than the lxc part. The current scenario generates an organization information system, with a DMZ (SMTP, wiki, DNS, etc.), client machines, auth server, filer, etc. It can of course route at level 3, I use standard linux bridges to connect containers according to the configured topology