Linux

IPv6 路由設置(使用本機 IPv6)

  • May 26, 2011

我為一個小型組織管理網路。僅使用 IPv4 的經驗,我不確定如何最好地接近 IPv6。

現有 IPv4 設置

我們有 13 個公共 IPv4 地址,這些地址都經過 NAT 轉換為內部 RFC 1918 地址(一個為使用者映射一對多,其餘為伺服器映射一對一)。所有傳出流量都通過我們的 ISP 的(單個)上游網關。我們自己的路由器執行 Linux。

在漂亮的 ASCII 藝術中,網路看起來類似於:

client     <- LAN ->              router              <- WAN ->  upstream
10.0.0.x             10.0.0.1   <- NAT ->  192.0.2.2             192.0.2.1

IPv6 設置

當然,對於 IPv6,不需要 NAT,因為我們已經分配了四個 /64 網路(比如說“9:9:9:0::/62”),其中一個包含上游路由器。類似 IPv6 網路的標準是什麼?

A) 可能的 IPv6 網路佈局:

client     <- LAN ->              router              <- WAN ->  upstream
9:9:9:1::x           9:9:9:1::1           9:9:9:0::2             9:9:9:0::1

那麼問題來了,如何讓上游網關通過我們的路由器路由數據包。使用 NAT 和 IPv4,這很簡單:我們的路由器擁有地址並響應它們的 ARP 請求。但是現在,上游網關希望在自己的子網上找到 LAN 主機,但失敗了。

1)我研究了 NDP 代理(ARP 代理的 IPv6 版本),讓路由器以 9:9:9:1/64 通告所有地址。然而,至少 Linux 似乎要求每個 IP-address有一個單獨的 Netfilter 條目,這對於 IPv6 來說當然是完全不可能的。我錯過了什麼嗎?

2)似乎應該可以使用 NDP 路由器廣告將我們的路由器廣告為 9:9:9:1::/64 的“下游網關”。但是,無法讓它工作。也許我們的 ISP 忽略了路由器廣告?

  1. 我們是否需要讓我們的 ISP 手動配置他們的上游網關以使用我們的路由器?似乎很奇怪,在 IPv6 下而不是在 IPv4 下應該是必要的。

上游路由器不應假定完整的 9:9:9:0/62 位於其本地介面上,應使用路由器的 IP 和中間網路前綴的 len 對其進行程式。他們的路由器基本上需要像你的一樣進行程式。

(請注意,WAN 網路不必使用您分配的 9:9:9:0/62 網路的子集;您的 ISP 可能會為此連結分配一個特殊的 /126 或 /127 網路,詳細資訊因 ISP 而異)

您的 ISP 上游路由器始終必須進行程式,IPv4 或 IPv6。“問題”是大多數 IPv4 部署只有外圍網路,大多數 IPv6 網路將被完全(正確)路由。

引用自:https://serverfault.com/questions/274165