AWS CSAA-Route53 5

CNAME & Alias兩種Record應用

ZONGRU Li
Jul 12, 2022

首先假設有建立AWSResource(比如說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:

  • 對應到AWSResource例如(app.mydomain.com →blabla.amazonaws.com)
  • 可以是root domain也可以是non-root domain
  • 沒有額外費用
  • Native health check

以下特別講解Alias Record:

  • 如上解說,Alias Record對應AWSResource
  • 並加以擴展了DNS的功能
  • 如上圖一樣,設定好對應LBDNS位置,就不用管LB其背後的IP變更
  • 不像CNAME,這個可以專門用來對應top NodeDNS namespace
  • Alias Record永遠都是typeAAAAAAWS 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:

(這個設置不用額外的錢)

拿到一樣的回應!

嘗試做CNAMEroot domain對應:

如上圖,會告知CNAME不能設成root domain

嘗試做Aliasroot domain對應:

確定可以使用:

相關參考課程(reference)

--

--

ZONGRU Li
ZONGRU Li

Written by ZONGRU Li

2022/11/17 開源部分個人筆記給LINE "Java程式語言討論區"社群,希望能對社群的技術學習做一點點貢獻.(掩面....記得退訂閱!

No responses yet