[APACHE] APACHE網頁伺服器 for IPv6

URL Link //n.sfs.tw/12975

2018-12-26 10:45:24 By Axer

前言

APACHE 很早就已經支援IPv6了,至於有多早?大概2006年左右我就試過讀取本機的 ::1 APACHE成功。不過那時是在 console 介面用 telnet 取得,事實上那時也沒有Ipv6的環境可以真的路由來測試。系統是 CentOS4.2 於2004年安裝,中間並沒有更新APACHE,所以就知道其實至少早在2004年APACHE就支援v6了。

 

設定

一、httpd.conf 監聽埠設定

例如我有 v4 2個介面 + v6 2個介面 則要設四條,注意v6位址一定要用[ ] 框起 :

Listen 127.0.0.1:80
Listen 163.17.38.83:80
Listen [2001:288:5400:2::83]:80
Listen [2001:288:5400:2::1]:80

如果所有介面都要監聽,則只設定一條,其餘刪除:

Listen 80

 

二、Virtual host(VH)

以中市的 ipv6.tc.edu.tw為例:

NameVirtualHost *:80

<VirtualHost *:80>
   DocumentRoot /home/ipv6
   ServerName ipv6.tc.edu.tw
   CustomLog /var/log/http-access/ipv6.tcc.edu.tw combined
   ErrorLog /var/log/http-error/ipv6.tcc.edu.tw
</VirtualHost>

單指定 IPv6

<VirtualHost [2001:288:5400:2::1]:80>

單指定 IPv4

<VirtualHost 163.17.38.84:80>

同時 IPv6/IPv4

<VirtualHost 163.17.38.84:80 [2001:288:5400:2::1]:80>


三、DNS 也要設定

DNS 要有 AAAA 記錄

ipv6.tc.edu.tw.    AAAA    2001:288:5400:2::1

* 請注意,是AAAA記錄不是反查PTR


四、網頁瀏覽方法

用網址不改變習慣

http://ipv6.tcc.edu.tw/

用 IPv6 位址上網的話,得加中括號把位址包起來 [ ]

http://[2001:288:5400:2::1]/
http://[2001:288:5400:2::1]:8080/

 

五、障礙排除

1. DNS 設定了 AAAA 的記錄嗎?

  利用nslookup或是 http://ipv6.tc.edu.tw/ 來檢測

2. 伺服器的IPv6是否可以連外?

  ping6 2001:288:5400:2::1 是否有回應

3. APACHE是否有監聽在IPv6的介面?

  ss -lt 來查看

4. 網頁能連到,但是非常的鈍,要等大概30秒才會有回應。

  基本上是IPv4可通但是IPv6不通的狀態,請檢查防火牆或網路。

  直接用ip位址來連線來確認

5. 外面的使用者是否能正確的用IPv6連到我的網頁呢?

  可使用外部提供的程式或是用台中市網提供的檢測網頁

   http://ipv6.tc.edu.tw/

6. XP只有部分支援IPv6,一律會用 v4 的方式詢問及取回 DNS 的資料。

   所以已支援 v6 的XP,如果拿掉 v4 的DNS位址,就一定得不到DNS資料,所以一定要手動設定 ipv6 的 dns 。

 


編修 2018-12-26 原文2009-10-24 01:15:00