瀏覽器:天龍A呼叫天龍B,ip在xxx.xxx.xx.xx上的某某Server,你在那裡嗎?在的話請回答我。
某某server:在阿在阿,我alwayls availiable的拉。你那邊也接收得到我吧?
瀏覽器:恩,可以,我傳個測試資料給你。
某某server:喔!我接到你的測試資料了,我們之間的網路連線沒有問題,可以開始傳輸了。
於是瀏覽器 跟 某某Server就開始進行資料傳輸。因為在傳輸之前透過這樣的程序確認彼此之間的連線是已經建立完成的,才開始傳送要傳送的資料,所以可以確定資料的交換是能成功的。
這也代表當瀏覽器想要連線到某台伺服器時,瀏覽器必須要知道該伺服器在網路上的位置 - ip。 但,這不對啊?我們平常上網都是輸入網址,並不是輸入ip,那瀏覽器怎麼知道伺服器的ip?
DNS
- Domain Name System,是今天網際網路的基礎建設之一,當我們在瀏覽器上輸入一個網址按下Enter之後,背後其實發生了這些事情:
但是如果我們沒有靠其他CDN業者[1]的幫助的話,我們的ip其實是隱藏不住的...因為只要一連上我們的網站,打開一下瀏覽器的開發者工具就可以知道連線的伺服器的ip位置,比如說這是我連上google.com時,google的ip位置:
瀏覽器要知道目標伺服器的ip位置才能知道要去哪裡下載資源,所以ip位置其實都是公開的,除非中間再透過一個中間單位,才有可能隱藏。
左邊選擇Networking
,在這個欄位裡填上剛剛在GoDaddy上買好的網域名稱,按下右邊的Add Domain
之後會到設定A指向的頁面。
設定A指向的@
:在A指向的tab裡的HOSTNAME欄位裡打上一個@
,這個@
就是代表我們在GoDaddy上買好的網域名稱[2],然後右邊的欄位裡選好綁定了這個domain的VPS,
下拉選單帶出來的VPS會跟現在是在哪個project底下有關係,不過我們現在只有一個project跟一台VPS,所以應該不可能會選錯。再按下Create Record
設定A指向的www
:在A指向的tab裡的HOSTNAME欄位裡打上一個www
,然後右邊的欄位裡選好綁定了這個domain的VPS,下拉選單帶出來的VPS會跟現在是在哪個project底下有關係,不過我們現在只有一個project跟一台VPS,所以應該不可能會選錯。再按下Create Record
做完上面的兩個步驟後,這個頁面底下應該會有這五個記錄
!dns_record.png
NS的那三筆是我們在1.的時候一打上我們的網域名稱時,Digital Ocean就幫我們自動補上了,再加上我們自己設定好的兩個A指向紀錄,總共有5筆。
可以看到Hostname一個有www
, 一個沒有, 這可以讓我們之後的網站在網址省略www
的情況下,一樣能連線到。
先前說到ISP那邊會有一個類似電話簿那樣的機制去記錄網路上的ip對應的網域,現在我們更新了我們主機的ip對應的網域,ISP那邊會做一個重新索引,以讓別人在瀏覽器上網址列輸入我們新買並設定好的網域之後,會自動連線到我們的VPS上。這個過程會花上5分鐘~24小時~~~
有www
跟 沒有www
的網址,都應該要可以正確指向到同一台VPS。被D
(我覺得這詞很好玩,所以特別寫出來)-- end of file--