DNS設定基本觀念

DNS設定基本觀念

前言

最近使用GoDaddy虛擬主機架設了一個WordPress的網站,並且使用購買的網域,卻發現該網域的信箱收不到信件,於是查了一些相關資料,發現問題出在網域DNS的設定,後來了解DNS的設定後,實作成功並且解決信箱問題,特此紀錄,希望有遇到相同問題的朋友們,可以參考看看。

Godaddy網域購買連結

常見問題

  1. 為什麼輸入www.yourname.com與yourname.com的連線結果會不同?
  2. 為什麼輸入xxx@mail.yournamecom或xxx@yourname.com會收不到信件?
  3. DNS到底應該怎麼設定才對?
  4. A、CNAME、MX是什麼意思?
  5. 若您有類似的相關問題,都值得參考本文。

導讀

先來看一下DNS紀錄有哪些類型吧!

  1. SOA(Start Of Authority)  是唯一僅有一個的紀錄,並且是檔案中的第一個紀錄,負責描述這個zone的 name server等等。
  2. NS(Name Server)  用來指定操作的DNS主機名稱,例如dns.yourname.com。
  3. A (Address) 負責將DNS網域對應到IPv4的32位元 位址。
  4. AAAA         從名稱來看可以知道是A的4倍,也就是32的4倍,所以就是將DNS網域對應到IPv6的128位元位址。
  5. PTR(Pointer) 定義IP所對應的Domain Name,也就是將 IP位址轉成主機的FQDN(fully qualified domain name,完整網域名稱),例如www.主機名稱.yourname.com,就是FQDN。
  6. CNAME(Canonical Name) 表示一部主機可以設定很多別名,例如www.yourname.com 和 ftp.yourname.com都會是連到同一台主機。
  7. MX(Mail Exchanger) 設定區域中的郵件伺服器主機,也就是說所有mail將透過MX轉送到你的主機,其優先順序則是依照值越低,表示有越高的郵件優先處理權。

看完類型介紹後,將對接下來的設定更容易了解其用途與用法。

內容

A紀錄

DNS的A紀錄是用來與IP直接對應的,所以常見的主機IP對應設定如下:

設定一、

  • 類型  : A
  • 名稱  : www
  • 值      : 192.168.0.1
  • TTL   : 10800秒

表示當用戶輸入www.yourname.com 會自動導到位置 192.168.0.1上。

設定二、

  • 類型  : A
  • 名稱  : @
  • 值      : 192.168.0.1
  • TTL   : 10800秒

表示當用戶輸入yourname.com 會自動導到位置 192.168.0.1上。

設定三、

  • 類型  : A
  • 名稱  : *
  • 值      : 192.168.0.1
  • TTL   : 10800秒

表示當用戶輸入****.yourname.com 都會自動導到位置 192.168.0.1上,例如mail、ftp 等等任何名稱都會自動對應。

當您明白設定規則後,就可以依照個人需求去宣告設定,指定用戶輸入哪些名稱時,該如何對您的IP位址。

Mazast的小建議:www、@算是基本常用的名稱宣告,您的DNS設定最好都包含這兩種,然而*算是一個廣泛的應用,若您對於名稱沒有太多安排,又希望所有包含您網域的網址,都可以順利連到您的IP,那麼這就會是您最佳且最方便的設定。

MX

接下來是介紹MX紀錄,MX紀錄是用來與郵件伺服器IP A類型記錄對應的,舉例來說,就是當接收郵件時,會先根據您的MX設定,去找出您的郵件伺服器IP,若此時沒有對應好,那麼可能就會導致無法收到對方信件的問題,因為Mazast就是遇到這個問題,所以各位朋友們,有疑似收不到信的問題,可以參考以下解決方法,新增以下DNS紀錄。

設定一、

  • 類型  : A
  • 名稱  : mail
  • 值      : 192.168.0.1
  • TTL   : 10800秒

設定二、

  • 類型  : MX(Mail)
  • 名稱  : @
  • 值      : mail.yourname.com
  • TTL   : 10800秒

這兩個紀錄究竟是什麼含意呢?讓Mazast一一為您解釋清楚,MX紀錄就是當有人寄信給您的時候,他在收件人地方所輸入的位址,並且對應到您的郵件伺服器,以上面的範例來說,@的意思如本文開頭所介紹的,如果對方輸入xxxx@yourname.com給您的郵件伺服器時,此時會先幫您轉成換到mail.yourname.com網址,然而這階段還沒對應到您郵件伺服器的IP A紀錄,所以我們必須新增 mail名稱的A紀錄,並且指定到您的郵件伺服器的IP,新增完之後,我們就能從mail.yourname.com對應到IP位置了,這些設定是環環相扣的,所以必須先清楚網址的流程,規畫好路線,如此一來,對於DNS的設定就能更為順暢,我們只要明白設定的基本原理,那麼如何變通都是一樣的。

補充

ttl是什麼意思呢?

TTL (time to leave)是 DNS 記錄中的一個值,用來定義 DNS 記錄的後續變更生效前的秒數。在您的網域中,每個 DNS 記錄 (例如 MX 記錄、CNAME 記錄等) 都具有 TTL 值,其決定了您對記錄所做的變更需要多久才會生效。舉例來說,如果一個記錄的 TTL 為 86400 秒,則變更將需要 24 小時才會生效。

Mazast的小建議:若您不常更改DNS紀錄,可以將TTL時間設長一點,加快每次用戶連線速度,因為用戶端不用重新Query,主機流量也能減少許多,若您是測試階段,則可以設短一點,以便測試時,可以更快更新DNS紀錄,達到測試目的,所以長短的取捨還是依照您網站的使用需求為主喔。

結語

本文為Mazast的小小經驗紀錄,若各位朋友有發現什麼錯誤或疑慮的地方,甚至是更好的解釋,都請您不吝指教,共同進步成長,謝謝每位來拜訪閱讀的朋友,希望能對您有所幫助。

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *