吳兆雄,梁心雄
(1.廣東省氣象探測數據中心,廣東 廣州 510080;2.廣東省生態氣象中心,廣東 廣州 510080)
基于全網域名系統在氣象應用中的設計與實現
吳兆雄1,梁心雄2
(1.廣東省氣象探測數據中心,廣東 廣州 510080;2.廣東省生態氣象中心,廣東 廣州 510080)
近年來,在大力發展現代氣象業務、加快推進氣象現代化建設的進程中,一方面氣象業務系統越來越多,氣象工作者對氣象業務系統的需求也越來越大,另一方面,基于IP地址的各個系統靈活性差,管理成本越來越高。由于IP地址難以記憶,用戶使用體驗不佳,因此需要建立全網域名系統以進一步提高各個系統的可用性和可管理性,提升用戶體驗效果。測試結果表明:在部署全網域名系統后,由于各個氣象業務系統嚴格按照域名管理規定,使用了規范化的域名,因此各業務系統的訪問地址更加便于記憶,用戶使用體驗更佳,進一步提高了各個業務系統的可管理性。經過業務化試運行,全網域名系統運行穩定。
氣象業務系統;IP地址;全網域名系統;域名管理
在當今氣象業務中,業務系統規模越來越大,服務器越來越多,管理系統的成本越來越高[1]。系統靈活性差,業務系統或服務IP地址一旦發生變動,相關上下游均需做出相應調整。例如某一個業務系統更換了IP地址,引用該IP地址的程序源碼或系統也要做出相應修改,對于用戶而言,使用瀏覽器訪問該業務系統時,則需要輸入新的IP地址,可以說是“牽一發而動全身”。業務系統IP地址難于記憶,不利于應用和推廣,用戶體驗不佳[2]。氣象內部公共訪問的業務系統迅速增多:如ASOM系統、氣象業務數據共享系統、綜合信息管理系統、政務信息共享平臺、業務網站系統等。
1.1 域名服務系統的由來
Domain Name Service(域名服務)的簡稱是DNS。DNS是一個互聯網和TCP/IP的服務,用于將服務器IP地址映射成便于記憶的符號[3],使人們在Internet上訪問該服務器時,只需輸入該符號而無需輸入一串無意義的數字。
最初,當計算機及Internet網絡剛剛普及的時候,DNS還沒有出現,所有服務器的地址全部都由無意義的IP地址構成,人們難以記憶與使用。早期,由于在Internet上僅有幾百臺服務器,所以人們將這些服務器的IP地址與對應的域名記錄在hosts.txt文件中[4],以便于訪問。但如果服務器有增減或更換了IP地址,人們只能手工修改hosts.txt文件,這樣做相當麻煩。在1985年,域名服務開始出現,服務器的IP地址開始被轉換成帶含義的域名記憶,在20世紀90年代,域名服務開始快速發展,到2000年初,甚至還出現了中文域名。這些中英文域名大大加強了搜索引擎的功能,人們只要在搜索引擎輸入英文甚至中文字符,就能直接找到對應網站。
1.2 域名系統的組成
域名系統由域名體系(域名空間)和域名解析系統組成。
1.2.1 域名體系
域名體系(域名空間)是域名系統的樹狀分布式數據庫結構,決定了域名系統各級域的命名和域名的解析流程[5]。如圖1所示,域名系統由各級域名組成:頂級域名,第2級子域名…第n級子域名,主機名。

圖1 互聯網域名體系示意圖
以廣東省氣象郵件系統(mail.grmc.gov.cn)為例。其中,“cn”代表中國(國家名);“gov”代表政府機構的網絡分類名;“grmc”代表廣東省氣象局(機構名);“mail”代表郵件服務器的主機名(計算機名)。最前的一個區域被后面的一個區域所包含,同時也是后面一個區域的子域。
1.2.2 域名解析系統
域名解析系統是支撐域名體系,對域名進行存儲,并提供域名解析服務的基礎平臺[6]。
在Internet上,域名和IP地址的映射或者解析工作是由一組既獨立又協作的服務器來完成,稱為域名服務器[7]。有兩種域名服務器:一是主服務器,作用是存有域名解析表,當獲得解析結果后,發送回給請求方;二是轉發服務器,作用是保存轉發服務器表,如果收到不屬于該域名服務器解析范疇內的地址時,就會將其轉發至其他域名服務器,一直重復直到得到確定的答復為止。
常用的域名解析方法是遞歸解析法[8],如圖2所示。

圖2 互聯網域名系統示意圖
從根服務器開始,自頂端向下一級一級解析,直到找到相對應的IP地址為止。例如,本地訪問www.grmc.gov.cn,先由本地的域名服務器解析,如果解析不了,交給cn的DNS解析,如果cn的DNS無法解析,將名字交給gov的DNS解析,如果gov的DNS無法解析,將名字交給根grmc的DNS解析,最后由廣東省氣象的DNS解析出www.grmc.gov.cn的IP地址為113.108.192.74,將該IP地址返回給發起用戶。
2.1 氣象部門行政結構
如圖3所示,在氣象部門的行政結構中,中國氣象局為頂級部門,廣東省氣象局為二級部門,省局直屬單位和廣州、深圳等市局為三級部門。

圖3 氣象部門行政結構
2.2 域名體系設計
如圖4所示,頂級域是國家氣象局,域名為.cma;二級域名為X.cma,如廣東域名為gd.cma;三級域名為Y.X.cma,如廣州域名為gzs.gd.cma,深圳域名為szs.gd.cma。

圖4 域名體系設計
CMANet域名體系與公共互聯網域名體系相互獨立,互不兼容。公共互聯網域名體系使用公共域名體系,在全球通用,由域名注冊[9]商管理,使用公共地址,在公共互聯網中使用。而CMANet域名體系為私有域名體系,僅限氣象部門內部使用,由氣象信息部門運維管理,使用私有地址,在全國氣象寬帶網中使用。
2.3 應用系統域名命名規范
[所屬業務系統/部門][服務器功能描述][服務器臺數編號].[三級域.]二級域.cma所屬業務系統/部門[10]:描述服務器所屬的業務系統/部門,使用業務系統/部門名稱的英文縮寫或中文拼音首字母縮寫。
服務器功能描述:直觀表達應用系統的功能,可使用通用縮寫或自定義,要求簡潔、易懂,盡量使用應用系統首字母縮寫,如:db表示數據庫;www表示網站(門戶)服務器;oa表示辦公自動化服務器;ftp表示ftp服務器;mail表示郵件服務器;mc表示監控(monitor and control)服務器;gw表示網關;sso表示單點登錄。
服務器臺數編號:服務器所屬部門及功能都相同且服務器多于一臺的,使用數字編號來區分。例如:www.gd.cma表示廣東省氣象局網站(門戶)服務器;ywmc1.gzs.gd.cma表示廣東省廣州市氣象局監控服務器1;ywmc2.gzs.gd.cma表示廣東省廣州市氣象局監控服務器2。
域名服務設計與實現如圖5所示。其中根/頂級域名服務器承擔根域權威服務器和頂級域權威服務器的角色,其功能分別為全國頂級域注冊、解析和全國各省二級域/域名注冊、解析[11],實現了三點異地備份,單臺或兩臺故障不影響解析;國家級統一輔域名服務器分別承擔了全國所有二級/三級域權威服務器(輔),功能分別為全國所有三級/四級域名/域注冊,提供全國解析訪問;省寬帶網DMZ域名服務器承擔了二級/三級域權威服務器(主)和遞歸解析服務器的角色,實現本省三級/四級域名/域注冊,提供全國解析訪問和為客戶端提供私有域名遞歸解析服務的功能;省局域網域名服務器承擔了二級/三級域權威服務器(輔助)、互聯網域名遞歸解析服務器和私有域名轉發服務器的角色,實現了本省三級/四級域名/域注冊,僅提供本省解析訪問,不向其他省提供服務,為本省客戶端提供互聯網域名遞歸解析服務和私有域名轉發解析服務的功能。

圖5 域名服務系統設計與實現
域名服務軟件[12]使用ISC(Internet Software Consortium,因特網軟件聯合會)BIND(Berkeley Internet Name Domain)。在全球范圍內,ISC BIND軟件的使用率高達95%,目前最新的版本為bind 9.7.3-P3。
域名系統應用在三個方面:業務系統域名注冊、業務系統訪問域名解析和互聯網訪問域名解析。
4.1 業務系統域名注冊
例如,廣東省氣象探測數據中心ASOM系統,服務器IP地址為10.148.9.198,示例注冊域名為asom.moc.gd.cma。在域名服務器上進行注冊后,用戶只需在瀏覽器地址欄中輸入asom.moc.gd.cma便可訪問ASOM系統,而不需要記住其服務器的真實IP地址。
需要特別說明的是,域名系統只負責“域名”與“IP地址”的映射,不提供應用端口映射;CMANet全網域名系統只支持氣象部門私有域名的注冊,即“.cma”域名。公共互聯網的域名需根據當地情況向運營商注冊。
4.2 業務系統訪問域名解析
氣象全網域名系統能為業務系統訪問域名提供解析服務[13]。局域網用戶訪問其他省業務域名解析過程分為兩種隨機情況。隨機情況一:客戶訪問asom.moc.gd.cma,轉發服務器將請求轉發給寬帶網DMZ區的主服務器進行解析。本省轉發服務器將客戶請求轉發至主服務器,主服務器請求根服務器,根服務器做應答,主服務器請求“gd.cma”域輔助服務器,“gd.cma”域輔助服務器做出應答,最后主服務器應答局域網轉發服務器。隨機情況二:客戶訪問asom.moc.cma,客戶端請求局域網轉發服務器,轉發服務器轉發到統一輔助服務器,統一輔助服務器做出應答,局域網轉發服務器應答客戶端。
4.3 互聯網訪問域名解析
局域網用戶訪問互聯網域名grmc.gov.cn解析過程:客戶請求本省根服務器,根服務器應答,請求“cn”頂級域服務器,“cn”服務器應答,請求“grmc.gov.cn”域服務器,“grmc.gov.cn”服務器應答,應答客戶端。
5.1 域名系統配置文件
域名系統最重要的配置文件有[14]:named.conf、db.zone、in-addr.rev、named.root、rndc.key。域名系統的配置和日常管理通過修改這些配置文件來實現。
5.1.1 named.conf
named.conf是BIND的核心配置文件,它包含了BIND的基本配置,但并不包括區域數據。named.conf文件定義了DNS服務器的工作目錄所在位置,所有的區域數據文件都存放在該目錄中。該文件還定義了DNS服務器能夠管理哪些區域,如果DNS服務器可以管理某個區域,它將完成該區域內的域名解析工作。
配置舉例:
options{
listen-on port 53{192.168.1.1;};
directory “/var/”;
du mp-file “/run/cache_dump.db”;
pid-file “/runlnamed.pid”;
statistics-file “/run/named_stats.txt”;
memstatistics-file “/run/named_mem_stats.txt”;
allow-quary{any;};
also-notify{100.1.72.10;10.90.90.9;};
recursion yes;
version“unknow”;
};
logging{
channel default-debug{
file“/Logs/named.ru n”;
sererity dynamic;
print-time yes;
};
};
zone“.”IN{
type hint;
fide“named.root”;
};
zone“hb.cma”IN{
type master;
file“dd.hd.cma”;
};
zone“esh.hb.cma”IN{
type master;
fide“db.esh.hb.cma”;
};
zone“ez s.hb.cma”IN{
type master;
file“dd.ezs.hb.cma”;
};
zone“In-addr.arp a”IN{
typemaste r;
fide“in-addr.rev”;
};
key“rndc-key”{
algorithm hmac-md5;
seret“BFtwj Pq60ELnp7EG4Tw==;
};
cantrols{
inet 127.0.0.1 port 953
allow{127.0 .0.1;} keys{“rndo-key”;};
};
5.1.2 db.zone
ZONE文件是DNS上保存域名配置的文件,對BIND來說一個域名對應一個ZONE文件。
配置舉例:
$TTL 86400;1 day
@ IN SOAns.hb.cma. root.hb.cma. (
1110121425;serial
10800;refresh
3600;retry
604800;expire
86400;minimum
)
IN NS nsm.hb.cma.
IN NS nss.hb.cma.
nsmIN A 10.104.72.8
nssIN A 10.1.72.10
wuhIN NS nsm.wuh.hb.cma.
nsm.wuhIN A 10.104.72.8
wuhIN NS nss.wuh.hb.cma.
nss.wuhIN A 10.1.72.10
db01.cimissIN A 10.104.89.16
db02.cimissIN A 10.104.89.17
db03.cimissIN A 10.104.89.18
db04.cimissIN A 10.104.89.19
5.1.3 in-addr.rev
反向解析域配置文件。各省主、輔以及國家級DNS服務器單獨配置反向解析域。服務器的身份驗證,主要應用于反垃圾郵件。
配置舉例:
$TTL86400;1 day
@INSOA 8.72.104.10.,in-addr. Arpa.root.in-addr. arpa.(
1108291124;serial
10800;refresh(3 hours)
3600;retry(1 hour)
604800;expire(1 week)
86400;minimum(1 day)
)
IN NSnsm.hb.cma.
8.72.104.10 IN PTR nsm.hb.cma.
5.1.4 named.root
named.root為自建根文件,配置舉例:
.518400 NS BJ.ROOT-SERVERS.NET.
.518400 NS LZ.ROOT-SERVERS.NET.
.518400 NS GZ.ROOT-SERVERS.NET.
BJ.ROOT-SERVERS.NET.3600000 IN A 10.1.72.9
LZ.ROOT-SERVERS.NET.3600000 IN A 10.166.72.9
GZ.ROOT-SERVERS.NET.3600000 IN A 10.148.72.9
5.1.5 rndc.key
KEY文件配置舉例:
key “rndc-key” {
algorithm hmac-md5;
secret “BFtwjPq60ELnp27EG4QGTw==”;
};
5.2 域名系統管理員職責
域名系統管理員[15]的職責在于負責本省域名服務器的運行維護;負責本省用戶域名注冊管理,域名是一種資源,其注冊分配需要遵循嚴格的審批流程,管理員要做好域名合規性審核、評估,嚴禁搶注域名;負責本省用戶域名技術支持;負責本省域名規劃。
全網域名服務系統的建設對氣象業務起到了非常重要的作用,解決了當前氣象業務系統的各種問題。系統在設計時遵循安全、可靠、科學的設計原則,并兼顧了可擴展性和兼容性,具備了支持未來向市縣級延伸可能需求的兼容能力和可擴展能力。
[1] 王莉軍.域名解析文件自動生成技術研究[J].計算機技術與發展,2013,23(6):19-22.
[2] 王 瓊,楊 冬,高德云.兼容DNS的一體化網絡資源解析系統[J].計算機技術與發展,2013,23(1):1-4.
[3] 王培新,劉 穎,張思東,等.Web通信中可疑域名監控技術的研究[J].計算機技術與發展,2012,22(4):231-234.
[4] 朱 斌,張宏科,郜 帥,等.EDiNS:基于DHT的新名字解析系統[J].計算機技術與發展,2011,21(1):27-30.
[5] 于士鵬.標識符和定位符分離方案研究[J].計算機技術與發展,2009,19(7):95-97.
[6] 郭 靜,祝永志,王延玲.基于RR—DNS的Web集群系統的可用性研究[J].計算機技術與發展,2008,18(12):56-59.
[7] 梁心雄,黎德波,羅勝平.氣象網絡控制系統(NCS)的調度算法分析[J].計算機技術與發展,2015,25(8):134-137.
[8] 黃智維,倪子偉.網格計算環境下資源管理的研究[J].計算機技術與發展,2009,19(3):200-203.
[9] 陳宇寒.網格計算技術研究[J].計算機技術與發展,2008,18(5):82-85.
[10] 孔金生,任平英.TCP網絡擁塞控制研究[J].計算機技術與發展,2014,24(1):43-46.
[11] 肖 青,楊長興,楊 煉.一種基于遺傳算法的網格任務調度算法[J].計算機技術與發展,2008,18(8):32-34.
[12] Chen C S,Tseng S S,Liu C L.A unifying framework for intelligent DNS management[J].International Journal of Human-computer Studies,2003,58(4):415-445.
[13] Toet A,Schoumans N,Ijspeert J K.Perceptual evaluation of different nighttime imaging modalities[C]//Proceedings of the 3rd international conference on information fusion.Paris:IEEE,2000.
[14] Huang Yurong,Heritage J P,Mukherjee B.Connection provisioning with transmission impairment consideration in optical WDM networks with high-speed channels[J].Journal of Lightwave Technology,2005,23(3):982-993.
[15] Wang Zhou,Bovik A C,Sheikh H R,et al.Image quality assessment:from error visibility to structural similarity[J].IEEE Transactions on Image Processing,2004,13(4):600-612.
Design and Implementation of Meteorological Application Based on Entire Network Domain Name System
WU Zhao-xiong1,LIANG Xin-xiong2
(1.Meteorological Information Center of Guangdong,Guangzhou 510080,China;2.Meteorological Ecological Center of Guangdong,Guangzhou 510080,China)
In recent years,in the processing of vigorously developing modern meteorological operations and accelerating the construction of meteorological modernization,on the one hand,meteorological service system is becoming more and more,and the meteorological workers demand for that is bigger and bigger.On the other hand,each system based on the IP address has poor flexibility and higher management cost.Because the IP address is difficult to memory,and user experience is poor,you need to build entire network domain name system to further improve the availability and manageability for system and enhance the user experience.The test results show that after deployment of entire network domain name system,due to various meteorological service system in strict accordance with the regulations for the domain name,using the standardization of the domain name,access address of various business system is more easy to remember,and user experience is better,further improvement of the manageability of that.Commissioning through business changes,the domain name system is stable.
meteorological operation system;IP address;entire domain name system;domain management
2015-10-30
2016-02-23
時間:2016-06-22
廣東省科技計劃項目(0219)
吳兆雄(1980-),男,工程師,研究方向為通訊網絡工程。
http://www.cnki.net/kcms/detail/61.1450.TP.20160622.0844.034.html
TP301
A
1673-629X(2016)07-0164-05
10.3969/j.issn.1673-629X.2016.07.035