Comments (2)
Hi @hearc-tinf,
thanks for the precious feedback!
See inline for the reply:
- mtr is not installed in the VMs (traceroute has sometimes limitations), this is easily work-aroundable and I have simply installed a buster package
We will install the mtr
package in the kathara/base
Docker Image. Thanks for the suggestion.
- It seems the container interfaces are duplicated on the host, which also means that a lot of v6 queries (ICMPv6 Router Sollicitation, notably) are done by the host itself and visible in all of the containers, even when v6 is disabled in lab.conf.
This creates noise that is easily work-aroundable by using tcpdump '!ip6' (as long as you don't do v6 labs; for those labs I am still using netkit for now).- I do some layer 2 labs where I use `brctl showmacs br0', on switches that implement a bridge (eth0, eth1): funnily, I can see all of the different containers local=yes MAC addresses, and some additional MAC addresses for the host side (where netkit would only show the local interfaces of that specific switch/UML VM) -- again, this is easily workaroundable by | egrep -v yes | egrep 00:00:00 (since ALL of my switches/pc MACs are manually set to 00:00:00:xx:yy:00 for pedagogical reasons).
There are some differences between NetKit and Kathará, the most important one is that NetKit leverages on software switches (called uml_switch
), while Kathará relies on standard Linux Bridges. Both issues 1 and 3 are related to this. In fact, the extra MAC addresses that you see are the ones sent by the Linux bridge (of the host-side of the veth). Additionally, the Linux bridge also sends IPv6 packets inside the containers if the IPv6 stack is enabled.
We are already addressing this problem by using VDE software switches to abandon Linux bridges, and we will completely change the network plugin in the next release.
Hope that this reply answers to all your questions!
Mariano.
from kathara.
Yes, it does! Thank you. I will test the next release when it becomes available.
from kathara.
Related Issues (20)
- Fix `get_images` method in `DockerHubApi` to handle new Docker Hub API format
- Add support to Debian 12 HOT 2
- Can't start frr.service HOT 5
- Warning: Pox supports only versions of Python: 3.6, 3.7, 3.8, 3.9 HOT 2
- lconfig command not checking if machine exists
- Add `lab` parameter to all `Manager` methods
- Wait `.shutdown` commands
- Add lab hash to Docker networks names
- Add `copy_directory_from_path` method to FilesystemMixin
- Kubernetes startup watch may never terminate if there is a Pod error
- Allow space in `sysctl` and `env` metas
- Add the possibility to specify a custom name for network scenario configuration file from the Python API
- Add `gnome-terminal` as terminal emulator
- "RTNETLINK answers: Operation not supported" when running traffic-control labs in MacOS HOT 4
- `tc` does not work on Windows hosts (WSL 2) HOT 1
- Use `rich` to render progress bars and add UI progress for Docker image pull
- Enable using `amd64` images on macOS using Rosetta
- UI Improvements using `rich`
- Multipath support not enabled in WSL
- API Improvements
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from kathara.