On This Page
Loading...

IP Addresses at Equinix Metal

COMMAND LINE

Copy to clipboard

IP Addresses at Equinix Metal

When a Equinix Metal™ server is installed, we configure management IP addresses by default. These IPs are for accessing a server administratively, for example, via SSH. It is important to consider that these IPs live and die with a server - when a server instance is deleted, its management IPs also cease to exist, and may not necessarily be assigned to any new servers created.

We also allow our customers to provision supplementary elastic IP addresses. These are special addresses which can move between servers in a project. Elastic IPs are recommended for any workload where permanent reachability is required, for example, hosting a public-facing web site behind a load balancer, or directing clients to a clustered database server internally.

Your Server's Default IP Addresses

IP addresses come in many colors, shapes, and sizes, and one size does not necessary fit all. One important distinction is "free" vs "paid". The following IP address assets are free:

  • Public IPv4 - These are public-facing Internet addresses. Unlike other cloud hosting providers, we provide raw, unfettered, access to the Internet, without any firewalling or Network Address Translation (NAT). Each new server is provisioned with a single public IPv4. This IP address cannot be retained after you delete a server.

  • Private IPv4 - These are internal (10.x.x.x) IP addresses, provided at no charge. A client project is pre-provisioned with a /25 by default; we’ll automatically replenish your supply with additional /25s as you spin up additional resources. Client servers are able to reach other private IPs belonging to their project, however clients are unable to communicate with other projects or Equinix Metal customers at these addresses.

  • Public IPv6 - We assign a (publicly routable) /56 on the project level, which is divisible into 256 /64s (“LAN subnets” in IPv6 parlance), each routable to a server. IPv6 addressing is also provided at no charge.

If you want retain your IP addresses and move them between servers, we have both "local" and "global" elastic IP addresses, which you rent from Equinix Metal on an hourly basis:

  • Elastic IPs - Clients can use our customer portal to order additional public IPv4 address space, ranging from a /32 (a single IP) through a /24 (256 IPs). Though there is no technical limit to how these IPs can be configured, we encourage you to use them responsibly, and as such we charge a nominal fee per elastic IP address ($0.005/hr or about $3.60/mo).

  • Global Anycast IPs - Global Anycast IPs are public IPv4 addresses that are pulled from Equinix Metal-owned IP space and announced in all of Equinix Metal's core facilities. These IPv4 addresses cost $0.15/hr per IP. Regular $0.05/GB outbound rates apply, and (in addition) inbound bandwidth to Global Elastic IPs costs $0.03/GB.

Deploying Without a Public IP Address

The servers provisioned on Equinix Metal get allocated a public IPv4 and IPv6 address by default. However, you might have a use-case where the server is deployed in a restricted environment and expected to have no public Internet access. It is possible to deploy your servers without public IP addresses, and it is supported for deploying on-demand, from reserved hardware, and for spot market servers.

Deploying without a public IP address is currently supported on servers with the following Operating Systems:

  • CentOS 7 and CentOS 8
  • Debian 9 and Debian 10
  • RHEL 7
  • Ubuntu 16, Ubuntu 18, and Ubuntu 20

To deploy an On-Demand server without a public IP Address, select Don't deploy with Public IPv4 and Don't deploy with Public IPv6 under Optional Settings. You can choose to deploy without either or both.

Deploying with No Public IPs for On Demand

Similarly, if you are deploying from your Reserved Hardware or ordering through the Spot Market, you can uncheck Public IPv4 and/or Public IPv6 from the IP Assignment options.

To deploy a server without a public IP address through the API, specify "public": false in the "ip_addresses" object in the body of the POST request.

 curl -X POST \
-H "Content-Type: application/json" \
-H "X-Auth-Token: <API_TOKEN>" \
"https://api.equinix.com/metal/v1/projects/{id}/devices" \
-d '{
    "metro": "<metro_code>",
    "plan": "<server_type>",
    "operating_system": "<os_slug>",
    "ip_addresses": [
        {
            "address_family": 4,
            "public": false
        },
        {
            "address_family": 6,
            "public": false
        }
    ]
}'

If you attempt to provision a server without a public IP address with an operating system that doesn't support it, you will get a “Public IPv4 is required” error in the response.

Frequently
asked questions

Slack

Still stuck?

Join us on Slack

Get support from our team and community members.

Frequently asked questions

What 3rd party Managed Services?

Neutra trust fund narwhal, palo santo bicycle rights live-edge stumptown health goth portland selfies kinfolk woke. ssss Echo park irony artisan vaporware typewriter. Next level pinterest drinking vinegar lyft mumblecore af small batch heirloom VHS. Fixie banh mi asymmetrical trust fund.

What 3rd party Managed Services?

Neutra trust fund narwhal, palo santo bicycle rights live-edge stumptown health goth portland selfies kinfolk woke. ssss Echo park irony artisan vaporware typewriter. Next level pinterest drinking vinegar lyft mumblecore af small batch heirloom VHS. Fixie banh mi asymmetrical trust fund.

What 3rd party Managed Services?

Neutra trust fund narwhal, palo santo bicycle rights live-edge stumptown health goth portland selfies kinfolk woke. ssss Echo park irony artisan vaporware typewriter. Next level pinterest drinking vinegar lyft mumblecore af small batch heirloom VHS. Fixie banh mi asymmetrical trust fund.

Copied code to clipboard