ECT Network Emulator (ENE)ENE
The controller adopts and centrally manages your network infrastructure (routers, firewalls, switches, and APs). Adopt a device to bring it under management; forget it to release it. The Dashboard tab monitors the health of every managed device.
A profile is a named config template the controller pushes to its managed devices - WiFi (AP), switch, router, firewall, or client/server. You can copy one from an existing configured device. Assign it on the Devices tab; editing the profile re-provisions every device that carries it.
The controller offers an available firmware version. Updating a device stages that version; an explicit Reboot applies it (stage, don't hot-swap). Bump the version to simulate releasing new firmware.
ENE is a browser-based network emulator. You build a topology by dragging devices from the templates panel on the left onto the canvas, wire them together, then drive each client from a Linux-style shell.
Quick directions:
help for the command list.
Paste this entire URL into your assignment submission. It must be on a single line with no spaces.
Use the State Code to share with a classmate or back up your work mid-lab.
Warning: this URL exceeds 8,000 characters and may be truncated by some browsers, email clients, or assignment-submission boxes. Consider simplifying the topology (fewer devices, fewer DHCP leases) before submitting.
Last 50 banner notifications from this session, most recent first. Cleared on page reload.
Each row is a hostname-to-IP A-record. Set an authoritative zone (SOA) so short names resolve as `
Each wall attenuates WiFi signal that crosses it. Stacking walls along a path lets a long hallway compound the loss.
A link's type sets its speed and latency. Speed caps the throughput a speed test or iperf sees across this wire; latency and jitter add to the measured ping.
Paste a state code (or a Generate URL) and the active project will be compared against it. Devices and links present only in the code are added, those only in your project are removed, and those whose configuration differs are changed.
Tick the projects to include. Existing assignment-set entries are pre-selected; new projects from your workspace start unticked.
Re-edit password (gates the next load's Save Assignment Set) is set under ☰ → Scenarios → Assignments → Assignment Set Password. The assignment-set file itself is always encrypted with a fixed password so students can't read the contents in Notepad/Excel.
This window stays open while you edit - the canvas is still live, and the preview below tracks it. Start from a saved scenario or keep (current canvas), fill in the metadata, optionally attach an answer key to make it a gradeable Assignment, and export it as a CSV or single-assignment .zip. Nothing here changes a loaded assignment set; it only produces files you save.
Tracks the canvas live.
No answer key.
Build the solution on the canvas and capture it, paste a solution state code, or - for a dual-canvas Assignment - it's auto-detected from the answer-key canvas.
Writes a leading assignment-set-info line (assignment set name, description, faculty) ahead of the header. Only emitted when the header line is included (CSV / .zip), not on a single Copy CSV row.
Heads up: the CSV row and "Copy state code" do NOT include the background image - the state code can't carry it. Use Download .zip (the same bundle as Scenarios -> Save Scenario) to package the image alongside the scenario.
ENE is a browser-based network emulator. Drag devices onto the canvas, wire them up, configure addressing and routing, then drive each client from a Linux-style shell.
Each client and server has a Linux-style shell. Type help or ? at the prompt for the full list of available commands. Most commands also accept -h or --help for per-command usage.
Common commands you'll use:
ifconfig, ip a: show interface addressesdhclient: request a DHCP leaseping, traceroute, dig: reach other hostsroute, ip r: show the routing tableEvery ping, DHCP request, and web fetch animates as a colored ball riding the wire it actually travels. The pill group in the upper-left sets the pace:
.zip from your desktop onto the window to open it. It loads as a new project, so nothing you already have is disturbed.The Cloud device simulates the public Internet. It only responds to a fixed list of host/IP pairs called Internet destinations. Anything not on the list reaches the cloud and times out, just like an unreachable address on the real Internet.
http, dns, ssh. ping and traceroute work for any listed destination, but curl / wget need http, dig needs dns, and ssh needs ssh. Connections to a service the destination doesn't advertise are refused.ENE - ECT Network Emulator
https://www.ohio.edu/scripps-college/mcclure
https://github.com/OHIO-ECT/ene
© 2026 Douglas R. Bowie and Brandon A. Saunders. All rights reserved.
A walkthrough is a JSON array of step objects:
{ id, target: { hostname: "PC1" } | null, title, body }.
On Save the array is attached to this project's wrapper (never to the
topology, so it doesn't leak into student Generate URL output).
Use Shift+Enter for newline. Ctrl+Enter to save.