はじめに
この記事は、筆者がAWSを勉強していた際、サブネット作成時にハマったことを備忘録として書き留めた記事です。
前提
- AWSにてブラウザ上などからVPCをすでに作成してあること
結論
サブネットを作成する際には、VPC作成時のCIDRを指定すると(10.0.0.0/24
など)重複エラーになる。
RDSを作成するときのようにサブネットを複数作る際には、
10.0.0.0/27
10.0.0.32/27
のように同一のサブネットマスク内で指定範囲をずらして設定するといい。
※ここから下は余談なので、結論から知りたい方はリターンください
この記事を書こうとした背景
AWSについてもっと色々と知りたい、知識を深めたいと思っていたので、以下の記事を参考にしながら学習を進めていたんですよ。
Qiita記事
(DB・サーバー構築編)世界一丁寧なAWS解説。EC2を利用して、RailsアプリをAWSにあげるまで
で、下準備編も順調に終わり、さあRDSを作成するぞ!となったとき、DB用のサブネットグループを作成し忘れていたことに気づいたんです。
じゃあ、作らなきゃとなったとき、
CIDR アドレスは既存のサブネット CIDR と重複しています: 10.0.0.0/24
と表示されたので、しょうがないな。。。と思い「10.0.1.0/24」
で作成することにしました。
でも、CIDR アドレスが VPC からの CIDR アドレス内にありません
と表示されちゃうので、30分くらいハマったんですね。
色々と調べていくと、どうやら最初のサブネットを作成するときにVPCのCIDRを作成していることが原因だったようです。
つまり、2つ目以降にサブネットを同じVPCに紐づけて作ろうと思っても、すでに1つ目でVPC自体のCIDRを使っているので、ユニーク制約により使用できないということ。
そのため、サブネットを作成する際にはVPCで設定したCIDRの有効範囲内で、それぞれ個別に設定してあげるというのがポイントです。
このポイントがわかったところで、それぞれのサブネットを例えば、
10.0.0.0/27
10.0.0.32/27
のように設定してあげると、問題なく作成することができました。
CIDRって?
正式名称は、Classless InterDomain Routing。サイダーと発音しますが、炭酸水ではないです。
詳しくは以下のサイトをどうぞ。
CIDRとは|「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典