新聞中心
隨著互聯(lián)網(wǎng)的快速發(fā)展,越來越多的用戶開始使用動態(tài)IP地址。然而,使用動態(tài)IP地址會給網(wǎng)絡管理增加不便,因為每當IP地址變更時,需要重新配置DNS服務。這種情況下,我們需要動態(tài)DNS(DDNS),它可以讓你指定一個固定的名字,通過某種手段將這個域名動態(tài)映射到你的IP地址。

創(chuàng)新互聯(lián)是創(chuàng)新、創(chuàng)意、研發(fā)型一體的綜合型網(wǎng)站建設(shè)公司,自成立以來公司不斷探索創(chuàng)新,始終堅持為客戶提供滿意周到的服務,在本地打下了良好的口碑,在過去的十載時間我們累計服務了上千家以及全國政企客戶,如發(fā)電機維修等企業(yè)單位,完善的項目管理流程,嚴格把控項目進度與質(zhì)量監(jiān)控加上過硬的技術(shù)實力獲得客戶的一致稱揚。
DDNS有很多不同的實現(xiàn)方式,其中較為流行的方法是使用DDNS客戶端軟件。本文將向讀者介紹如何。
1. What is DDNS?
DDNS 是 Dynamic Domn Name System(動態(tài)域名系統(tǒng))的簡稱,是一種動態(tài)域名服務系統(tǒng)。其主要功能是將IP地址動態(tài)地綁定到一個域名系統(tǒng)。當IP地址發(fā)生變化時,DDNS會及時更新域名系統(tǒng)中的IP地址,使其與最新的IP地址一致。
2. DDNS工作原理
當你安裝DDNS客戶端軟件之后,該軟件會定期向DDNS服務器發(fā)送你當前的IP地址。DDNS服務器將此信息寫入DNS服務器,完成DNS記錄的創(chuàng)建。當你的IP地址改變時,DDNS客戶端軟件會發(fā)送最新的IP地址給DDNS服務器,使DNS記錄更新為最新的IP地址。
3. DDNS客戶端軟件的實現(xiàn)方式
DDNS客戶端軟件有兩種實現(xiàn)方式:一種是基于系統(tǒng)程序,一種是基于腳本程序。
基于系統(tǒng)程序的DDNS軟件是指直接調(diào)用系統(tǒng)的程序來實現(xiàn)DDNS的功能。這種方式較為簡單,但是僅能支持某些特定的操作系統(tǒng)。
基于腳本程序的DDNS軟件是指使用編寫腳本的方式來實現(xiàn)DDNS的功能。這種方式更加靈活,可以支持更多的操作系統(tǒng)。
4. Linux DDNS軟件介紹
常用的Linux DDNS軟件有 ddclient、inadyn、pdnsd、gnudip 等。以下簡單介紹一些常用的Linux DDNS軟件。
ddclient:這是一種跨平臺的DDNS客戶端軟件,能運行在大多數(shù)Linux發(fā)行版上。ddclient支持多個DDNS服務提供商,并支持多個IP地址的更新。
inadyn:inadyn是一種用于Linux平臺的DDNS軟件,它能夠工作在多種Unix和Linux平臺上。inadyn的優(yōu)點是非??煽亢头€(wěn)定。
pdnsd:pdnsd是一個非常小巧的DDNS軟件,可以運行在Linux、BSD等系統(tǒng)上。pdnsd能夠非常快速地解決DNS請求,并從上游DNS服務器獲取DNS記錄。
gnudip:gnudip是一種完全由GNU項目管理的DDNS軟件,它是一種基于Internet標準的DDNS服務。gnudip支持多種DDNS提供商,并提供了豐富的API接口。
5. 使用DDNS軟件實現(xiàn)動態(tài)IP解析
在使用Linux DDNS軟件之前,需要先準備好一些必要的條件。需要有一個合格的DDNS服務提供商賬戶,這是因為DDNS客戶端軟件需要使用此賬戶來向DDNS服務器發(fā)送IP地址數(shù)據(jù)。需要有一個Linux主機,該主機必須具有公網(wǎng)IP地址。
具體實現(xiàn)步驟如下:
(1)安裝DDNS客戶端軟件
在Linux發(fā)行版上基本上都可以找到ddclient軟件,因此我們以ddclient為例進行講解。安裝ddclient,使用以下命令:
sudo apt-get install ddclient
(2)配置DDNS賬戶信息
在完成ddclient的安裝之后,需要對其進行配置。首先需要找到ddclient的配置文件,該文件位于 /etc/ddclient.conf。在該文件中輸入賬戶信息,如下所示:
daemon=3600
ssl=yes
protocol=namecheap
login=your_login
password=your_password
your_domn
其中,daemon表示ddclient的更新時間(單位:秒),ssl用于啟用加密連接,protocol表示使用的DDNS服務提供商,login表示DDNS服務提供商的賬戶名,password表示DDNS服務提供商的賬戶密碼,your_domn則表示你的域名。
(3)啟動DDNS客戶端
完成上述操作后,使用以下命令啟動以ddclient作為DDNS客戶端:
sudo /etc/init.d/ddclient start
現(xiàn)在,DDNS客戶端已經(jīng)成功啟動,當IP地址發(fā)生變化時,DDNS客戶端會自動將最新的IP地址發(fā)送給DDNS服務器,完成DNS記錄的更新。
6.
本文介紹了如何。無論你是一名管理員還是一名普通用戶,都可以根據(jù)本文的介紹,輕松地配置DDNS服務。DDNS服務在互聯(lián)網(wǎng)中具有廣泛的應用場景,例如遠程桌面、FTP服務器、VPN等。使用DDNS服務可以讓你的網(wǎng)絡管理更加方便和高效。
成都網(wǎng)站建設(shè)公司-創(chuàng)新互聯(lián),建站經(jīng)驗豐富以策略為先導10多年以來專注數(shù)字化網(wǎng)站建設(shè),提供企業(yè)網(wǎng)站建設(shè),高端網(wǎng)站設(shè)計,響應式網(wǎng)站制作,設(shè)計師量身打造品牌風格,熱線:028-86922220如何自己做一臺 ddns server
環(huán)境
OS: Red Hat Enterprise Linux 5 update 4
Network: 192.168.122.0/24
前言
在baidu上搜DDNS,很多地方把DDNS解釋為DHCP + DNS,其實這是牽強附會。DDNS是
Dynamic Domain Name Server的簡稱。DHCP分配IP的時候更新DNS服務器域名解析記錄,這
就是DDNS所做的事情,而是否更新客戶端的hostname顯示倒是其次。
操作
這是DNS服務器的環(huán)境:
# cat /etc/sysconfig/network
NETWORKING=yes
NETWORKING_IPV6=no
HOSTNAME=server.afang.org
# cat /etc/sysconfig/network-scripts/ifcfg-eth0
# Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+
DEVICE=eth0
BOOTPROTO=static
IPADDR=192.168.122.254
NETMASK=255.255.255.0
HWADDR=54:52:00:4F:D5:68
ONBOOT=yes
# ifconfig
eth0 Link encap:Ethernet HWaddr 54:52:00:4F:D5:68
inet addr:192.168.122.254 Bcast:192.168.122.255 Mask:255.255.255.0
inet6 addr: fe80::5652:ff:fe4f:d568/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:280 errors:0 dropped:0 overruns:0 frame:0
TX packets:232 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:24404 (23.8 KiB) TX bytes:31850 (31.1 KiB)
Interrupt:10
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:180 errors:0 dropped:0 overruns:0 frame:0
TX packets:180 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:14680 (14.3 KiB) TX bytes:14680 (14.3 KiB)
#
安裝配置DNS服務器
# cd /misc/cd/Server
# rpm -ivh bind-9.3.6-4.P1.el5.i386.rpm bind-chroot-9.3.6-4.P1.el5.i386.rpm
caching-nameserver-9.3.6-4.P1.el5.i386.rpm
warning: bind-9.3.6-4.P1.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID
Preparing… ###########################################
1:bind ###########################################
2:bind-chroot ###########################################
3:caching-nameserver ###########################################
# cd /var/named/chroot/etc/
# ls
localtime named.caching-nameserver.conf named.rfc1912.zones rndc.key
# mv named.caching-nameserver.conf named.conf
# mv named.rfc1912.zones named.zones
# ln -s /var/named/chroot/etc/named.conf /etc/named.conf
# ln -s /var/named/chroot/etc/named.zones /etc/named.zones
#
這是我的named.conf和named.zones配置
named.conf
# cat named.conf
acl afang.org { 192.168.122.0/24; };
options {
listen-on port 53 { 127.0.0.1; afang.org; };
listen-on-v6 port 53 { ::1; };
directory “/var/named”;
dump-file “/var/named/data/cache_dump.db”;
statistics-file “/var/named/data/named_stats.txt”;
memstatistics-file “/var/named/data/named_mem_stats.txt”;
allow-query { localhost; afang.org; };
allow-query-cache { localhost; afang.org; };
};
logging {
channel default_debug {
file “data/named.run”;
severity dynamic;
};
};
view afang.org {
match-clients { localhost; afang.org; };
match-destinations { localhost; };
recursion yes;
include “/etc/named.zones”;
};
#
named.zones
# cat named.zones
zone “.” IN {
type hint;
file “named.ca”;
};
zone “l(fā)ocaldomain” IN {
type master;
file “l(fā)ocaldomain.zone”;
allow-update { none; };
};
zone “l(fā)ocalhost” IN {
type master;
file “l(fā)ocalhost.zone”;
allow-update { none; };
};
zone “0.0.127.in-addr.arpa” IN {
type master;
file “named.local”;
allow-update { none; };
};
zone “0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa” IN {
type master;
file “named.ip6.local”;
allow-update { none; };
};
zone “255.in-addr.arpa” IN {
type master;
file “named.broadcast”;
allow-update { none; };
};
zone “0.in-addr.arpa” IN {
type master;
file “named.zero”;
allow-update { none; };
};
zone “afang.org” IN {
type master;
file “afang.org.zone”;
allow-update { localhost; };
};
zone “122.168.192.in-addr.arpa” IN {
type master;
file “122.168.192.in-addr.arpa.rzone”;
allow-update { localhost; };
};
#
對named.zones的一些解釋
zone “afang.org” IN {
type master;
file “afang.org.zone”;
allow-update { localhost; };
};
zone “122.168.192.in-addr.arpa” IN {
type master;
file “122.168.192.in-addr.arpa.rzone”;
allow-update { localhost; };
};
這里allow-update允許DHCP服務器從本地IP來更新DNS的解析記錄。如果你的DNS和
DHCP服務不在同一臺機器上,你也可以在allow-update里面指定DHCP服務器的IP。但是這
樣是不安全的。如果有人惡意把自己的IP設(shè)置為該IP,則DNS服務器就很容易給入侵。
這是我的域名解析記錄
# pwd
/var/named/chroot/var/named
# ls
data localhost.zone named.ca named.local slaves
localdomain.zone named.broadcast named.ip6.local named.zero
# cp localdomain.zone afang.org.zone
# cp named.local 122.168.192.in-addr.arpa.rzone
這是afang.org.zone和122.168.192.in-addr.arpa.rzone 的內(nèi)容
afang.org.zone
# cat afang.org.zone
$TTL 86400
@ IN SOA localhost root (
42 ; serial (d. adams)
3H ; refresh
15M ; retry
1W ; expiry
1D ) ; minimum
IN NS localhost
server IN A 192.168.122.254
#
122.168.192.in-addr.arpa.rzone
# cat 122.168.192.in-addr.arpa.rzone
$TTL 86400
@ IN SOA localhost. root.localhost. (
; Serial
28800 ; Refresh
14400 ; Retry
; Expire
86400 ) ; Minimum
IN NS localhost.
254 IN PTR server.afang.org.
#
如何利用linux網(wǎng)絡協(xié)議遠程更新操作系統(tǒng)
一、引言
一般情況下,我們都是利用軟驅(qū)或光驅(qū)引導Linux后,再通過本地的光驅(qū)安裝Linux。但是,這種安裝方法在以下的幾種情況下就不能適用:
無軟驅(qū)和光驅(qū):很多公司為了節(jié)省成本,計算機一般都不帶光驅(qū)或軟驅(qū),這樣就無法通過本地安裝Linux;
非標準的軟驅(qū)和光驅(qū):雖然筆記本都會配置光驅(qū),但是并不一定都是標準的IDE設(shè)備,有些是通過USB接口,有些是通過1394接口(例如Samsung的Q10)。在Linux安裝時所引導的Linux內(nèi)核一般都不會帶這些接口的驅(qū)動,所以也無法通型顫過本地安裝Linux;
另外,在一些場合,如機房中,有大量的計算機需要同時安裝Linux,如果通過光驅(qū)的方式一個個安裝,不僅效率低,也不利于維護。
筆者在工作過程中,就遇到過第二種情況。一臺Samsung的Q10筆記本需要安裝Redhat Linux 8.0,但是通過虧信光驅(qū)引導后發(fā)現(xiàn),安裝程序無法訪問光盤。針對這個問題,筆者經(jīng)過查閱資料和摸索,找到了在Q10上安裝Linux的方法。在下面的討論中,如不做特別聲明,都將以Q10為例,介紹如何通過PXE Bootrom來遠程安裝Linux。
二、基本原理
1) 什么是PXE
PXE(Pre-boot Execution Environment)是由Intel設(shè)計的協(xié)議,它可以使計算機通過網(wǎng)絡啟動。協(xié)議分為client和server兩端,PXE client在網(wǎng)卡的ROM中,當計算機引導時,BIOS把PXE client調(diào)入內(nèi)存執(zhí)行,并顯示出命令菜單,經(jīng)用戶選擇后,PXE client將放置在遠端的操作系統(tǒng)通過網(wǎng)絡下載到本地運行。
PXE協(xié)議的成功運行需要解決以下兩個問題:
既然是通過網(wǎng)絡傳輸,那么計算機在啟動時,它的IP地址由誰來配置;
通過什么協(xié)議下載Linux內(nèi)核和根文件系統(tǒng)
卜空敗 對于之一個問題,可以通過DHCP Server解決,由DHCP server來給PXE client分配一個IP地址,DHCP Server是用來給DHCP Client動態(tài)分配IP地址的協(xié)議,不過由于這里是給PXE Client分配IP地址,所以在配置DHCP Server時,需要增加相應的PXE特有配置。
至于第二個問題,在PXE client所在的ROM中,已經(jīng)存在了TFTP Client。PXE Client使用TFTP Client,通過TFTP協(xié)議到TFTP Server上下載所需的文件。
這樣,PXE協(xié)議運行的條件就具備了,下面我們就來看看PXE協(xié)議的工作過程。
2) 工作過程
在上圖中,PXE client是需要安裝Linux的計算機,TFTP Server和DHCP Server運行在另外一臺Linux Server上。Bootstrap文件、配置文件、Linux內(nèi)核以及Linux根文件系統(tǒng)都放置在Linux Server上TFTP服務器的根目錄下。
PXE client在工作過程中,需要三個二進制文件:bootstrap、Linux 內(nèi)核和Linux根文件系統(tǒng)。Bootstrap文件是可執(zhí)行程序,它向用戶提供簡單的控制界面,并根據(jù)用戶的選擇,下載合適的Linux內(nèi)核以及Linux根文件系統(tǒng)。
三、步驟
有了前面的背景知識,接下來就可以正式操作了,下面按照順序給出了操作步驟:
1) 配置DHCP Server
選用ISC dhcp-3.0,DHCP Server的配置文件是/etc/dhcpd.conf,配置文件的內(nèi)容如下:
option space PXE;
option PXE.mtftp-ip code 1 = ip-address;
option PXE.mtftp-cport code 2 = unsigned integer 16;
option PXE.mtftp-sport code 3 = unsigned integer 16;
option PXE.mtftp-tmout code 4 = unsigned integer 8;
option PXE.mtftp-delay code 5 = unsigned integer 8;
option PXE.discovery-control code 6 = unsigned integer 8;
option PXE.discovery-mcast-addr code 7 = ip-address;
class “pxeclients” {
match if substring (option vendor-class-identifier, 0, 9) = “PXEClient”;
option vendor-class-identifier “PXEClient”;
vendor-option-space PXE;
# At least one of the vendor-specific PXE options must be set in
# order for the client boot ROMs to realize that we are a PXE-compliant
# server. We set the MCAST IP address to 0.0.0.0 to tell the boot ROM
# that we cant provide multicast TFTP (address 0.0.0.0 means no
# address).
option PXE.mtftp-ip 0.0.0.0;
# This is the name of the file the boot ROMs should download.
filename “pxelinux.0”;
# This is the name of the server they should get it from.
next-server 192.168.0.1;
}
ddns-update-style interim;
ignore client-updates;
default-lease-time 1200;
max-lease-time 9200;
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.0.255;
option routers 192.168.0.254;
option domain-name-servers 192.168.0.1,192.168.0.2;
option domain-name “mydomain.org”;
subnet 192.168.0.0 netmask 255.255.255.0 {
range 192.168.0.10 192.168.0.100;
}
host q10 {
hardware ethernet 00:00:F0:6B:38:5B;
fixed-address 192.168.0.22;
}
dhcpd.conf配置文件中幾個關(guān)鍵部分說明如下:host q10{…}定義了筆記本Q10網(wǎng)卡的MAC地址與IP地址的對應關(guān)系,表明DHCP Server為Q10分配一個固定的IP:192.168.0.22;filename “”指定bootstrap的文件名;netx-server指定TFTP Server的地址。其它的配置請讀者參考DHCP Server的手冊。
2) 配置TFTP server
選用tftp-hpa,TFTP Server的配置文件是/etc/xinetd.d/tftp,配置文件的內(nèi)容如下:
service tftp
{
socket_type = dgram
protocol = udp
wait = yes
user = root
server = /usr/in/in.tftpd
server_args = -u nobody -s /tftpboot
disable = no
per_source = 11
cps =
}
這里制定了/tftpboot為TFTP Server的根目錄位置。
3) 配置bootstrap
bootstrap文件在dhcpd.conf中被指定為pxelinux.0文件,放置在/tftpboot。Linux內(nèi)核以及Linux根文件系統(tǒng)也放置在/tftpboot。pxelinux.0在執(zhí)行過程中,要讀配置文件,所有的配置文件都放在/tftpboot/pxelinux.cfg/目錄下。由于PXElinux具有為不同的PXE Client提供不同的Linux內(nèi)核以及根文件系統(tǒng)的功能,所以要通過不同的配置文件名來區(qū)分出不同的PXE Client的需求。比如一個PXE Client由DHCP Server分配的IP地址為192.168.0.22,那么相對應的配置文件名為/tftpboot/pxelinux.cfg/C0A80016(注:C0A80016為IP地址192.168.0.22的十六進制表示)。如果找不到,就按照順序C0A80016-> C0A8001-> C0A800-> C0A80-> C0A8-> C0A-> C0-> C->default查找配置文件。
/tftpboot/pxelinux.cft/C0A80001配置文件的具體內(nèi)容如下:
DEFAULT install
PROMPT 1
LABEL install
KERNEL vmlinuz
APPEND initrd=initrd.img devfs=nomount ramdisk_size=16384
此配置文件指定了Linux內(nèi)核以及根文件系統(tǒng)的名稱,并給內(nèi)核傳遞了一些參數(shù),其中ramdisk_size參數(shù)要非常注意,它指定Linux內(nèi)核啟動后建立ramdisk的大小,如果設(shè)置太小,Linux的安裝過程就可能無法進行。
4) 制作Linux內(nèi)核/根文件系統(tǒng)
因為需要通過網(wǎng)絡安裝,所有選擇Redhat Linux 8.0安裝盤(disk #1)中E:imagesootnet.img(光驅(qū)的盤符為E:)。bootnet.img包括Linux內(nèi)核、Linux根文件系統(tǒng)(有安裝程序在內(nèi))。用bootnet.img制作一張引導軟盤,方法在DOS命令行運行E:dosutils awrite E:imagesootnet.img,根據(jù)提示制作。制作完畢后,將引導軟盤中的vmlinuz(Linux內(nèi)核)和initrd.img(Linux根文件系統(tǒng))拷貝到Linux Server的/tftpboot下。
5) 啟動DHCP Server/TFTP Server
在Linux Server上,運行service dhcpd start和service xinetd restart。
6) 啟動Q10
Q10加電后,在出現(xiàn)Samsung公司徽標時,在左下角會提示用戶按F12進入網(wǎng)絡引導。按F12后,Q10進入網(wǎng)絡引導過程。首先通過DHCP Server獲得了IP地址,然后下載并執(zhí)行bootstrap文件pxelinux.0;在執(zhí)行中,讀入配置文件/tftpboot/pxelinux.cfg/C0A80016。此時屏幕上出現(xiàn)boot:,敲入install,就進入了Redhat Linux 8.0的網(wǎng)絡安裝界面,一切OK!
四、結(jié)束語
雖然以上的討論是針對Samsung Q10筆記本,但是工作原理和安裝方法對于其它類型的計算機也是適用的,不過要記住,計算機的網(wǎng)卡中必須要有BootROM–PXE Client。同時,PXE協(xié)議也可作為無盤Linux技術(shù),用于引導放置在遠程的Linux。實際上,只要根據(jù)需要,在Pxelinux的配置文件的APPEND選項中,為Linux內(nèi)核傳進需要mount的文件系統(tǒng)的位置參數(shù)即可。
linux ddns 軟件的介紹就聊到這里吧,感謝你花時間閱讀本站內(nèi)容,更多關(guān)于linux ddns 軟件,使用Linux DDNS軟件實現(xiàn)動態(tài)IP解析,如何自己做一臺 ddns server,如何利用linux網(wǎng)絡協(xié)議遠程更新操作系統(tǒng)的信息別忘了在本站進行查找喔。
成都創(chuàng)新互聯(lián)科技有限公司,經(jīng)過多年的不懈努力,公司現(xiàn)已經(jīng)成為一家專業(yè)從事IT產(chǎn)品開發(fā)和營銷公司。廣泛應用于計算機網(wǎng)絡、設(shè)計、SEO優(yōu)化、關(guān)鍵詞排名等多種行業(yè)!
名稱欄目:使用LinuxDDNS軟件實現(xiàn)動態(tài)IP解析(linuxddns軟件)
本文地址:http://fisionsoft.com.cn/article/coeosce.html


咨詢
建站咨詢
