追加 IPv4 を NIC に足すと、再起動後も残るか

追加アドレスはコンソールに 1 行ずつ出ます。すでに先頭のアドレスを持っている NIC へ、ホスト 1 台分のマスクで足し、起動時に読まれる設定へ書きます。今のセッションだけ足したアドレスは、再起動で消えます。

コンソールの 1 行がアドレス 1 個

支払いが済み、マシンが接続できる状態になると、コンソールはアドレスを分け、重複を除き、スクロールできる一覧にします。先頭の行は別に表示され、SSH と RDP はその行だけを使います。続く行もそれぞれ完全な IPv4 です。ネットワークアドレス、ブロードキャスト、空きホストの計算はありません。

注文には IPv4 が 1 個含まれます。増やすときは 1 個ずつで、1 個あたり月額 $1.6、追加は最大 255 個、含まれる 1 個と合わせて 256 個までです。行数はこの合計と一致します。追加を 4 個買うと一覧は 5 行です。/29 というプレフィックスにはなりません。

以下のアドレスは文書用の例です。設定時は一覧の文字列に置き換えます。先頭が 203.0.113.10、ほかが 203.0.113.21 と 203.0.113.34 だとします。3 行は連続していません。間の番号はこのマシンのものではありません。

NIC を変える前に一覧をすべてコピーします。個数と各行の照合はこのコピーで行い、マスクから逆算しません。一覧にないアドレスは NIC に書きません。

アドレスは 1 個ずつ渡されます。設定も 1 行ずつ足します。購入数を /29 や /28 には換算しません。

先頭のプレフィックスは残し、追加行はホスト指定

インストール直後、先頭のアドレスは当時のプレフィックスとデフォルトゲートウェイとともに NIC にあります。この 3 つはそのままにします。プレフィックスは /24 のこともあれば別の長さのこともあります。システムにある値を使い、購入数から作ったマスクには替えません。

/29 は常に 8 個です。ネットワークアドレス 1、ホスト 6、ブロードキャスト 1。1 個ずつの購入はこの 8 個を渡さず、行が隣り合うことも保証しません。追加行のマスクを 255.255.255.248 にすると、隣の番号を同一セグメントの隣接ホストとして扱います。その隣はこの注文に含まれません。

追加の各行は 255.255.255.255、つまり /32 です。NIC はそのホストアドレスだけを持ち、横の番号を主張しません。デフォルトゲートウェイは元の 1 本のままです。新しいアドレスのためにデフォルトルートを足しません。

出所NIC への書き方
一覧の先頭。すでに設定済み元のアドレス、プレフィックス、デフォルトゲートウェイを残す
残りの各行そのアドレスをマスク 255.255.255.255(/32)で追加
個数から作った /29 や /28書かない。一覧にないネットワークアドレスとブロードキャストも書かない

行がたまたま連続していても、1 行ずつ /32 で足します。番号が並んでいることは、このマシンがセグメントを受け取ったことにはなりません。

先頭アドレスがある NIC に足す

追加アドレスに 2 枚目の NIC は付きません。先頭アドレスが今あるインターフェースを探し、新しい行はそこへ足します。

ip -4 addr show
ip route show default

1 本目の出力で、一覧の先頭を含むインターフェース名を使います。例では eno1 と書きます。実際は eno1、eth0、vmbr0 のいずれかです。2 本目の via の次が現在のゲートウェイ、dev の次が同じインターフェースです。どちらもこの出力から写し、新しいアドレスから作りません。

Proxmox VE 8 または 9 では、先頭アドレスがブリッジ vmbr0 にあり、物理ポートはメンバーだけのことが多いです。追加先は先頭アドレスに合わせます。ブリッジ上にあるのに物理ポートへ足すと、新しいアドレスは応答しないことが普通です。

サイトが仮想マシンの中で動く場合、応答するゲストの NIC にその行を置きます。ホストが同じ行を持たないようにします。ブリッジとゲストの両方にあると、先に応答した側が受けます。ゲストの中の書き方も同じで、元のアドレスとゲートウェイは動かさず、新しい行は /32 です。

まず一時的に足して行が見えることを確認し、その後で起動設定に書きます。一時追加は再起動で消えます。インターフェースの選択を確認するためだけに使います。

ip addr add 203.0.113.21/32 dev eno1
ip -4 addr show dev eno1

出力には元の先頭行と新しい行が同時にあります。先頭行のプレフィックスは変わっておらず、デフォルトルートは元のゲートウェイを向いたままです。203.0.113.34 も同じ手順で確認してからファイルに書きます。

起動時に読まれるファイルへ書く

すでに先頭アドレスが書いてあるファイルだけを編集します。同じインターフェースを、新しいアドレスだけを持つ別ファイルでも定義しません。両方が効くと、後から読まれた方が先頭行を消すことがあります。SSH が追加アドレス側だけになり、コンソールの接続コマンドと一致しなくなります。

Ubuntu Server 22.04、24.04、26.04 は netplan です。先頭行がある yaml を開き、addresses に元の行を残したまま /32 を足します。デフォルトルートと nameserver は元の値のままです。

network:
  version: 2
  ethernets:
    eno1:
      addresses:
        - 203.0.113.10/24
        - 203.0.113.21/32
        - 203.0.113.34/32
      routes:
        - to: default
          via: 203.0.113.1

例の /24 と 203.0.113.1 は「元の値を残す」という意味です。別のプレフィックスやゲートウェイなら、ip の出力を写します。ファイルにほかのキーがある場合はアドレス行だけを足し、ファイル全体をこの断片で置き換えません。

保存後に netplan try を実行します。設定を適用し、時間切れで戻します。その間にもう一つの SSH セッションを先頭アドレスへ開き、つながることを確認します。try が通ってから netplan apply します。開いているセッションがこれ 1 つだけの状態で apply すると、切れたときに戻ったかどうかを見る入口がなくなります。

apply のあと先頭アドレスへの SSH が通らない場合は、コンソールのグラフィカル接続からこのファイルを戻します。グラフィカル接続はコンソールの中だけです。公開されている接続方法は SSH または RDP です。

Debian、Proxmox、NetworkManager

Debian 11、12、13 でアドレスが /etc/network/interfaces にあるなら、そのファイルを編集します。post-up で足し、インターフェースが下がるときに pre-down で外します。先頭行の address と gateway はインストール時のままです。

auto eno1
iface eno1 inet static
    address 203.0.113.10/24
    gateway 203.0.113.1
    post-up ip addr add 203.0.113.21/32 dev eno1
    post-up ip addr add 203.0.113.34/32 dev eno1
    pre-down ip addr del 203.0.113.21/32 dev eno1
    pre-down ip addr del 203.0.113.34/32 dev eno1

Proxmox のブリッジも同じファイルです。先頭行を持っているのが vmbr0 なら、名前を vmbr0 にします。物理ポートのブリッジ行をアドレス行に変えないでください。

AlmaLinux 8、9、10 と CentOS Stream 9、10 は多くが NetworkManager です。接続名は nmcli connection show で見ます。その接続にアドレスを足し、既存の ipv4.gateway は変えません。アドレスを空にする method にも変えません。

nmcli connection modify "System eno1" +ipv4.addresses 203.0.113.21/32
nmcli connection modify "System eno1" +ipv4.addresses 203.0.113.34/32
nmcli connection up "System eno1"

modify は接続プロファイルに書くので、再起動後も残ります。ip addr add だけだと次の起動までです。up の直後に ip -4 addr を見て、先頭行が残っていることを確認します。

FreeBSD 13 はエイリアスを /etc/rc.conf に書きます。インターフェース名は、ifconfig で先頭アドレスが見えるブロックから写します。

ifconfig_em0_alias0="inet 203.0.113.21 netmask 255.255.255.255"
ifconfig_em0_alias1="inet 203.0.113.34 netmask 255.255.255.255"

既存の ifconfig_em0 が先頭アドレスとデフォルトルートを持ち続けます。alias0 が使われていれば次の空き番号にします。エイリアスを 2 枚目の NIC として書きません。

このインターフェースの管理方法は 1 つにします。interfaces、netplan、NetworkManager の複数が同じインターフェースを定義していると、起動順で残るアドレスが決まります。先頭行が書いてある場所だけを編集します。

Windows ではアドレスを足し、ゲートウェイは空

Windows Server を選ぶと接続は RDP で、使うのはやはり一覧の先頭行だけです。追加アドレスは、その行をすでに持っているアダプターに足します。Standard は月額 $18.1、Datacenter は月額 $31.8 で、版は 2019、2022、2025 です。システムの差額とアドレスの個数は別です。アドレスは引き続き 1 個ずつです。

そのアダプターの IPv4 プロパティから詳細設定を開き、IP アドレス一覧に行を足します。アドレスは一覧の追加行、サブネットマスクは 255.255.255.255 です。新しい行のデフォルトゲートウェイは空にします。既にあるゲートウェイはそのままです。ゲートウェイをもう 1 本書くと、元のデフォルトルートと出口を奪い合います。

PowerShell では、インターフェースの別名を Get-NetAdapter の出力から取ります。SkipAsSource を true にすると、新しいアドレスは入ってくる接続を受け、新しく開く外向き接続は先頭アドレスのままです。サイトが先頭行を共有するか、それぞれが 1 行を使うかは アドレスを共有するか分けるか に書いてあります。

New-NetIPAddress -InterfaceAlias "Ethernet" -IPAddress 203.0.113.21 -PrefixLength 32 -SkipAsSource $true
New-NetIPAddress -InterfaceAlias "Ethernet" -IPAddress 203.0.113.34 -PrefixLength 32 -SkipAsSource $true

このコマンドはシステム設定に書きます。一度だけ効いて消える操作ではありません。Get-NetIPAddress に新しい行があり、プレフィックス長は 32 です。元のプレフィックスとデフォルトルートは元の値のままです。

再起動のあと、一覧と照合する

  1. 01 マシンを再起動します。ネットワークサービスだけを再起動しても確認になりません。一時追加はここで消え、起動設定にあるアドレスは戻ります。
  2. 02 ip -4 addr を再度実行するか、Windows ではアダプターのアドレス一覧を見ます。先頭行は残り、プレフィックスは再起動前と同じです。
  3. 03 デフォルトルートは 1 本で、次ホップは元のゲートウェイです。Linux では ip route show default の via を見ます。
  4. 04 コンソールの一覧を 1 行ずつ確認します。一覧の各行が NIC にあり、一覧にないアドレスは NIC にありません。
  5. 05 別のマシンから先頭アドレスへ SSH または RDP します。管理接続が通ってから、追加アドレス上のサービスポートを試します。

件数のコマンドは一度だけ手伝えます。結論は一覧に従います。次のコマンドはグローバル IPv4 の個数を数えます。標準の 1 個と追加購入数の合計と一致します。

ip -4 -o addr show scope global | wc -l

1 行足りないときは起動設定に戻り、その行が書かれていないのか、起動時に読まれないファイルに書いたのかを見ます。多いときは一覧にない行、特に /29 から計算したネットワークアドレスやブロードキャストを消します。

アドレスが NIC にあっても、サービスポートはファイアウォールで落ちることがあります。ufw、firewalld、Windows ファイアウォールが 80、443、または実際に使うポートを許可していなければ、接続はタイムアウトします。これはポートの方針で、行が NIC に書いてあることとは別の段階です。再起動後もアドレスが残ることを先に確認し、その後でポートを見ます。

個数が足りなければ、構成ページで追加 IPv4 を増やします。1 個あたり月額 $1.6 で、同じ月額に入ります。128GB は月額 $454.8、256GB は月額 $612.7 です。メモリは DDR4-3200 ECC RDIMM で、注文後に増設できません。プロセッサは AMD EPYC 7543P、32 コア 64 スレッド、2.8 から 3.7 GHz です。標準ディスクは 1TB NVMe が 2 枚、ハードウェア RAID はなく、それぞれ直結で、使える容量は 2 枚の合計、約 2TB です。帯域は 250 Mbps からで転送量の上限はありません。1 Gbps は月額 $245.0、2 Gbps は月額 $742.7 を加えます。月額はこれらの合計です。支払額は月額に月数を掛けたものです。月払い、四半期、半年、年払いに割引はなく、初期費用もありません。マシンは日本の東京に設置されます。

このノートが扱うのは、行があるか、再起動後も残るかです。複数のサイトが先頭行を共有するか、それぞれが 1 行を使うか、新しく開く接続がなぜ先頭行から出るかは次のノートです。

一覧の個数だけアドレスを足す

月額 $454.8 から