NoRouter (IP-over-Stdio): Unprivileged instant multi-cloud networking


NoRouter is the easiest multi-host & multi-cloud networking ever:

  • Works with any container, any VM, and any baremetal machine, on anywhere, as long as the shell access is available (e.g. docker exec, kubectl exec, ssh)
  • Omnidirectional port forwarding: Local-to-Remote, Remote-to-Local, and Remote-to-Remote
  • No routing configuration is required
  • No root privilege is required (e.g. sudo, docker run --privileged)
  • No public IP is required
  • Provides several network modes
    • Loopback IP mode (e.g.,, …)
    • HTTP proxy mode with built-in name resolver
    • SOCKS4a and SOCKS5 proxy mode with built-in name resolver
  • Easily installable with a single binary, available for Linux, macOS, BSDs, and Windows

NoRouter implements unprivileged networking by using multiple loopback addresses such as and

The hosts in the network are connected by forwarding packets over stdio streams like docker exec, kubectl exec, ssh, and whatever.

Unlike traditional port forwarders such as docker run -p, kubectl port-forward, ssh -L, and ssh -R, NoRouter provides mutual interconnectivity across multiple remote hosts.


Getting Started

How to download and install NoRouter. Please read first.


Examples for Docker, Podman, Kubernetes, LXD, SSH, …


Troubleshooting guide.

Command reference

The usage of norouter command.

YAML reference

How to write manifest YAML files.

How NoRouter works under the hood

How NoRouter works under the hood.


Project roadmap.

Similar projects

Similar projects.


NoRouter artwork images.

Last modified December 17, 2020: add artwork (c8ab035)