Linodeのネットワーク構成を理解する

# Linodeとは

Linode (https://www.linode.com/) は Akamaiが提供するIaaS (Infrastructure as a Service) プラットフォームプロバイダーのサービスです。リノードと発音します。
Akamaiは2022年2月にLinode社の買収を発表しました。
https://www.akamai.com/ja/newsroom/press-release/akamai-to-acquire-linode
クラウドコンピューティングをよりシンプルに、手頃な価格で、誰もが利用できるようにすることで、イノベーションを加速することができます。
https://www.linode.com/ja/alternative-cloud-provider/


## Linodeのネットワーク構成を理解する

Linodeのネットワーク構成は非常にシンプルにできており、複雑な構成を理解する必要はありません。
Linodeのサーバーを起動すると自動的にIPv4のPublicアドレスとIPv6のアドレスが割り当てられます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/49877/bfc38bef-d333-e473-8e73-f50f32ec0947.png)


Linodeでインスタンスの作成時にPrivate IPにチェックを付けている場合には、IPv4のPrivate IP Addressも割り振りが行われます。
このPrivate IPは192.168.128.0/17から自動的に採番されます。
割り当てられたIPv4のPublicアドレスにはReverse DNSによるFQDNとの紐づけも自動的に行われます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/49877/45cdac50-b4b8-a713-113f-93cfb4c9cab6.png)


Linodeのネットワークは基本的には192.168.128.0/17からは変更できません。
そのため、1リージョンに1ネットワークという考えで構成を組む必要があります。（但しVLANを利用する場合にはこの考えは不要です。）

例えば、以下のようなネットワーク構成を組むことができます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/49877/f12d3e57-cd37-3887-f175-207b8778774f.png)

尚、執筆時点では国内のリージョンはまだ対応していませんが
一部リージョンに限っては、個別のネットワークを作成できるVLANに対応しています。
参考：https://www.linode.com/ja/products/vlan/

## リージョン内の通信に関して

リージョン内で通信を行う場合には、プライベートIPアドレスが利用できます。
Private IP同士の通信には通信料が発生しません。
そのため、リージョン内の通信に関しては積極的にPrivate IPにて通信することをおすすめします。

<img width="500" alt="image.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/49877/55c33863-83a1-0a6b-9c84-9d0bc9477b30.png">

## リージョン間の通信に関して
リージョン間で通信を行う場合には、Public IP Addressを利用します。
Public IP同士の通信には通信料が発生します。
Inboundは無料ですが、Outboundには転送料が1GBあたり0.005ドルが発生します。(2024年3月現在)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/49877/1a8fa740-e4e5-8aca-cfc8-79dbcb3c624f.png)

同様にPublic IP 経由で通信をやり取りするObject Storageにも通信料が発生します。

<img width="500" alt="image.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/49877/c65ee23b-0d2e-1d4f-6ea2-d2f1b6e9ec39.png">

## 追加のIPアドレス付与

Linodeのインスタンスには複数のIPアドレスを付与することができます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/49877/6b8cd0d7-7b7a-09ee-ad79-6333d4b39dc2.png)

Public IPv4 Addressを追加で付与する場合には、事前にサポートチケットを記載し上限解放をする必要があります。
[https://www.linode.com/docs/guides/managing-ip-addresses/](https://www.linode.com/docs/guides/managing-ip-addresses/)
> Additional IPv4 addresses require technical justification. Please open a Support Ticket describing your requirement



<img width="400" alt="image.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/49877/fdc068d0-f82d-08e8-d898-56818ce92091.png">


## IPアドレスの付け替え

Linodeに付与したPublic IPv4 AddressもしくはPrivate IPv4 AddressはIP Transferの機能により、他のLinodeへの移し替えが可能です。
通常であればサーバーを削除した場合、IP Addressも割り当てを解除されますが、事前にIP Transferを実施すればIPv4 Addressの維持が可能となります。

<img width="500" alt="image.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/49877/5e4db9f6-ba8d-e3e0-499c-d2c0bdbbf4c2.png">

Linode -> Network -> IP Transferを選択

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/49877/15d99c8a-c23d-9072-f57e-9033336a24e3.png)

Move To (移動させる) もしくは Swap With (入れ替える) ことが可能です。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/49877/214fa74d-3b41-84be-e4e1-08625186bd0a.png)

## Linodeのネットワークをどのように考えていくか

Linodeのネットワークはシンプルであるがゆえに設定を細かく細分化していくことはできません。
そのため、まずは1アカウントに1サービス、複数リージョンを利用する際には各リージョンに1ネットワークというシンプルな構成をまずは考えることが良いかと思います。
アカウント分割を検討する際には請求を分けたいという要望などに対応を検討します。
データベースを共有する場合などには、１アカウント内に２サービスを構築し1ネットワークで運用する構成も考えられます。
また、同じIP Addressを利用したいサービスであれば同一のネットワークで運用していくため同一アカウントである必要があります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/49877/a23ba1b8-05c7-3ad2-3ba9-ef52eac065f4.png)

## まとめ

Linodeはとてもシンプルに扱える一方でIP Transferなどの細かい機能も兼ね備えています。
以下のリンクからサインアップして実際に触ってみると、さらにLinodeのネットワーク構成についての考え方について理解を深めることができるでしょう。
https://www.linode.com/


## 関連記事

アカマイ・テクノロジーズ合同会社のQiitaではLinode関連など開発者向けの記事を記載しております。

https://qiita.com/organizations/Akamai