nsctl is a CLI tool for building your own network topology with pure Linux namespaces — no containers, no overhead, full control.
| Environment | Value |
|---|---|
| OS | Ubuntu 25.04 |
| Go | go1.25.5 linux/amd64 |
| Golint | v2.7.2 |
git clone https://github.com/Alonza0314/nsctl.git
cd nsctl
makeAfter built, the binary file, nsctl, will be placed in the build directory.
-
nsseriesCommand Description nsctl ns create <name>Create a new namespace nsctl ns delete <name>Delete a namespace nsctl ns listList all namespaces -
netseriesCommand Description nsctl net connect <ns1> <ns2>Connect two namespaces nsctl net disconnect <ns1> <ns2>Disconnect two namespaces nsctl net list <ns>List interfaces in a namespace nsctl net set-ip <ns> <if> <ip>Set IP address of an interface nsctl net up <ns> <if>Bring an interface up nsctl net down <ns> <if>Bring an interface down -
execseriesCommand Description nsctl exec <ns> -- <cmd>Execute a command in a namespace -
describeseriesCommand Description nsctl describe <ns>Describe a namespace -
toposeriesCommand Description nsctl topo apply <file>Apply a topology from a file nsctl topo delete <file>Delete a topology from a file
