要真正做到IPv6的推廣,服務端的內容服務建設尤為重要,沒有IPv6內容服務的提供,客戶端接入推廣將成為擺設。
IPv6在高校的推廣部署主要包含兩個方面:一是客戶端接入推廣,即網絡接入推廣;二是服務端推廣,即內容服務推廣。只有做到這兩方面的真正大規模推廣部署,才算是完整的IPv6規模化部署,并且隨著推廣進度逐步推進,后者的推廣部署尤為重要。
客戶端規模化部署
隨著IPv6協議的發展和成熟,相應的廠商也緊跟步伐,推出IPv6兼容性的產品,不同于IPv6推廣初期(試商用之前),現在主流的終端系統或者應用都已經完全兼容IPv6協議。終端系統或者應用的IPv6支持,主要包括操作系統和瀏覽器兩方面的支持,如主流操作系統Windows、Linux/Unix、Andorid以及IOS;以及主流瀏覽器IE高版本、Edge、Firefox、Edge等。以上兩類系統和應用的主流版本均已經完美支持兼容IPv6協議。
有著終端的IPv6支持兼容基礎,學校只需接入IPv6網絡并且分配IPv6地址到終端,即可以實現IPv6的客戶端接入的規模化部署。
當然,遺憾的是,現階段家用路由器很大一部分還不支持IPv6,隨著IPv6的大力推廣,相信主流的家用路由器廠商會及時跟進,推出符合家用需求的IPv6路由器產品。
服務端規模化部署
互聯網的發展和推廣,服務端的建設和推廣尤為重要。如在CERNET建設之初,為了鼓勵服務端的內容服務建設,網絡計費采用單向收費模式,即只計算流入費用。該政策有利于鼓勵服務端的內容服務建設和推廣。純IPv6網絡CERNET2也是如此,要真正做到IPv6的推廣,服務端的內容服務建設尤為重要,沒有IPv6內容服務的提供,客戶端哪怕有IPv6網絡也無法創造IPv6流量,IPv6客戶端接入推廣將成為擺設,IPv6將成為空談。
作為CERNET華南網絡中心節點,華南理工大學是早期參與教育網IPv6建設和研究的高校之一,從建設和研究初期,就已經著手客戶端和服務端的IPv6部署與研究,成為第一批服務內容同時提供IPv6和IPv4雙棧的高校之一,積累了豐富的經驗。隨著2017年兩辦推進IPv6規模部署行動計劃國家政策的推動,華南理工大學從橫向(服務內容和類別)以及縱向(服務數量)繼續發力,擴大服務端內容服務的規模化部署。
服務端的部署按服務類型分類,可以歸納為如下幾個方面:
一是Web應用。Web應用是最典型的信息服務模式,當前信息系統的主流服務模式為BS模式,即Web模式,Web應用幾乎囊括全校90%的應用,如WWW、統一認證、門戶、OA等。
二是DNS服務。DNS是學校的網絡基礎服務,通過DNS的IPv6支持部署和配置,可以有效創造流量,是應用推廣的基礎和前提條件,通過DNS的IPv6支持部署,才可以有效地通過域名透明地引導用戶進行IPv6訪問,實現服務端的IPv6內容透明服務。
三是Email系統。Email系統是所有高校都具有的網絡基本服務,Email有著持續郵件流量和較高的用戶使用頻率,并且擁有持續的全球化的流量,每天都有郵件來往于國內外。Email也包括多種服務協議,故而Email的IPv6支持部署,是體現學校IPv6推廣層次的主要體現。
以上三個應用類別涵蓋了高校信息服務的主要形式,也是IPv6服務端規模化部署的主要考核指標內容,實現以上內容的IPv6部署,即可實現學校的服務端內容服務的大規模部署。
服務端IPv6部署方法
本文以華南理工大學實踐為例,闡述上述三個應用類別的IPv6部署方法以及需注意的問題。
1. Web的IPv6支持實施
現主流版本的Web服務器(如IIS、Tomcat、Apache Httpd以及Ngnix等)幾乎都支持IPv6協議,只需編譯IPv6模塊和配置服務IPv6地址,即可實現Web服務器的IPv6服務,該方法為簡單的原始方式,通過該方式,即可實現Web服務的IPv6支持。然而在全校性的實際部署中,在IPv4網絡上幾乎都采用統一的Web出口方式來架設Web服務器架構,從而實現全校的統一Web入口。在IPv6環境下,該Web架構得到推廣和升級,進而繼續采用該架構進行IPv6的部署,這是當前主流的Web架構的演變方式,如圖1所示。
圖1 Web服務體系架構的演變
從以上架構演變可以看出,該架構采用反向代理的工作形式實現Web統一出入口,可以統一在反向代理上實現IPv6、Https、WAF、WebCache以及Http2.0等功能和服務,只需在該統一出入口實現IPv6,所有通過它的Web應用就具備了IPv6的基礎,并且由于真正的Web服務器部署在反向代理之后,對用戶透明,還起到安全保護的作用。因此,Web的IPv6部署一般不采用原始模式,而是在該Web體系架構下實現,其實現原理如圖2所示。
圖2 反向代理原理
反向代理服務器的實現有開源軟件(如Squid、Ngnix和Apache httpd等)或商業化產品(如負載均衡設備、WAF設備或者統一資源管理設備等)。
通過該方式,可以快速實現靜態網站的IPv6實現,這也是實現Web應用的IPv6部署的第一步。而Web應用是否可以通過該方式實現IPv6的訪問,還需注意如下幾個問題:
第一,地址透傳問題。由于采用反向代理,真正的Web服務器只看到代理服務器而看不到客戶端,而Web服務器“期待”與客戶端直接通信以獲取客戶端的真實情況,故而需要進行信息“透傳”,可以采用X-Forwarded-For標準指令來實現客戶端的地址透傳,以便Web服務獲取到真正的客戶端地址等信息。以Ngnix為例,其配置信息如圖3所示。
圖3 Ngnix下的X-Forwarded-For配置
第二,防止代理服務器成為DDoS攻擊。部分Web應用自身具備抗DDoS攻擊功能,由于網絡層只有代理服務器與其通信,故而需要防止Web應用將代理服務器識別為DDoS攻擊源而拒絕服務,根據實際情況進行設置,如將代理服務器IP地址加到白名單。
第三,確認Web應用是否支持IPv6格式。Web應用是否支持IPv6的訪問,最常見的問題是Web應用是否支持IPv6地址格式的相關數據結構設計。例如具備登陸來源記錄的應用系統(如Webmail或者統一認證系統等),如不支持IPv6地址結構,那么在來源記錄上會出現異常而無法真實記錄IPv6來源地址,該類問題只能通過程序修改來實現。支持雙棧地址記錄的信息后,可以實現如圖4所示的地址記錄。
圖4 應用系統地址記錄
2. DNS的IPv6支持實施
DNS在IPv6的服務端部署上起到支撐和引導作用,為了實現DNS的IPv6支持,需做到如下幾個方面:
第一,服務支持。即能通過IPv6地址訪問DNS服務器,獲得DNS查詢服務,簡言之,需在現有的DNS服務器上配置IPv6地址并啟動該地址的DNS查詢服務,或者部署全新的純IPv6地址的DNS服務器。當前主流的DNS服務器系統(如Bind、Unbound、Windows系統自帶DNS服務器以及商業化產品如zDNS等)均支持IPv6,圖5是以Bind配置為例配置IPv6的DNS支持。
圖5 Bind DNS IPv6配置示意
通過配置后的IPv6地址可以進行DNS查詢,如圖6所示。
圖6 IPv6 DNS查詢
第二,支持AAAA記錄。即可以配置域名的AAAA記錄,將訪問域名指向IPv6地址,如圖7所示。
圖7 DNS zone文件的IPv6記錄
第三,父域登記。如DNS為權威服務器,還需在edu.cn域名服務器登記IPv6記錄,以實現純IPv6環境下的DNS解析,并通過公共查詢來查詢該記錄,如圖8所示。
圖8 權威域名查詢結果
通過以上三方面的配置,即完成DNS的IPv6支持部署,完成IPv6服務端對外提供訪問的基礎條件。
3. Email系統的IPv6支持實施
Email系統是較為復雜的典型應用,其服務模塊包含:SMTP、POP/IMAP、Webmail。需做到以上所有模塊均支持IPv6,才算Email系統支持IPv6,這也是早期諸多學校未實現的原因之一。
主流的開源和商業Email產品基本都已經支持IPv6,服務端上只需對服務器分配IPv6地址,以及相應模塊啟動IPv6地址偵聽即可啟動服務。此外,Email具有反垃圾功能等要求,因此跟IPv4一樣,其IPv6地址也需做相應的配置,其中最典型的就是SPF記錄和地址的PTR記錄。華南理工SPF記錄和PTR記錄如下所示:
spf.scut.edu.cn. TXT “v=spf1 ip4:202.38.193.0/24 ip4:202.112.17.0/24 ip6:2001:da8:2000:2193::/64 ip6:2001:da8:2000:2017::/64 -all”3.2.2.0.0.0.0.0.0.0.0.0.0.0.0.0.3.9.1.2.0.0.0.2.8.a.d.0.1.0.0.2.ip6.arpa. 3600 IN PTR mailX3.scut.edu.cn.
成功實現IPv6通信的郵件信頭如圖9所示。
圖9 IPv6信頭截圖
而對于WebMail,它是一種Web應用,可以直接啟動Web應用的IPv6服務或者采用上述的Web應用IPv6部署方式即可實現IPv6支持。此外,需切記地址透傳的問題,否則不僅存在地址記錄問題,還會導致郵件系統的頻率限制(認為所有人都是用反向代理的IP地址發信),從而使所有通過WebMail登陸的用戶都無法發信。
其他問題及解決方法
1. 性能與單點故障問題
采用反向代理作為統一入口的訪問方式,所有Web應用流量將全部通過反向代理系統,因此性能和單點故障問題尤為突出。特別是較多的Web應用或性能要求高的應用(例如啟用了較多應用系統的https或者下載文件較大的應用),均對反向代理提出性能的挑戰,同時單點故障也會導致系統群體服務不可達的情況。基于以上原因,在選擇反向代理服務器的時候需充分考慮足夠的性能以及做HA高可用架構。
2. 程序兼容性問題
地址格式的IPv6不兼容是最典型的問題,特別在強日志應用方面,需充分考慮系統是否支持IPv6地址格式的日志記錄和呈現,如不支持,需通過修改程序的方式進行解決。另外,在Email郵件系統上,IPv6協議不僅需要在郵件系統模塊上配置,也需要在DNS等系統上做相應的配置,防止配置不全導致郵件通信異常。
3. 安全問題
安全問題是困擾和阻礙IPv6應用推廣的最大問題。由于IPv6應用的啟用需在服務器上啟用IPv6地址協議,IPv4的安全策略對其沒有作用,很容易造成漏洞泄漏,從而導致嚴重的安全事故。為了解決該問題,需做到如下幾點:
第一,不需要IPv6服務的服務均禁用IPv6地址偵聽,如SSHD等服務,通過修改配置的方式可以限制其不再進行IPv6訪問。
第二,借助操作系統的防火墻功能,在IPv6上進行訪問控制設置,如Linux下的Ip6tables等,均可以實現訪問控制。注意務必做到最小化訪問,如只對需要的IPv6端口開放,其它都限制訪問。
第三,如是Web服務,盡可能采用反向代理的方式,保護后端的真實Web服務器,從而規避IPv6部署帶來的安全問題。
4. 系統前瞻性問題
為了做好IPv6部署和整改準備,建議采購的所有軟件系統和硬件系統,均加上IPv6兼容性的硬指標要求,實現對IPv6協議的支持。
最后,總結IPv6規模化部署,按由易到難、由簡單到復雜、由基礎到應用的順序,推薦步驟如下:第一步網絡部署;第二步DNS解析實現;第三步Web實現;第四步DNS服務實現;第五步其他。
作者:黃建波、陸以勤(華南理工大學信息網絡工程研究中心)
責編:項陽
特別聲明:本站注明稿件來源為其他媒體的文/圖等稿件均為轉載稿,本站轉載出于非商業性的教育和科研之目的,并不意味著贊同其觀點或證實其內容的真實性。如轉載稿涉及版權等問題,請作者在兩周內速來電或來函聯系。