網址的免費申請:no-ip
興奮的時刻到來。此前,我們必須使用 http://localhost/ 來開啟我們的網頁。現在我們想要透過網際網路的方式來開啟,就必須擁有一個於自己的 hostname,例如 https://waterfalls.ddns.net。既然架站到目前為止,都沒花半毛錢,我們若有免費的網址可用,可說完美極了。真的有耶:no-ip.com 提供這樣的服務。還有別忘了,我們只是使用電信公司寬頻撥接的一般庶民小老百姓,用的是浮動 IP;no-ip 也提供浮動 IP 的貼心解決方案。
申請及套用的步驟很簡單。筆者當前使用的網址是當初隨便取的也準備註銷重新申請一個並截圖做申請說明。
取得了網址例如 abc.ddns.net 之後。我們的 IP 之所以浮動,是因為電腦網路設備重啟/電信維護與策略等,會因而變動。故 no-ip 提供了客戶端/即本地端的一個應用程式,會在我們的電腦重新開機後做一次 renew 的動作,例如新 ip 是 123.456.78.9,應用程式便將我們當前的這支 ip address 發送給 no-ip 的廣域名稱伺服器端做 abc.ddns.net <–> 123.456.78.9 的對應的更新。如稍前提到,電信公司突然換了一組新 ip 給我們(發生機率低(所以才叫浮動)),只要重啟該應用程式就可再度連上我們的網站。
Ubuntu apt source list 沒有提供這支應用程式,但 snap 有。
- 安裝 no-ip client application
- snap install noip-client
- 安裝完,接著設定我們取得的網址。往後若有異動 hostname 也一樣執行它來設定:
- sudo noip-client.configure
- 欲重啟,更新 ip address:
- sudo systemctl restart snap.noip-client.launcher.service










- 最後,測試:
- 開啟網頁 http://ifconfig.co/
- 會秀出您的 ip address
- 再聘您的網址 ping waterfalls.ddns.net
- 這二者的 ip address 會是相同的。或者若聘不到的話,試試重啟 DUC 再聘看看。
補充:
使用 router 內建 ddns 自動更新 hostname/ip
How to Configure DDNS (Dynamic DNS) in a Router(NOIP)
另外還有一點,當對映使用浮動實體 ip 時,每當 reboot 後,可能會導致 dns/ip 映射失效(此例發生在我的數據機同時提供一個固定 ip 及數個浮動 ip),或是有失敗機率。故可另外生成一支 system service,在每次開機後執行 noip-service 的 restart。
範例如下:
[Unit]
Description=restart noip-service in case of fault after reboot
After=snap.noip-client.launcher.service systemd-networkd-wait-online.service
Wants=systemd-networkd-wait-online.service
[Service]
Type=idle
ExecStartPre=/bin/sleep 5
ExecStart=/bin/systemctl restart snap.noip-client.launcher.service
[Install]
WantedBy=multi-user.target
- 參考資料
- http://linux.vbird.org/linux_server/0350dns.php
- https://www.linuxquestions.org/questions/linux-networking-3/no-ip-dns-updater-iptables-rules-757074/
- https://github.com/mkg20001/noip-client-snap
- https://gist.github.com/NathanGiesbrecht
發佈留言