You should never do forwarding of domain as it will affect your SEO ranks. As also it is not recommended by Amazon.
The best way to link a GoDaddy Domain to AWS Elastic Beanstalk, is by first migrating DNS from GoDaddy to AWS Route 53. Your Domain will still be with GoDaddy, but Amazon will handle all your requests.
Here are the Steps you need to follow.
1. Create a new Hosted Zone in Amazon Route 53
- Click on Create hosted Zone
- Enter the Domain name (root domain registered on GoDaddy)
- Give any random description you want
- It should be a public hosted zone as you want to open the Domain to the whole world.
- Add tags if any
- Click on Create hosted zone
2. Open newly added domain name and find the NS Records and copy name-servers
- Copy the nameservers to a .txt file and store it somewhere as it is needed in some time.
- Be careful while copying as a single mistake can make your domain vanish off the internet.
3. Export GoDaddy Zone File
Go to MY Products – Then select your Domain. Click on DNS next to Setup and Manage.
- Click on Export Zone File(Windows)
- A Zone File will be generated.
- Save it somewhere.
- Copy the content of the Zone file and keep it ready
- It will be needed in the next step.
4. Import records to Route 53
- Click on import Zone File
- Paste content of Zone file in the previous step into the box that comes up
- The Records are automatically created.
- Click on Import button
5. Set custom DNS NameServers in GoDaddy
- Copy paste the Name Servers obtained in Step 2 into GoDaddy DNS, Change Name Servers.
- Choose Advanced – Change Name Servers on my own.
- Copy Paste NameServers. (You may have to delete last . (dot) in the nameservers)
- Click on Save
- It will take some time for NameSevers to migrate.
- Accept all prompts via email or phone
6. Connect to Elastic Beanstalk
- In Route 53 in AWS, click on the domain and click on Create Record
- Create a Record Type of A
- Keep Record name empty
- Choose Alias as yes.
- Choose you want to connect to an Elastic Beanstalk Environment
- Choose your Region where the Elastic Beanstalk is hosted.
- Choose the instance
- Keep a TTL of 1 min
- Keep it as Simple Routing
- Click on Create Record
It might take 72 hours for the Domain to get migrated across the internet. Based on your internet provider, it can get migrated in your browser earlier(15 mins to 2hrs).
To check if your domain has been migrated, check Domain Propogation Checker
You can enter your domain, click on check and it will show if your domain is propagated across the internet.