ngrok works everywhere. But more than that, it works the same everywhere.You can run your services in AWS, GCP, or Azure.
You can run services in your on-prem data centers or on IoT devices like a Raspberry Pi.
You can run your services on hosted container platforms like Heroku, Render, or Fly.
You can even run services on your laptop.
ngrok works the same in any environment and on any network.
ngrok consolidates the traditional pile of ingress tools into one platform.Traditionally, creating ingress for your application services requires
stitching together multiple different software components. There’s a reverse
proxy, load balancer, API gateway, firewall, delivery network, WAF, application middleware, DDoS protection and more.ngrok collapses these components into a platform with unified configuration
and observability.
ngrok helps you deliver your app to production sooner.Making your app production-ready requires a lot of setup work to secure it with
authentication, protect it from attacks and accelerate its traffic so that it’s
fast. ngrok does all of that automatically for you so you can focus on building
your app and not networking configurations.
Don’t build auth again. Or rate-limiting. Or other undifferentiated
functionality. You can offload it to ngrok instead.ngrok’s module system enables you to spend less time building table-stakes functionality
and more time building new features for your app instead. You and your team won’t need to rebuild the same scaffolding systems over and over again.
ngrok helps you stop working with the assembly language of networking.For as much as we’ve abstracted away developer complexity with high-level languages, we still expect software engineers to wrestle with arcane networking minutia.
ngrok abstracts away the complexity of low-level concepts like CIDRs, ports, and TLS Certificates, and instead provides you with control over application primitives like authentication and request routing.
ngrok establishes contractual application control of your ingress platform.Great software is built on well-defined contracts between components. As more
business logic is pushed to proxies in front of the application, the contract
between the reverse proxy and the upstream application becomes critical.
Unexpected changes in behavior between them cause incidents. Traditionally,
that contract is implicitly defined in IT tickets.ngrok’s Agent SDKs change that. Instead, the application itself defines via API
exactly what operations it expects the ingress platform to perform on its
behalf and how it expects to receive information about those behaviors.This is a new, safer programming model where developers can safely offload
additional functionality to the ingress platform without fear of the contract
being broken.
Get started without a huge bill.Unlike other networking software that has unpublished pricing that only enterprises can afford, anyone can get started using the paid features of ngrok with just a credit card.
ngrok’s pricing is public and predictable: you pay only for what you use.
ngrok eliminates bugs that arise from differences between local dev and production environments.We’ve all felt the pain of something failing in production that worked while we were testing it locally.
Because ngrok works everywhere, you can run it on your local development environment exactly the same way you run it to deliver your production service.
ngrok reduces your operational burden by operating the global delivery network
for you.A global delivery network accelerates your application, but it’s a real pain to
operate. Unlike deployable network software that you need to configure and run
yourself, ngrok is a completely managed global service. You can spend less time
operating networking infrastructure and puzzling over missing packets and more
time building value for your customers.
ngrok accelerates your apps for global clients.In addition to using its global server load balancing to improve speeds for
your application’s clients by reducing TCP and TLS setup round-trip times,
ngrok also pushes any module behaviors you configure to ngrok’s cloud service as well
so authentication, transformations, load balancing and more happen as close to
your customers as possible.
ngrok finally achieves true per-workload layer 4 networking security.Traditional networking architectures often permit applications to speak to each
other directly when they’re colocated on the same network without going through
the ingress gateways which enforce auth and policy. This is ultimately the same
security risk that motivated Google to create its BeyondCorp zero-trust architecture model. ngrok
achieves true network isolation for applications without any complex networking
policy so that the only way to access them is via their endpoint URL, even if
they’re running next to each other.