這篇文章原文發佈在」運維日誌」博客於 2020年03月10日ios
1、實現思路nginx
因爲校園網內服務器的實際流量不大(最大幾十兆),利用一臺Nginx反向代理服務器徹底能夠代理校內的全部Web服務器,只須要給反向代理服務器配置IPv6地址便可實現其他Web服務器的IPv6發佈。服務器
下圖是實際的結構。網絡
2、 實現過程app
2.一、服務器IP地址負載均衡
Nginx反向代理服務器的IPv4地址:210.26.16.30 IPv6地址爲:2001:da8:c004:1018::30 域名爲:nginx.lzit.edu.cn運維
內網Web服務器1的地址:210.26.16.123 域名:nic.lzit.edu.cnide
內網Web服務器2的地址:210.26.16.124 域名:lib.lzit.edu.cnwordpress
內網Web服務器3的地址:……測試
內網Web服務器N的地址:……
2.二、配置DNS
添加AAAA記錄和A記錄,下圖是PowerDNS(支持IPv六、DNSSEC)的配置:
將內網Web服務器的域名指向Nginx反向代理,以下圖:
2.三、配置Nginx反向代理
Nginx的安裝和配置在以前的博客都已經記錄了:
- Nginx安裝:http://www.javashuo.com/article/p-eobabnpf-ny.html 或者校內運維日誌
- Nginx與LDAP結合:http://www.javashuo.com/article/p-ozpgfcys-ny.html 或者校內運維日誌
- Nginx根據源地址選擇LDAP認證: http://www.javashuo.com/article/p-klkyleig-ny.html 或者校內運維日誌
網站nic.lzit.edu.cn的反向代理配置以下圖所示:
代理其餘內部Web服務器的配置跟上圖同樣,複製修改便可。
2.四、防火牆配置,開放Nginx服務器的IPv6和IPv4地址的Web端口,關閉其餘服務器的Web端口。
3、 分析
這樣就很方便的實現了網站的IPv6發佈,固然,前提是學校網絡(服務器區)要支持並配置好雙棧網絡,並與IPv6互聯網連通。
能夠到http://www.nic.edu.cn查詢網站的whios記錄和IPv6地址。
使用反向代理後只須要在反代的前邊放置WAF便可。
服務器區防火牆只需放行反代的Web端口便可,其餘Web服務器不用再對外發布。
本身配置Nginx須要必定的命令行操做,容易出現打字錯誤,當內網服務不少時,不容易調試錯誤。
網站的日誌分析存儲在log文本文件中,不易分析。
4、使用廠商定製過的Nginx實現
這部分是替換上邊 2.3節 的手工配置。
反代的網站列表以下圖:
配置界面以下圖:
統計信息,比自建的NG直觀。
本質上仍是Nginx的配置,要注意,一旦手工修改下圖的配置(好比說本身添加了負載均衡相關的配置),表單上的配置就再也不生效了,會以該配置文件爲準。
5、測試
兩個地方:
一、科大張煥傑老師的 http://ipv6.ustc.edu.cn