Back

Blog details

Explore How IPFS Gateway Works Across Decentralized Networks

AIOZ Network
6 min readJuly 24, 2026
ipfsaioz-pin
learn-the-way-IPFS-gateway-works-across-decentralized-networks

An IPFS gateway is what lets a regular web browser open decentralized content without running an IPFS node itself. Type a gateway URL, or click a link to one, and the underlying request, resolve a CID, fetch the data from whichever peers actually have it, translate the result into an HTTP response, happens entirely on the gateway's side. That bridge between Web2 browsers and a peer-to-peer network is why gateways matter, and this article covers exactly how a request moves through one, the different ways a gateway URL can be structured, and where a dedicated gateway changes the picture.

TL;DR:

  • An IPFS gateway translates a CID-addressed request into a normal HTTP response, so any browser can load IPFS content without running a node
  • Gateway URLs come in three structurally different forms: path-based, subdomain-based, and DNSLink, and the choice matters for security, not just cosmetics
  • Path-based URLs don't provide origin isolation per CID and are unsuitable for hosting interactive web apps; subdomain-based URLs do isolate each CID to its own origin and are the recommended form for that use case
  • A "trusted" gateway response has to be taken on faith; a "trustless" gateway request lets the client cryptographically verify the returned data actually hashes to the CID it asked for
  • AIOZ Pin's premium gateway is a dedicated, non-rate-limited access point, a different lever than trustless verification, since it changes who's serving the content rather than how the response gets checked

What an IPFS Gateway Actually Does

An IPFS gateway is a service that lets users retrieve content stored on the InterPlanetary File System through an ordinary web browser, without running an IPFS node themselves. Instead of a client resolving a CID and fetching data peer-to-peer, the gateway does that work on the client's behalf and hands back a standard HTTP response. This is the single biggest reason IPFS content is usable by anyone with a browser rather than only by people running their own node, and it's why gateways sit at the center of nearly every consumer-facing IPFS integration, from NFT marketplaces to decentralized site hosting.

How a Request Actually Moves Through a Gateway

A gateway request breaks down into four steps, and each one matters for understanding what a gateway is and isn't doing.

Content request. The flow starts when a browser sends a standard HTTP request to a gateway URL, either typed directly or followed as a link, exactly like requesting any other web page.

CID resolution. The gateway extracts the Content Identifier from the URL. The CID is the unique, hash-derived fingerprint of the requested content, and it's what the gateway uses to figure out exactly what data is being asked for.

Content retrieval. The gateway locates and fetches the data associated with that CID. Since IPFS content can exist on multiple nodes simultaneously, the gateway can pull from whichever available peer is holding or pinning it, which is part of what gives IPFS retrieval its redundancy.

HTTP translation and delivery. Once retrieved, the gateway converts the response into a standard HTTP format and delivers it back to the browser. From the user's side, it looks and behaves exactly like loading a normal web page, even though the content came from a peer-to-peer network underneath.

Three Ways a Gateway URL Can Be Structured

What's less commonly explained is that a gateway URL isn't just one format, it's one of three, and the difference isn't cosmetic. Per IPFS's own documentation, gateways support three resolution styles:

  • Path-based: https://{gateway}/ipfs/{CID}/{optional path}. The simplest form, but it doesn't provide origin isolation between different pieces of content, since everything shares the gateway's own origin. That makes it unsuitable for hosting interactive web applications, where one piece of malicious content could otherwise access another's data through the browser's same-origin trust model.
  • Subdomain-based: https://{CID}.ipfs.{gateway}/{optional path}. Each CID gets its own subdomain, and therefore its own browser origin, which is what actually enforces the same-origin policy correctly. This is the recommended form for anything that needs to behave like a real, isolated web app rather than a static file download.
  • DNSLink: resolves a human-readable domain to IPFS content via a DNS TXT record (_dnslink.{domain} containing dnslink=/ipfs/{CID}), so a request to a normal-looking domain name transparently resolves to the current CID behind it, no gateway URL structure visible to the visitor at all.

Picking the right one is a real decision, not just a style preference: a marketplace embedding user-uploaded IPFS content in an iframe needs subdomain isolation for the same reason a browser needs origin isolation for any other untrusted content; a one-off link shared for someone to view a file is fine as a path-based URL.

Trusted vs. Trustless: What "Verifying" a Gateway Response Means

There's a second axis worth separating from the URL format entirely: whether the response can be checked, or has to be taken on faith. A trusted gateway response is exactly that, trusted; the client has no way to confirm the bytes it received actually correspond to the CID it asked for, short of asking a second gateway and comparing. A trustless gateway request is built so the client can cryptographically verify the response itself, checking that the returned data actually hashes to the requested CID, without needing to trust the gateway operator's honesty at all. This series covers the trustless verification flow in full elsewhere; the short version here is that trustless verification and gateway type (path, subdomain, DNSLink) are two independent things, not the same decision.

Public vs. Dedicated Gateways

Feature Public Gateway Dedicated Gateway
Access Open to everyone Restricted to a specific project
Setup No setup required Requires configuration
Rate limits Subject to shared public rate limits Not subject to the standard public-gateway rate limits
Performance Can degrade under heavy shared traffic More stable and predictable
Cost Usually free Included with a pinning/storage plan

Public gateways are the right call for quick, one-off access. Anything serving production traffic, an NFT marketplace resolving metadata on every page view, a dApp loading user assets, benefits from a dedicated gateway specifically because it isn't sharing capacity, or rate limits, with the rest of the internet.

Common Use Cases

  • Website hosting: serving a decentralized site's files through a gateway so any browser can load it directly.
  • NFT metadata: resolving off-chain metadata and media stored on IPFS, reliably and at the volume a marketplace actually needs.
  • DApp asset loading: letting a decentralized application fetch IPFS-stored data without requiring every visitor to run a node.
  • General content delivery: using gateway infrastructure as a practical CDN layer for IPFS-hosted content at global scale.

Where AIOZ Pin's Premium Gateway Fits

Everything above describes what any IPFS gateway does structurally. AIOZ Pin's premium gateway is a dedicated, non-rate-limited version of that same mechanism: a private access point serving a specific project's pinned content directly, without competing against the public gateway's shared traffic. It's a different lever than trustless verification, one changes who's serving the response, the other changes whether the response can be checked, and the two are worth understanding as separate decisions rather than one bundled feature.

Frequently Asked Questions

What is an IPFS gateway? A service that translates requests for IPFS content, addressed by CID, into standard HTTP responses a normal web browser can load, without the user needing to run an IPFS node.

What's the difference between a path-based and a subdomain-based gateway URL? A path-based URL (/ipfs/{CID}) doesn't isolate different content into separate browser origins. A subdomain-based URL ({CID}.ipfs.{gateway}) gives each CID its own origin, which is required for hosting interactive web apps safely.

What is DNSLink? A way to point a normal-looking domain name at IPFS content using a DNS TXT record, so visitors see a human-readable domain instead of a raw gateway URL or CID.

What does it mean for a gateway response to be "trustless"? It means the client can cryptographically verify the returned data actually matches the requested CID, instead of simply trusting the gateway operator's response.

Why would I use a dedicated gateway instead of a public one? A dedicated gateway isn't subject to the rate limits shared public gateways enforce, so performance stays stable under production traffic instead of degrading during periods of heavy shared use.

Do I need to run my own IPFS node to use a gateway? No. That's the entire point of a gateway, it does the CID resolution and network retrieval on the client's behalf, so a standard browser is all that's needed.

References

We only send updates when meaningful changes ship, and you can unsubscribe anytime

Related Content

blog thumbnail

Content Moderation on IPFS: What Actually Happens

Pinning services can remove their own copy of a file. They cannot remove it from IPFS. Here is exactly what a takedown does and does not accomplish.

5 min readSeptember 12, 2026
blog thumbnail

IPFS Transports: TCP vs. QUIC Explained

libp2p connections can run over more than one transport. Here is exactly what changes with QUIC instead of TCP, and why IPFS dials both at once.

5 min readSeptember 11, 2026
blog thumbnail

GossipSub: How IPFS's PubSub Layer Actually Works

The DHT answers who has a CID. GossipSub answers a different question: how do peers push real-time updates to everyone listening, without a lookup at all.

5 min readSeptember 10, 2026
blog thumbnail

Helia: IPFS's Modern JavaScript Implementation

js-ipfs is deprecated. Helia is what replaced it: a modular, TypeScript-first IPFS implementation built for the browser and Node.js. Here is how it fits.

5 min readSeptember 09, 2026
blog thumbnail

IPLD Selectors: Fetching Part of a DAG, Not All of It

Not every retrieval needs the whole DAG. IPLD Selectors describe exactly which nodes to traverse and match, so a client can fetch a slice, not everything.

5 min readSeptember 08, 2026
blog thumbnail

ipfs:// in the Browser: How It Actually Works

Almost no browser understands ipfs:// links natively. Here is exactly why, what IPFS Companion actually does about it, and why gateway URLs took over instead.

5 min readSeptember 07, 2026