Ipv6

為什麼在 Ubuntu 中通過 DHCPv6 分配 /128 IPv6 地址?

  • January 16, 2021

我正在 Ubuntu 中測試 IPv6 的實現。我的 Ubuntu linux 客戶端正確地從伺服器獲取 RA 並在廣告前綴中配置地址。接下來,它通過具有/128遮罩的 DHCP 獲得另一個地址。

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
   link/ether f8:a9:63:0c:3c:cb brd ff:ff:ff:ff:ff:ff
   inet6 2001:xxxx:1f15:yyyy::9/128 scope global 
      valid_lft forever preferred_lft forever
   inet6 2001:xxxx:1f15:yyyy:faa9:63ff:fe0c:3ccb/64 scope global dynamic 
      valid_lft 82162sec preferred_lft 10162sec
   inet6 fe80::faa9:63ff:fe0c:3ccb/64 scope link 
      valid_lft forever preferred_lft forever

/128對這個地址的遮罩很感興趣,這意味著一個點對點的連結。為什麼是面具/128而不是,說/64

這是 DHCPv6 的正常行為還是與我的 DHCP 伺服器的配置有關?

是的,這是正常行為。DHCPv6 伺服器提供地址(使用 IA_NA 選項),但不告訴客戶端有關子網的任何資訊。因此,客戶端只需在介面上配置單獨的地址。到子網的任何路由都由 RA 提供。如果 RA 會在沒有自動配置選項的情況下宣布前綴,則客戶端不會自動配置地址,但會為本地子網添加路由。

這種職責分離是有意的。DHCPv6 伺服器有權分配地址(除其他外),但無權談論網路狀態。通常 DHCPv6 伺服器甚至不在本地子網上,而是通過中繼與客戶端通信。客戶端直接與之對話的設備是路由器。因此,在 IPv6 中,路由器使用 RA 告訴客戶端網路狀態(前綴、預設網關、路由等)。額外的配置選項和可選的地址分配是從 DHCP 伺服器完成的。

這樣,客戶端可以快速響應網路中的變化,同時仍然從 DHCPv6 接收更長期的資訊。

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