讓我揭開我的意圖。
我的主機免費提供數百個 IPV6 位址,但對 IPV4 位址收費。我在一台伺服器下有多個站點,我想知道是否可以為每個站點/網域提供自己的 ipv6 位址。
這可能嗎?如果是這樣怎麼辦?
我讀過很多關於 ipv6 的文章,但我對它的理解並不像我想要的那麼清楚。
我的主要目標是,每個網域/網站都有自己唯一的 IP,因此有人無法進行反向 IP 查找並查看我在該伺服器上擁有哪些網站。
預先感謝您的耐心等待。
答案1
首先,您需要一個解決計劃。如果您還沒有,請取得指派給您的 /48 網路。然後選擇一個 /64 作為您目前的主要網路。如果您的業務規模擴大很多,我真誠地希望您能夠節省剩餘的地址空間。
筆記:您永遠不需要超過 /64,但如果您變得非常大,那麼將您的大客戶分成不同的 /64 可能會開始有意義,以幫助在視覺上識別每個客戶。
擁有/64 後,您可以開始連續分配它(第一個IP 到第一個站點,依此類推)或選擇組織子組並為其分配子網(例如:客戶X 有200 個站點,他擁有自己的小子網) 。我建議第二種方法,它將有助於路由,並且您的網路人員不會感到頭痛。我假設您有多個伺服器,可能分佈在不同的地理區域。
您需要正確路由分配的 /64,因此請確保服務提供者正確分配它。擁有自己的核心路由器有助於做到這一點(不是強制性的)。
之後,透過建立以下介面別名,開始將這些 IP 新增至將為這些網站提供服務的伺服器的介面:
$: ifconfig eth0:0 2001:470:1f0a:314::1 up
新增地址並驗證它們可路由後,在 apache 中建立一個僅在該 IP/網域上應答的 VirtualHost。
<VirtualHost [2001:470:1f0a:314::1]:80>
ServerName newhost.ipv6domain.com
如果您隨後新增正確的 DNS 記錄 (newhost.ipv6domain.com -> 2001:470:1f0a:314::1),您應該沒問題。
我顯然省略了所有與Apache無關的配置。這不是完整的 VirtualHost 聲明。
編輯:我在有關正確 dns 記錄的行中錯誤地添加了連接埠號碼。在上班前 10 分鐘用一隻手喝咖啡打出這個答案而造成的打字錯誤 :P
答案2
這是完全可能的,而且確實是 IPv6 的工作原理。
到目前為止,問題在於客戶端連線。 IPv6 目前尚未實現普遍連接,並且可能在幾年內也不會實現普遍連接。僅 IPv6 站點的可及性不如使用 v4 位址的站點。
不過,應該可以同時支援 v4 和 v6 位址。這些網站可能都會共用一個 v4 位址,但當用戶端進入 v6 時,它們將獲得一個單獨的 IP。這種雙棧方法是我們大多數人在過渡到 v6 的短期內必須要做的。
答案3
一段時間以來,ifconfig
被ip
程式取代。您可以新增額外的 IP6 位址,例如
sudo ip addr add 2001:470:1f0a:314::1/64 dev eth0