前篇
Handshake domain 區塊鏈網域 —— 如何訪問網域
在前兩篇我們成功競標到了網域,也設定好了環境使可訪問Handshake domain,這篇我們要實際寫DNS位置到鏈上,讓網站上線,最後會提及一些Namebase的加值服務,值得一試。
事前準備
在開始以前,我們需要有一個簡單的Hello World網站、一台網頁伺服器,和一台Name Server。選擇很多,為了方便Demo,我將使用Github Pages做為網頁和網頁伺服器,並在DigitalOcean租一台VPS,安裝BIND以做為NameServer。範例網頁伺服器
- 建立Github帳號
-
Fork以下Repo: https://github.com/digitalocean/sample-html
我們不使用DigitalOcean Apps做網頁服務,因為它不支援Handshake domain
但它的Sample真的蠻漂亮的,借來一用 - 點右上的「Settings」
- 點左側的「Pages」,在右方選擇「main」這個branch
-
「Save」後等約兩分鐘,等Github將你的網站部署上去
Github提供的網址為:https://<你的username>.github.io/sample-html/
,而我們後面要把它對應到Handshake domain
範例Name Server
為方便演示,本文使用別人包裝好,包含GUI界面的docker image: sameersbn/bind
資訊安全保護不良的Name Server常成為駭客眼中的肥羊
請將此章節視為功能演示就好
-
開一台VPS
請參考本文建置主機,安裝Docker環境
配置新主機請參考此設定
琳的備忘手札: [Docker] Linux主機之Docker安裝和ReveseProxy建置 - 安裝BIND
-
docker pull sameersbn/bind
-
關閉 systemd-resolved
systemctl disable systemd-resolved systemctl stop systemd-resolved
-
docker run --name bind -d --restart=always \ --publish 53:53/tcp --publish 53:53/udp --publish 10000:10000/tcp \ --volume /srv/docker/bind:/data \ sameersbn/bind
- 在服務成功啟動後,新增防火牆規則,開啟UDP 53、TCP 53、10000 port,配置到VPS上
-
瀏覧器打開VPS的10000 port,預設密碼為
root/password
設定Bob Wallet中的網域
- 由左側的Domain Manager選擇目標domain,Add Records
-
新增兩條記錄,NS記錄和GLUE4記錄
注意勿遺漏在網域後面的那個點(.)NS ns1.chenchun.
GLUE4 ns1.chenchun. 178.128.XXX.XXX
Handshake records的詳細說明請見此
Handshake Resource Record Guide - Handshake Developer Documentation https://hsd-dev.org/guides/resource-records.html - 寫到鏈上要15分鐘,但更新入Handshake domain要6小時以上。總之等個半天再來做測試吧
設定Namebase中的網域
Namebase有提供DNS服務,功能使用上沒什麼問題
但如果託管在Namebase就變成使用另一個中心化服務,失去了去中心化的優點
你可以選擇「網域託管在Namebase,並使用Namebase的DNS」、
「網域託管在Namebase,並指向私人DNS」、
「網域轉出至Bob Wallet」等不同的配置本章節將示範「網域託管在Namebase,並指向私人DNS」的配置模式
- 來到Dashboard → Domain Manager → Manage
- 在「Blockchain DNS records」中的ns1填入VPS的IP,ns2刪除
- 寫到鏈上要15分鐘,但更新入Handshake domain要6小時以上。總之等個半天再來做測試吧
在Name Server上添加網域和Record
參考資料
Deploying a DNS Server using Docker - SAMEER NAIK
- 左側「Server」→「BIND DNS Server」→「Create master zone」
-
填寫如圖,按Create
Domain name chenchun
Master server ns.chenchun
Use zone template? Yes Add reverses for template addresses? No -
選擇「Address」,填寫如圖,按Create
Name ns.chenchun
Address 178.128.XXX.XXX
-
選擇「Name Alias」,填寫如圖,按Create
Name color
Real Name <你的username>.github.io.
(注意最後面有一個點!) - 最後,點右上角的「Apply configuration」!
-
在主機上確認能否解析
color.chenchun
至jim60105.github.io.
將網域設定至Github Pages
設定Github Pages的詳細官方文件請見此來到剛才的「Settings」→「Pages」頁面,在「Custom Domain」填入網域名稱
Managing a custom domain for your GitHub Pages site - GitHub Docs
這會在Repo根目錄建立一個「CNAME」檔
不用理會下方的設定失敗,Github不能解析Handshake domains
結語
至此,Handshake domain介紹告一段落。本系列文從原理、競標、訪問,至設定都介紹了一輪,也實際演示下標了兩個網域並實際上架了一個網站。希望各位對Handshake domain都有了大致的了解。
但是,區塊鏈可還沒介紹完!下篇將繼續介紹Unstoppable Domains和Ethereum Name Service
附註: Namebase的其它加值服務
以下章節待補,我之後再補上
我最近真的忙爆了
dLinks
Redirects 轉址
Handshake Login
販賣、贈送Handshake網域
販賣、贈送你的子網域
iscn://likecoin-chain/TW11huUVHy5Bsg0S3prnXNNYKzj0iabfmREUOaGla1w
沒有留言:
張貼留言
本站遭到垃圾留言(病毒連結)攻擊,開啟審核模式。留言後並不會馬上公開顯示。