I've been using IOU Web for network emulation.
"Cloud" device is the bridge between internal devices (such as routers within IOU) and external devices (such as PCs, a real/virtual router outside of IOU, etc.).
I'm not going to get into the details of how to set up VMware network or IOU. There are plenty of documents online about that.
What I'm going to share is the solution to a weird problem.
I wanted to build a simple lab as shown below. Two LAN segments are connected via two routers back-to-back.
NETMAP file and device config as below.
Pretty straight forward, right? But the problem is - I cannot turn on device 1 (LAN1). Notice that device "LAN1" stays in red below which means it's off.
I scratched my head for quite a while. Tried to tweak the parameters, device ID, naming, IOU host, VMware Network Editor. No avail.
Then I looked at the logs and noticed the following:
Why it asked me check the NETMAP file? I don't see any error there. What is "instance"? Why is it not found?
After a little bit research, I realized "instance" is the same as "device". As shown in the diagram above, we have four instances - 1, 2, 3 and 4.
We have problem with instance 1 (LAN1), which is connecting (referencing) instance 2 (R1). If the system was complaining about "instance not found", it can only be 1 or 2.
I also noticed that instance 4 (LAN2) always works. What's the difference between 1 and 4?
It turns out that in NETMAP file (connection definition), the "cloud" device cannot be the preceding one. The "correct" NETMAP should be written like this:
Notice that instead of "1:0/0 2:0/0", I swap them and make it "2:0/0 1:0/0". Then try to start the LAN1 device. There we go:
This seems to be a software bug. But the point is - a good engineer should be able to recognize the pattern from the symptom, perform deductive reasoning, and propose possible solution. :)