AWS CSAA-Route53 5
首先假設有建立AWS的Resource(比如說Web服務)
我們可能會建立Load Balancer,CloudFront…
來暴露服務的hostname位置如:
IbI-1234.us-east-2.elb.amazonaws.com
並且希望上述LB位置對應到自己租借的DomainName位置變成
myapp.mydomain.com →IbI-1234.us-east-2.elb.amazonaws.com
要滿足上述要求有兩種Route53的Record可以做到:
1.CNAME Record:
- 簡單的對應A hostname →B hostname例如(app.mydomain.com →blabla.anything.com)
- 僅適用於non-root DomainName(例如aka.something.mydomain.com
- ,但是不能mydomain.com)
2.Alias Record:
- 對應到AWS的Resource例如(app.mydomain.com →blabla.amazonaws.com)
- 可以是root domain也可以是non-root domain
- 沒有額外費用
- Native health check
以下特別講解Alias Record:
- 如上解說,Alias Record對應AWS的Resource
- 並加以擴展了DNS的功能
- 如上圖一樣,設定好對應LB的DNS位置,就不用管LB其背後的IP變更
- 不像CNAME,這個可以專門用來對應top Node的DNS namespace
- Alias Record永遠都是type為A或AAAA的AWS Resource對應(IPv4/IPv6)
- 缺點就是不能設置TTL
Alias Record可以指向的Targets:
- Elastic Load Balancers
- CloudFront Distributions
- API Gateway
- Elastic Beanstalk environments
- S3 Websites
- VPC Interface Endpoints
- Global Accelerator accelerator
- Route 53 Record in the same hosted zone
But!
- 不行設置ALIAS Record對應到EC2 DNS name
實作CNAME Record:
一樣到Route53的hosted zones頁面點選建立的Domain名稱進去建立record
記得value對應的位置在CNAME只能對應到domain name(這邊用ALB的)
然後就可以打:
(但是這個可能要錢)
實作Alias Record:
(這個設置不用額外的錢)
嘗試做CNAME的root domain對應:
如上圖,會告知CNAME不能設成root domain