第 3 章 IP 定址與子網路切割

IPv6 怎麼自動取得位址:SLAAC 與 DHCPv6

IPv4 只有 DHCP 一條路。IPv6 有三種,而且它們可以混用。

12 分鐘


IPv6 設計時就把「自動組態」當成核心功能,所以主機取得位址的方式比 IPv4 多。考綱要求你分得出這三種。

方式位址從哪來需要伺服器嗎DNS 從哪來
SLAAC主機自己用 RA 的前綴 + 自己產生的主機部分不需要RA 裡的 RDNSS 選項
無狀態 DHCPv6SLAAC 產生需要(只提供 DNS 等參數)DHCPv6 伺服器
有狀態 DHCPv6DHCPv6 伺服器指派需要(完整管理)DHCPv6 伺服器

SLAAC 的運作

主機                                     路由器
  │                                        │
  │ ── Router Solicitation (RS) ─────────► │  「有路由器嗎?」
  │    送到 FF02::2(所有路由器多播)        │
  │                                        │
  │ ◄── Router Advertisement (RA) ───────  │  「前綴是 2001:db8:1::/64
  │     送到 FF02::1(所有節點多播)         │   我是你的預設閘道」
  │                                        │
  │  主機自己組出完整位址:
  │    前綴 2001:db8:1::/64  ← 路由器給的
  │  + 介面識別碼(EUI-64 或隨機)← 自己產生
  │  = 2001:db8:1::21a:2bff:fe3c:4d5e
  │
  │  接著做重複位址偵測(DAD)確認沒人用同一個
主機開機後怎麼拿到位址
在路由器上控制這些行為
R1(config)# ipv6 unicast-routing
R1(config)# interface gi0/0
R1(config-if)# ipv6 address 2001:db8:1::1/64

! 預設就會送 RA,什麼都不必做 —— 主機自動用 SLAAC 拿到位址

! 要改成無狀態 DHCPv6(位址自己產,其他參數問伺服器)
R1(config-if)# ipv6 nd other-config-flag

! 要改成有狀態 DHCPv6(位址也由伺服器指派)
R1(config-if)# ipv6 nd managed-config-flag

! 停止在這個介面送 RA(例如面向 WAN 的介面)
R1(config-if)# ipv6 nd ra suppress all

驗證

R1# show ipv6 interface gi0/0
GigabitEthernet0/0 is up, line protocol is up
  IPv6 is enabled, link-local address is FE80::21A:2BFF:FE3C:4D5E
  Global unicast address(es):
    2001:DB8:1::1, subnet is 2001:DB8:1::/64
  Joined group address(es):
    FF02::1        ← 所有節點
    FF02::2        ← 所有路由器(代表它是路由器)
    FF02::1:FF00:1 ← 請求節點多播(NDP 用)
  ND router advertisements are sent every 200 seconds

R1# show ipv6 neighbors        ! 相當於 IPv4 的 show ip arp
R1# show ipv6 route

立即測驗這一節(1 題)