Configuring DHCP options

All the subnets we create have automatically configured DHCP options to provide default AWS settings. In case we ever need to control DNS, NTP, and NetBIOS address distribution in our VPC, we can create a DHCP options set and then set and attach that new set to the VPC. A VPC can only have one DHCP options set attached to it at a time, so consider that the default AWS options will not be effective if we attach a new DHCP options set to the VPC. This is useful when we would like to provide hybrid infrastructures that would require the use of our own or on-premise DNS servers that can resolve some private addresses that are not present in AWS. Let's follow these steps to get started:

  1. To create a DHCP options set, navigate to the DHCP Options Sets section of the VPC management console and click Create DHCP options set:
  1. In the Create DHCP options set dialogue, we will need to enter the following information:
    • Name: Name of the DHCP options set
    • Domain name: The name of the domain that we would like to be passed in during DHCP configuration
    • Domain name servers: A comma-separated list of DNS server IP addresses
    • NTP servers: A comma-separated list of NTP server IP addresses
    • NetBIOS name servers: A comma-separated list of NetBIOS server IP addresses
    • NetBIOS node type: The method to use to resolve a NetBIOS name into an IP address:

This dialogue has a neat feature that provides us with the command-line input for our configuration. This can be used as a template when we are configuring numerous VPCs with our own DHCP options. It will make much more sense to use the AWS CLI when working with very large environments since creation and configuration can be easily scripted:

In this example, we have created a custom VPC that gives us the ability to spin up instances in two separate availability zones and thus provide high availability to our application. We have also configured the DHCP options that will allow us to control the way the DNS, NTP, and NetBIOS server addresses are provided to the instances we create in the VPC.