Oracle Cloud, Google Cloud, AWS, Microsoft Azure, Hetzner
- Free allowance
- Oracle Always Free includes 1,500 OCPU-hours and 9,000 GB-hours a month plus 10 TB/month of egress, on a card that takes a USD 1.00 authorisation and reverses it.
- Verdict
- fails: egressdata cannot be read back out at a usable rate or price
- Cost
- free tierpaid plans from USD 3.65/month
- Identity
- cardcard required, no phone
- Binding limit
- retention-clamped7-day p95 idle reclaim on Oracle Always Free: the machine is taken back and the address with it
- Evidence
- documented28 sources; a first-party page was read and the sentence quoted
- Freshness
- stale on 2026-12-04checked 2026-11-03 (live); stale on 2026-12-04
| Free tier | Oracle Always Free includes 1,500 OCPU-hours and 9,000 GB-hours a month plus 10 TB/month of egress, on a card that takes a USD 1.00 authorisation and reverses it. Google Cloud's free tier includes an e2-micro with 1 GB/month of egress. AWS includes 750 public-IPv4 hours a month. Azure and Hetzner record no free allowance: Azure's price cells all render as $- and Hetzner's /29 is sold at EUR 13.60/month plus EUR 34.90 setup. unit mixed; metered on wall-clock; The unit is genuinely mixed: Oracle's and AWS's free allowances are hour-denominated (OCPU-hours, GB-hours, 750 hours) and the egress allowances are byte-denominated (10 TB/month, 1 GB/month). metered_on names the hour because that is the shape of the headline quota. |
|---|---|
| Price | not a per-TB product: addresses are billed per hour or per prefix — USD 0.005/h, USD 3.65/month, per address on Google Cloud and AWS; EUR 2.27 per usable IP per month on Hetzner; Azure unverified |
| Limits |
Three constraints fit none of the seven. Cost: Hetzner's /29 is EUR 13.60 a month plus EUR 34.90 setup, EUR 2.27 per usable IP, and AWS and Google Cloud charge USD 0.005/h per address, USD 3.65 a month. Unverified price: Azure offers a /29 public IP prefix but every price cell on its pricing page renders as $-, so the price of that prefix is unverified rather than zero. Denominator: the five publish different address products — a prefix, a single address, a subnet — so the per-address cost is comparable and the capacity is not. |
| Binding | retention-clamped At 45 GB a month across about 599,000 requests nothing here is near a byte or request ceiling except Google Cloud's 1 GB/month free egress, and crossing that produces a bill rather than a stop; Oracle's 7-day p95 idle reclaim is the only constraint that removes the address, so it is the one that ends the arrangement. |
| Identity | card Oracle's Always Free tier takes a card and reverses a USD 1.00 authorisation; that is the signup gate the facts establish, and it is recorded for Oracle only. The other four providers' signup gates were not re-tested, so nothing here claims they are lighter or heavier. |
| Egress | Metered, with a large free allowance on Oracle and a small one on Google Cloud: Oracle includes 10 TB/month on Always Free, Google Cloud's free e2-micro includes 1 GB/month, and AWS bills the address itself at USD 0.005/h with 750 free hours. Hetzner bills a /29 at EUR 13.60/month plus EUR 34.90 setup. Azure's address prices render as $- and are unverified. free allowance: Oracle 10 TB/month on Always Free; Google Cloud free e2-micro 1 GB/month; AWS 750 public-IPv4 hours/month |
| Retention | not applicable: an address, not an object. The nearest equivalent is the instance holding it: Oracle reclaims an Always Free compute instance that sits at 7-day p95 idle, and the address goes with the machine. |
| Interface | rest, cli Each provider exposes its own REST API and CLI for address objects, so rest is the nearest token in the closed set and cli is the other half. The schema's enum has no token for a cloud provider API and none for a subnet product. The address is a resource in the account: an external IPv4 on Google Cloud, a public IPv4 on AWS, a public IP prefix on Azure, a subnet on Hetzner, a public IP on an Oracle VNIC. |
| Tooling | The provider's own REST API, SDK and CLI. No third-party wrapper exists or is needed, because the address is a resource in the account rather than a product with its own protocol. A user's work is a small driver that creates an instance, attaches the address, and recreates it when the provider takes the machine back — access is not the problem here. |
| Composes with | One of these sits behind the Workers AI gateway as the egress hop: the Worker calls the instance, the instance dials out from a cloud address, and because every one of the five is a single ASN the chain buys a second provider rather than a second network. |
| Reliability | All five are datacenter ranges registered to the cloud provider itself or to one of its own entities (ARIN DIRECT ALLOCATION for Oracle, Google Cloud and Azure; ARIN ALLOCATION for AWS; RIPE ASSIGNED PA for Hetzner), so an exit carries that cloud ASN's reputation, and on Oracle the address disappears with the reclaimed machine. |
| Notes | What this record is for. The compute topic owns the prices: compute/oracle-cloud, compute/google-cloud-free-tier, compute/aws-free-plan-t4g and compute/hetzner-cloud each carry the free-tier shape and the egress terms, and this record does not correct any of them. A reader wanting a price goes there; a reader wanting the network position comes here, and neither record is a view of the other. One sample, said plainly. The RDAP read is a single address, 129.146.0.1, from a single provider, and the allocation class of the other four is inferred from their ASN ownership plus the fact that each sells cloud compute out of its own ranges rather than from an RDAP object of their own. The class claim would be measured for all five with one RDAP lookup per provider, which was not run; nothing in the verdict turns on which of them is a direct allocation, only that none of them is a residential or resold-end-user network. Denominators, recorded rather than smoothed. The assigned facts count Oracle's 3,861 as announced prefixes and the other three as IPv4 only. Re-read: AS31898 3,861 total and 2,852 v4; AS396982 3,924 total and 3,558 v4; AS16509 25,440 total and 19,416 v4; AS8075 1,355 total and 1,233 v4; AS24940 96 total and 91 v4. So Google Cloud's 3,558 and Azure's 1,233 reproduce exactly, Oracle's 3,861 is the total, and AWS's 19,507 had become 19,416 within the same day, which is announcement churn rather than a contradiction. The conclusion does not turn on any of these numbers being exact: it turns on each provider having one ASN and one allocation. Hetzner's ASN was not in the assigned facts. It was read as AS24940 HETZNER-AS Hetzner Online GmbH, 96 announced prefixes, so the fifth provider's registration is measured rather than borrowed, and the record says where the addition came from. Nothing else was added to the assigned facts. What a static fetch can and cannot re-prove. |
| Evidence note | documented The ASN numbers and holders are measured with RIPE prefix-overview and the allocation class is measured for all five providers with one registry lookup each (ARIN for Oracle, Google Cloud, AWS and Azure; RIPE for Hetzner), on one address per provider. The free-tier and price fields are vendor-page reads, so the weakest rung the verdict depends on is documented, not measured. |
| Parsed numbers |
|
Evidence 28
| date | source | what it proved |
|---|---|---|
| 2026-10-24 | probe: stat.ripe.net/data/as-overview?resource=AS31898 | AS31898 holder is ORACLE-BMC-31898 - Oracle Corporation and the ASN is announced; re-read, so the AS name is measured rather than remembered. |
| 2026-10-24 | probe: stat.ripe.net/data/announced-prefixes?resource=AS31898 | 3,861 prefixes announced, of which 2,852 are IPv4, so the record's 3,861 is a total and not a v4 count. |
| 2026-10-24 | rdap.arin.net/registry/ip/129.146.0.1 | RDAP object NET-129-144-0-0-1, name OPC1, type DIRECT ALLOCATION, covering 129.144.0.0-129.159.255.255: the address is a provider direct allocation, not a resold end-user block. |
| 2026-10-24 | probe: stat.ripe.net/data/as-overview?resource=AS396982 | AS396982 holder is GOOGLE-CLOUD-PLATFORM - Google LLC. |
| 2026-10-24 | probe: stat.ripe.net/data/announced-prefixes?resource=AS396982 | 3,558 IPv4 prefixes out of 3,924 announced, reproducing the assigned v4 figure exactly. |
| 2026-10-24 | probe: stat.ripe.net/data/as-overview?resource=AS16509 | AS16509 holder is AMAZON-02 - Amazon.com, Inc. |
| 2026-10-24 | probe: stat.ripe.net/data/announced-prefixes?resource=AS16509 | 19,416 IPv4 prefixes out of 25,440 announced at re-check, against 19,507 assigned earlier the same day, so the count is a snapshot that moves within a day and the finding is order of magnitude. |
| 2026-10-24 | probe: stat.ripe.net/data/as-overview?resource=AS8075 | AS8075 holder is MICROSOFT-CORP-MSN-AS-BLOCK - Microsoft Corporation. |
| 2026-10-24 | probe: stat.ripe.net/data/announced-prefixes?resource=AS8075 | 1,233 IPv4 prefixes out of 1,355 announced, reproducing the assigned v4 figure exactly. |
| 2026-10-24 | probe: stat.ripe.net/data/as-overview?resource=AS24940 | AS24940 holder is HETZNER-AS Hetzner Online GmbH; this ASN was not in the assigned facts and was read, so the fifth provider's registration is measured rather than assumed. |
| 2026-10-24 | probe: stat.ripe.net/data/announced-prefixes?resource=AS24940 | 96 prefixes announced, 91 of them IPv4, an order of magnitude smaller than any of the four clouds and the whole of Hetzner's single registration. |
| 2026-10-24 | www.oracle.com/cloud/free/ | Oracle Always Free states 1,500 OCPU-hours and 9,000 GB-hours a month plus 10 TB/month of egress, with a card and a reversed USD 1.00 authorisation; the served HTML carries no static copy of those figures, so re-proving them needs the rendered page. |
| 2026-10-24 | cloud.google.com/vpc/pricing | The external IP address pricing line reads 0.005 / 1 hour in the static HTML, which is USD 0.005 per external IPv4 hour, about USD 3.65 a month. |
| 2026-10-24 | aws.amazon.com/free/ | AWS's free tier lists 750 public-IPv4 hours a month and public IPv4 at USD 0.005/h. |
| 2026-10-24 | azure.microsoft.com/en-us/pricing/details/ip-addresses/ | Every price cell renders as <span class='price-value'>$-</span> carrying data-hide-meter-type-if-no-price='true', so the Azure address price is unverified rather than zero; the /29 public IP prefix product is the assigned fact and the string did not appear in the static HTML, so that half is not re-proved here. |
| 2026-10-24 | www.hetzner.com/cloud/ | Hetzner's cloud page is the price source for the contiguous /29 at EUR 13.60/month plus EUR 34.90 setup, EUR 2.27 per usable IP. |
| 2026-11-03 | probe: rdap.arin.net/registry/ip/34.80.0.1 | 34.80.0.1 lies in NET-34-64-0-0-1 (name GOOGL-2, 34.64.0.0-34.127.255.255), a DIRECT ALLOCATION registered to Google LLC. |
| 2026-11-03 | probe: rdap.arin.net/registry/ip/3.5.140.1 | 3.5.140.1 lies in NET-3-5-0-0-1 (name AMAZON-S3, 3.5.0.0-3.5.255.255), an ALLOCATION registered to Amazon Data Services Northern Virginia, parent NET-3-0-0-0-1. |
| 2026-11-03 | probe: rdap.arin.net/registry/ip/20.36.0.1 | 20.36.0.1 lies in NET-20-33-0-0-1 (name MSFT, 20.33.0.0-20.128.255.255), a DIRECT ALLOCATION registered to Microsoft Corporation. |
| 2026-11-03 | probe: rdap.db.ripe.net/ip/88.198.0.1 | 88.198.0.1 lies in 88.198.0.0 - 88.198.15.255 (name HETZNER-RZ-NBG-NET, country DE), an ASSIGNED PA object with parent 88.198.0.0 - 88.198.255.255. |
| 2026-11-03 | probe: www.gstatic.com/ipranges/cloud.json | Google publishes 34.80.0.0/15 (service Google Cloud, scope asia-east1) in its cloud.json range list, creationTime 2026-11-02T18:07:01.260033. |
| 2026-11-03 | probe: docs.oracle.com/iaas/tools/public_ip_ranges.json | Oracle publishes 129.146.0.0/21 (region us-phoenix-1, tag OCI) in its public_ip_ranges.json, last_updated_timestamp 2026-10-28T02:47:53.012304. |
| 2026-11-03 | probe: rdap.arin.net/registry/autnum/396982 | ARIN aut-num AS396982 has name GOOGLE-CLOUD-PLATFORM, registrant Google LLC. |
| 2026-11-03 | probe: rdap.arin.net/registry/autnum/16509 | ARIN aut-num AS16509 has name AMAZON-02. |
| 2026-11-03 | probe: rdap.arin.net/registry/autnum/8075 | ARIN aut-num block AS8068-AS8075 (which holds AS8075) is named MICROSOFT-CORP-MSN-AS-BLOCK, registrant Microsoft Corporation. |
| 2026-11-03 | probe: rdap.arin.net/registry/autnum/31898 | ARIN aut-num AS31898 has name ORACLE-BMC-31898, registrant Oracle Corporation. |
| 2026-11-03 | probe: rdap.db.ripe.net/autnum/24940 | RIPE aut-num AS24940 has as-name HETZNER-AS, registrant organisation ORG-HOA1-RIPE Hetzner Online GmbH. |
| 2026-11-03 | probe: rdap.arin.net/registry/ip/129.146.0.1 | 129.146.0.1 lies in NET-129-144-0-0-1 (name OPC1, 129.144.0.0-129.159.255.255), a DIRECT ALLOCATION registered to Oracle Corporation. |
More fields 10
| rung | 4 |
|---|---|
| rung note | Rung 4 is confirmed for all five providers by ASN and announced-prefix reads on 2026-10-24, and rung 5 was tested and is not a diversity route, because a bigger prefix out of one direct allocation is the same registration rather than a second network. |
| asns | {"AS31898": "ORACLE-BMC-31898 - Oracle Corporation","AS396982": "GOOGLE-CLOUD-PLATFORM - Google LLC","AS16509": "AMAZON-02 - Amazon.com, Inc.","AS8075": "MICROSOFT-CORP-MSN-AS-BLOCK - Microsoft Corporation","AS24940": "HETZNER-AS Hetzner Online GmbH, read and not in the assigned facts"} |
| prefix counts | {"AS31898": {"announced": 3861,"ipv4": 2852},"AS396982": {"announced": 3924,"ipv4": 3558},"AS16509": {"announced": 25440,"ipv4": 19416},"AS8075": {"announced": 1355,"ipv4": 1233},"AS24940": {"announced": 96,"ipv4": 91},"assigned_v4_counts": {"AS396982": 3558,"AS16509": 19507,"AS8075": 1233},"note": "Oracle's assigned 3,861 is the announced total, the other three assigned figures are IPv4 only, and AWS moved from 19,507 to 19,416 between the first count and the re-check."} |
| rdap allocation | {"address": "129.146.0.1","handle": "NET-129-144-0-0-1","netname": "OPC1","type": "DIRECT ALLOCATION","range": "129.144.0.0-129.159.255.255","source": "https://rdap.arin.net/registry/ip/129.146.0.1"} |
| address products | {"oracle": "public IP on a VNIC, inside the Always Free allowance","google_cloud": "external IPv4, USD 0.005/h in use","aws": "public IPv4, USD 0.005/h, 750 free hours a month","azure": "/29 public IP prefix, price unverified","hetzner": "contiguous /29, EUR 13.60/month plus EUR 34.90 setup, EUR 2.27 per usable IP"} |
| azure price render | every price cell is <span class='price-value'>$-</span> with data-hide-meter-type-if-no-price='true', so the prefix price is unverified rather than zero |
| prices owned elsewhere | ["compute/oracle-cloud","compute/google-cloud-free-tier","compute/aws-free-plan-t4g","compute/hetzner-cloud"] |
| confidence corrected | Was measured. |
| registration class | {"oracle": "ARIN DIRECT ALLOCATION: NET-129-144-0-0-1 (OPC1), 129.144.0.0-129.159.255.255, registrant Oracle Corporation; looked up 129.146.0.1, inside 129.146.0.0/21 published in Oracle's public_ip_ranges.json","google_cloud": "ARIN DIRECT ALLOCATION: NET-34-64-0-0-1 (GOOGL-2), 34.64.0.0-34.127.255.255, registrant Google LLC; looked up 34.80.0.1, inside 34.80.0.0/15 published in Google's cloud.json","aws": "ARIN ALLOCATION: NET-3-5-0-0-1 (AMAZON-S3), 3.5.0.0-3.5.255.255, registrant Amazon Data Services Northern Virginia, parent NET-3-0-0-0-1; looked up 3.5.140.1","azure": "ARIN DIRECT ALLOCATION: NET-20-33-0-0-1 (MSFT), 20.33.0.0-20.128.255.255, registrant Microsoft Corporation; looked up 20.36.0.1","hetzner": "RIPE ASSIGNED PA: 88.198.0.0 - 88.198.15.255 (HETZNER-RZ-NBG-NET), country DE, parent 88.198.0.0 - 88.198.255.255; looked up 88.198.0.1","note": "one address looked up per provider; the registries carry no IP-type field, so the class is the registry object type and registrant"} |
Unknown values 1
- per object cap stated: the field does not apply to this kind of offer
Corrections
- 2026-10-24 Corrected on 2026-10-24: egress/anchoredip, ip-proxy/anchoredip-registration-corrected, ip-proxy/clouds-as-exit-sources and 1 more record