I've tested it last week and doesn't seems to use real network at all :))All emulated network stuff works internal in memory or something...No open ports are found in any running IOU instance.Only the 'wrapper' redirect the output from a instance to a TCP port.

Quote:

-u <n> UDP port base for distributed networks

Not sure what this command should do, but has no effect.Probably with something else added inside 'NETMAP' file.

For real network interconnectivity you will also need 'IOUlive' :))So without this it is impossible to be interconnected with Dynamips.

PS: Honestly I prefer Dynamips more then IOU (at least the version I found)

It uses UNIX domain sockets. Interesting enought according to a comment on the webpage above it is possible to use UDP tunnels.

Code:

An addition to all that: IOU across boxes works!!!Specify 1:0/0 2:0/[email protected] in NETMAP file.Both local and remote hostnames must be resolvable by DNS or /etc/hosts to their respective LAN IPs and not 127.0.0.1, otherwise IOU will bind on 127.0.0.1 and will not accept any connections. The base port used is UDP 49000 (e.g. for id 10 is 49010).I also noticed you cannot use the same local and remote ids, but this is acceptable IMHO.Thanks

#Create a demo NETMAP with a connection between a IOU and Dynamips using UDP#Interconnecting IOU R10 e0/0 with a Dynamips Cloud (nio_udp) thru GNS3#seems that you can add also a ip address instead of 'realhost'echo "10:0/0 11:0/[email protected]" > NETMAP

Added a Dynamips router and a cloud with a nio_udp connection.Here the hostnames and interfaces numbers doesn't have any relevance, but I correlated them with IOU stuff...

Attachment:

nio_udp.jpg [ 11.87 KiB | Viewed 47187 times ]

Enabled interface fa0/0 on R11 and assigning ip address 1.1.1.2/24

Connectivity test between those two routers... (unsuccessfully)In this attached capture file "wireshark_realnic_capture_udp_traffic.pcap" it all goes great from one side to the other of the UDP tunnel.Also adding the option '-t' for IOU (Netio message trace) confirms that the communication is working between those parts.Pushing some pings from Dynamips side, but no replies comes back, IOU it only sends keepalives and CDP at that moment.R11 has a static ARP configured for R10 to force the ping...

But after starting a new capture on R11 fa0/0 "R11_to_C1.cap" traffic coming from IOU is pretty weird and for sure IOU sees Dynamips traffic in the same way :))

Attachment:

sample_packet_compare.jpg [ 220.81 KiB | Viewed 47390 times ]

By looking at two packets (capture from dynamips) for example CDP, the one from IOU comes in a different format...So, a different decoder/encoder has to be used in between to make this possible!Not sure what is the binary difference between formats at this hour, (almost 3AM) ;))

heh, pretty funny I kind of expected this to work. Looking on the CDP example in the zip it seems like the IOU capture:1. has the source and destination MAC in wrong order2. the SNAP header for CDP is "aa aa 03 00 00 0c 20 00" which is also present in IOU capture but somehow shifted

I am not aware of any "encodings", isn't that what the Ethernet standard is suppose to be for?

What I mean is that Dynamips (with a new nio UDP type - "NIO_IOU") should "understand" and convert to Ethernet traffic coming from IOU and send specific traffic back in the IOU style.

Technically, its possible, but its not that simple when you look at a bigger picture (tried to explain this in my Howto in the dynamips chapter).

The technical implementation for UDP "translation" is simple for a point to point-style connection between one IOU and one dynamips instance. Ive implemented this with a udp socket to get dynamips connectivity. After thinking through the next steps (see below) and disappointing coding effort, I stopped everything and made sort of a ioulive replacement, to finish this journey with something that works and can be documented.

As soon as you want to connect more than one interface per IOU instance to something else, like dynamips, you need some sort multiplexing logic. Potentially, many external udp connector pairs will go into the single IOU socket and vice versa. Not hard, but cumbersome to implement outside of dynamips wrappers.

Furthermore, people want comfort by abstracting topologies. Dynagen does a good job - like figuring out interface mappings and PA placements. IOU is really poor in this regard. You can specify the amount of interfaces, but without .iourc file tweaking, its always: "Ethernet PA" first, "Serial PA" last. To get some comfort, dynamic generation of IOU resource files with the help of external scripts is a must have.

To sum this up, simple udp connector is possible right now (or the dummy interface method ive shown in the howto), but it makes sense only for a single or a few "point to point"-style links.

Who is online

Users browsing this forum: No registered users and 2 guests

You cannot post new topics in this forumYou cannot reply to topics in this forumYou cannot edit your posts in this forumYou cannot delete your posts in this forumYou cannot post attachments in this forum