Networking.
Configuring Networking
Your assigned IPs, gateway, and interface name can be found in your onboarding
email, or by messaging us. Throughout this guide, YOUR_PUBLIC_IP refers to
your routable 23.131.76.x address, and YOUR_PRIVATE_IP refers to the native
address used for internal routing on the host, typically acquired through DHCP.
ifupdown2
Apply the configuration immediately so you don’t need a reboot:
ip addr add dev YOUR_INTERFACE YOUR_PUBLIC_IP/32
ip route replace default via GATEWAY_IP src YOUR_PUBLIC_IP Persist it by adding the following to /etc/network/interfaces:
post-up ip addr add dev YOUR_INTERFACE YOUR_PUBLIC_IP/32
post-up ip route replace default via GATEWAY_IP src YOUR_PUBLIC_IP NetworkManager
Create a script at /etc/NetworkManager/dispatcher.d/post-up.sh:
#!/usr/bin/env bash
interface=$1
event=$2
if [[ $interface != "YOUR_INTERFACE" ]] || [[ $event != "up" ]]; then
exit 0
fi
ip addr add dev YOUR_INTERFACE YOUR_PUBLIC_IP/32
ip route replace default via GATEWAY_IP src YOUR_PUBLIC_IP Make it executable:
chmod +x /etc/NetworkManager/dispatcher.d/post-up.sh The script will run automatically when the interface comes up.
Netplan
First, remove cloud-init to prevent it from overwriting your network config on reboot:
sudo apt remove cloud-init Then edit /etc/netplan/50-cloud-init.yaml:
network:
version: 2
ethernets:
YOUR_INTERFACE:
addresses:
- YOUR_PRIVATE_IP/24
- YOUR_PUBLIC_IP/32
routes:
- to: default
via: GATEWAY_IP
from: YOUR_PUBLIC_IP
mtu: 1500
nameservers:
addresses: [8.8.8.8, 8.8.4.4] Apply with automatic rollback so if you lose connectivity, it reverts after 120 seconds:
sudo netplan try Press Enter to confirm if everything looks good.
systemd-networkd
Create a .network file in /etc/systemd/network/, for example /etc/systemd/network/10-YOUR_INTERFACE.network:
[Match]
Name=YOUR_INTERFACE
[Network]
DHCP=ipv4
Address=YOUR_PUBLIC_IP/32
[DHCPv4]
RoutesToDNS=false
UseRoutes=false
[Route]
Destination=0.0.0.0/0
Gateway=GATEWAY_IP
PreferredSource=YOUR_PUBLIC_IP
[DHCP]
UseDomains=no
RouteMetric=200
[Link]
RequiredForOnline=routable Reload the configuration:
networkctl reload