1. 程式人生 > >Linux下DDNS客戶端的使用

Linux下DDNS客戶端的使用

《ARM Linux開發-warewin 2G/3G無線傳輸(DTU)和路由器—筆記》

8.3.1、DDNS原理

動態DNS又名DDNS,它的主要功能是實現固定域名到動態IP地址之間的解析。對於使用動態IP地址的使用者,在每次上網得到新的IP地址後,安裝在主機上的動態域名軟體就會將該IP地址傳送到由DDNS服務商提供的動態域名解析伺服器,並更新域名解析資料庫。當Internet上的其他使用者需要訪問這個域名的時候,動態域名解析伺服器就會返回正確的IP地址。這樣,大多數不使用固定IP地址的使用者,也可以通過動態域名解析服務經濟、高效地構建自身的網路系統。

Linux下DDNS客戶端的使用及移植

目前提供免費的Linux DDNS客戶端

軟體的服務商有花生殼、88ip、科邁網、金萬維等。以花生殼為例,花生殼DDNS客戶端的使用和移植過程如下:

1到花生殼官方網站申請一個賬號,在該賬號下申請一個域名,域名如:warewin.eicp.net。

21linux系統的主機、1linux系統的ARM開發板。

4linux主機上編譯

將下載的壓縮檔案拷貝到linux主機的某一目錄下。

# tar zxvf phddns-2.0.5.19225.tar.gz

# cd phddns-2.0.5.19225

# ./configure    為當前平臺編譯

# make 編譯最終可執行檔案

# cd src

在/phddns-2.0.5.19225.tar.gz/src目錄下就可看到編譯生成的可執行程式phddns。

5建立配置檔案

1預設使用/etc/phlinux.conf配置檔案,編輯/etc/phlinux.conf配置檔案內容如下:

[settings]

szHost = PhLinux3.Oray.Net #伺服器地址

szUserID = warewin #您的Oray帳號名稱

szUserPWD = 123456 #對應的Oray帳號密碼

nicName = eth0 #需要繫結的網絡卡

szLog = /var/log/phddns.log #日誌檔案儲存的路徑

2如果不建立配置檔案在程式執行時則自動進入互動配置,配置後程序自動生成phlinux.conf配置檔案儲存在/etc目錄下。互動配置過程如下:

# ./phddns

輸入伺服器地址,如無特殊情況可使用預設值

Enter server address(press ENTER use phlinux3.oray.net):

輸入您的Oray帳號名稱

Enter your Oray account:

對應的Oray帳號密碼

Password:

選擇繫結的網絡卡,如無特殊,預設即可

Network interface(s):

eth0:192.168.141.18

lo:127.0.0.1

Choose one(default eth0):

選擇日誌儲存到哪個檔案

Log to use(default /var/log/phddns.log):

儲存配置檔案,選擇yes則直接儲存到/etc/phlinux.conf,輸入other可以指定檔案

Save to configuration file (/etc/phlinux.conf)?(yes/no/other):

6後臺模式啟動花生殼

# cp phddns /usr/bin/

# /usr/bin/phddns -c /etc/phlinux.conf -d

phlinux started as daemon!

# tail /var/log/phddns.log  檢視日誌資訊

Sat Apr 27 09:53:34 2013| ExecuteUpdate domain "."

Sat Apr 27 09:53:34 2013| SEND CNFM DATA...Sat Apr 27 09:53:34 2013| OK

Sat Apr 27 09:53:34 2013| ExecuteUpdate 250 Register successfully

Sat Apr 27 09:53:34 2013| 250 5711013 138270644

Sat Apr 27 09:53:34 2013| ExecuteUpdate nChatID:5711013, nStartID:138270644

7移植到ARM平臺

1)在linux主機上進行ARM交叉編譯,需要預先安裝好相關的交叉編譯器。

# cd phddns-2.0.5.19225

#./configure --host=i386-linux --target=arm-linux --build=arm-linux CC=arm-linux-gcc LD=arm-linux-ld

#make clean 

#make

# cd src

# file phddns 

phddns: ELF 32-bit LSB executable, ARM, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.14, stripped

2)將編譯生成的ARM版本可執行程式phddns放到根檔案系統原始碼的的/usr/sbin目錄下。

3)編輯phlinux.conf 配置檔案並放到根檔案系統原始碼的/etc目錄下。

4)重新壓縮根檔案系統並下載到開發板中。

5)進入ARM開發板系統後,執行/usr/sbin目錄下的phddns程式即可。

8常見問題

1如何手動修改登陸的使用者名稱及密碼?

您可以直接編輯/etc/phlinux.conf檔案,對登陸使用者名稱及密碼進行修改。

2為什麼花生殼無法登陸?

花生殼使用的通訊埠是TCP:6060UDP:6060(方向:OUT),請確認防火牆沒有把這幾個通訊埠封掉。

3如何檢視花生殼當前執行狀態?

檢視日誌:

# tail /var/log/phddns.log

9Ping域名

區域網內的任一臺linux主機或ARM開發板上執行phddns 程式後,在另一臺主機上執行Ping命令:

ping warewin.eicp.net -t

ping獲得的IP地址為區域網閘道器出口處的公網IP地址

當公網IP地址發生改變後,再次ping warewin.eicp.net,獲得的IP地址為公網IP發生改變後的地址。