VPCを作成する場合の注意点について

CidrBlock

以下のいずれかを使用する。
なお、ネットマスクは/28(16個)~/16(65,536個)にする

10.0.0.0        -   10.255.255.255  (10/8 prefix)
172.16.0.0      -   172.31.255.255  (172.16/12 prefix)
192.168.0.0     -   192.168.255.255 (192.168/16 prefix)

http://www.faqs.org/rfcs/rfc1918.html

以下のようなCIDRの指定と使用できるIPになると思います

CIDR IP
10.0.0.0/16 10.0.0.0 - 10.0.255.255
172.16.0.0/16 172.16.0.0 - 172.16.255.255
192.168.0.0/16 192.168.0.0 - 192.168.255.255

CIDRをIPアドレスに展開ツール | IPV46

InstanceTenancy,EnableDnsSupport,EnableDnsHostnames

デフォルトで問題ないです。

Tags

Nameに{ "Ref": "AWS::StackName" }を指定

※どのアプリケーションのVPCかが分かるようにします

DHCP,InternetGateway,RouteTable

DHCPの作成,VPCとDHCPの紐付け
InternetGatewayの作成,InternetGatewayとVPCとの紐付け
RouteTableの作成とIGWへのルートの追加(パブリックサブネット用のルートテーブル)

json

    "VPC": {
      "Type": "AWS::EC2::VPC",
      "Properties": {
        "CidrBlock"         : { "Ref": "VPCCidrBlock" },
        "InstanceTenancy"   : "default",
        "EnableDnsSupport"  : "true",
        "EnableDnsHostnames": "true",
        "Tags": [
          { "Key": "Name", "Value": { "Ref": "AWS::StackName" } }
        ]
      }
    },
    "DHCPOption": {
      "Type": "AWS::EC2::DHCPOptions",
      "Properties": {
        "DomainName"       : "ap-northeast-1.compute.internal",
        "DomainNameServers": ["AmazonProvidedDNS"],
        "Tags": [
          { "Key": "Name", "Value": { "Ref": "AWS::StackName" } }
        ]
      }
    },
    "VPCDHCPOptionsAssoc": {
      "Type": "AWS::EC2::VPCDHCPOptionsAssociation",
      "Properties": {
        "VpcId"        : { "Ref": "VPC" },
        "DhcpOptionsId": { "Ref": "DHCPOption" }
      }
    },
    "IGW": {
      "Type": "AWS::EC2::InternetGateway",
      "Properties": {
        "Tags": [
          { "Key": "Name", "Value": { "Ref": "AWS::StackName" } }
        ]
      }
    },
    "IGWAttachment": {
      "Type": "AWS::EC2::VPCGatewayAttachment",
      "Properties": {
        "VpcId"            : {"Ref": "VPC"},
        "InternetGatewayId": {"Ref": "IGW"}
      }
    },
    "RouteTable": {
      "Type": "AWS::EC2::RouteTable",
      "Properties": {
        "VpcId": { "Ref": "VPC" },
        "Tags": [
          { "Key": "Name", "Value": { "Ref": "AWS::StackName" } }
        ]
      }
    },
    "RouteToInternet": {
      "Type": "AWS::EC2::Route",
      "DependsOn": "IGW",
      "Properties": {
        "GatewayId"           : { "Ref": "IGW" },
        "RouteTableId"        : { "Ref": "RouteTable" },
        "DestinationCidrBlock": "0.0.0.0/0"
      }
    }