Loading...

Bài 12b: Thực hành IPv6 — Địa chỉ global, link-local, EUI-64 và SLAAC trên Packet Tracer

⏱️ Thời lượng: 45–60 phút · 📶 Độ khó: Cơ bản – Trung bình · 🧰 Công cụ: Cisco Packet Tracer 8.x · 📌 Cần học trước: Bài 11, Bài 12

Sơ đồ lab Bài 12b

Sơ đồ lab Bài 12b · ⬇️ Tải sơ đồ (SVG) · 🔍 Mở cỡ lớn

💡 Liên hệ thực tế

Nhà mạng vừa cấp cho công ty ABC dải IPv6 2001:db8:acad::/48. Anh Nam muốn thử trước trên Packet Tracer: router có địa chỉ IPv6, và PC tự lấy địa chỉ mà không cần ai gõ tay — đúng như lý thuyết SLAAC ở Bài 11.

Bài lab này cho bạn thấy tận mắt: mỗi cổng IPv6 có ít nhất hai địa chỉ (link-local và global), router quảng bá prefix cho PC tự cấu hình, và gateway của PC là một địa chỉ link-local.

Quy tắc ghi nhớ: router Cisco chỉ định tuyến IPv6 và gửi Router Advertisement (RA) khi đã bật ipv6 unicast-routing. Không có RA, PC chọn tự động cấu hình chỉ có địa chỉ link-local.

🎯 Mục tiêu bài lab

  • Đặt địa chỉ IPv6 global và link-local thủ công trên interface router.
  • Tạo địa chỉ bằng EUI-64 và đối chiếu với địa chỉ MAC.
  • Cho PC tự cấu hình địa chỉ bằng SLAAC; đặt IPv6 tĩnh cho một PC.
  • Kiểm tra bằng show ipv6 interface brief, show ipv6 route, show ipv6 neighbors, ipconfig, ping.

📋 Bảng địa chỉ và đấu nối

Thiết bịInterfaceĐịa chỉ globalLink-local
R1 G0/0 (LAN A) 2001:db8:acad:1::1/64 FE80::1
G0/1 (LAN B) 2001:db8:acad:2::1/64 FE80::1
G0/2 (LAN C) 2001:db8:acad:3::/64 theo EUI-64 Tự tạo (EUI-64)
PC-A1 NIC SLAAC (tự động) Tự tạo
PC-A2 NIC 2001:db8:acad:1::10/64, GW FE80::1 Tự tạo
PC-B1 NIC SLAAC (tự động) Tự tạo
PC-C1 NIC SLAAC (tự động) Tự tạo
TừCổngĐếnCổngCáp
R1 G0/0 SW1 Gi0/1 Copper Straight-Through
SW1 Fa0/1, Fa0/2 PC-A1, PC-A2 FastEthernet0 Copper Straight-Through
R1 G0/1 PC-B1 FastEthernet0 Copper Cross-Over
R1 G0/2 PC-C1 FastEthernet0 Copper Cross-Over

⚙️ Các bước thực hiện

⚙️ Bước 1 — Dựng sơ đồ

Kéo ra 1 router 2911, 1 switch 2960-24TT (để mặc định) và 4 PC. Nối cáp theo bảng. Trên router đặt hostname R1.

⚙️ Bước 2 — Đặt địa chỉ IPv6 trên R1

R1(config)# interface gigabitEthernet 0/0
R1(config-if)# ipv6 address 2001:db8:acad:1::1/64
R1(config-if)# ipv6 address fe80::1 link-local
R1(config-if)# no shutdown
R1(config-if)# interface gigabitEthernet 0/1
R1(config-if)# ipv6 address 2001:db8:acad:2::1/64
R1(config-if)# ipv6 address fe80::1 link-local
R1(config-if)# no shutdown
R1(config-if)# interface gigabitEthernet 0/2
R1(config-if)# ipv6 address 2001:db8:acad:3::/64 eui-64
R1(config-if)# no shutdown
R1(config-if)# end
📎 Giải thích:
• Ngay khi có địa chỉ IPv6, interface tự tạo một địa chỉ link-local (FE80::/10) — chỉ dùng trong chính đoạn mạng đó, không đi qua router.
• Đặt link-local thủ công là FE80::1 giúp dễ nhớ: PC sẽ dùng nó làm gateway. Hai cổng G0/0 và G0/1 dùng chung FE80::1 vẫn hợp lệ, vì mỗi link-local chỉ cần duy nhất trên đoạn mạng của nó.
• Trên G0/2, từ khoá eui-64 bảo router tự sinh 64 bit sau từ địa chỉ MAC của cổng.

Chạy show ipv6 interface brief: mỗi cổng có hai dòng địa chỉ, một FE80:: và một 2001:DB8:….

⚙️ Bước 3 — Cho PC tự cấu hình… và thấy chưa được

Trên PC-A1, PC-B1, PC-C1: Desktop → IP Configuration → phần IPv6 chọn Automatic (một số phiên bản ghi là Auto Config). Quan sát: PC chỉ có địa chỉ link-local, ô địa chỉ IPv6 global vẫn trống.

⚠️ Lý do: router chưa bật định tuyến IPv6 nên chưa gửi Router Advertisement — PC không biết prefix và gateway.

⚙️ Bước 4 — Bật định tuyến IPv6

R1(config)# ipv6 unicast-routing

Trên từng PC, bấm chọn Static rồi chọn lại Automatic để PC xin cấu hình lại. Giờ PC-A1 có địa chỉ dạng 2001:DB8:ACAD:1:…, gateway là FE80::1. PC-B1 nhận prefix 2001:DB8:ACAD:2::/64, PC-C1 nhận 2001:DB8:ACAD:3::/64.

📎 Với SLAAC, PC lấy prefix từ RA và tự tạo phần Interface ID. Nếu trong Interface ID có FFFE ở giữa thì PC đã tạo nó bằng EUI-64 từ địa chỉ MAC — hãy so với Physical Address trong ipconfig /all để kiểm chứng.

⚙️ Bước 5 — Đặt IPv6 tĩnh cho PC-A2

PC-A2: IPv6 chọn Static, IPv6 Address 2001:db8:acad:1::10, prefix 64, IPv6 Gateway FE80::1.

Từ PC-A2: ping 2001:db8:acad:1::1 (gateway), rồi ping địa chỉ global của PC-B1 và PC-C1 (xem bằng ipconfig trên từng máy) — đều phải thành công.

⚙️ Bước 6 — Giải mã địa chỉ EUI-64 trên G0/2

Trên R1 chạy show interfaces gigabitEthernet 0/2, ghi lại dòng address is … (địa chỉ MAC). So với địa chỉ global của G0/2 trong show ipv6 interface brief, rồi tự làm 3 bước EUI-64:

  1. Chia MAC 48 bit làm hai nửa 24 bit.
  2. Chèn FFFE vào giữa.
  3. Đảo bit thứ 7 của byte đầu tiên (vd 00 → 02, 0C → 0E).

Ví dụ MAC 00E0.F71A.2B03 → 00E0:F7 | FFFE | 1A:2B03 → đảo bit: 02E0:F7FF:FE1A:2B03 → địa chỉ 2001:DB8:ACAD:3:2E0:F7FF:FE1A:2B03.

💾 Bước 7 — Lưu cấu hình

R1# copy running-config startup-config

🔍 Kiểm tra kết quả

#Kiểm traLệnh / thao tácKết quả mong đợi
1 Địa chỉ trên router show ipv6 interface brief Mỗi cổng có FE80:: và 2001:DB8:…; G0/2 có FFFE ở giữa
2 Bảng định tuyến IPv6 show ipv6 route 3 dòng C /64 và các dòng L /128
3 PC tự cấu hình PC-A1 ipconfig Có IPv6 global 2001:DB8:ACAD:1:…, gateway FE80::1
4 Liên mạng IPv6 PC-A2 ping PC-B1, PC-C1 ✅ Thành công
5 Bảng láng giềng show ipv6 neighbors Thấy địa chỉ IPv6 của các PC kèm MAC — tương đương bảng ARP của IPv4

🔍 Output mẫu trên R1 (địa chỉ EUI-64 của bạn sẽ khác vì MAC khác)

R1# show ipv6 interface brief
GigabitEthernet0/0         [up/up]
    FE80::1
    2001:DB8:ACAD:1::1
GigabitEthernet0/1         [up/up]
    FE80::1
    2001:DB8:ACAD:2::1
GigabitEthernet0/2         [up/up]
    FE80::2E0:F7FF:FE1A:2B03
    2001:DB8:ACAD:3:2E0:F7FF:FE1A:2B03
R1# show ipv6 route
(… rút gọn phần chú thích mã route …)
C   2001:DB8:ACAD:1::/64 [0/0]
     via GigabitEthernet0/0, directly connected
L   2001:DB8:ACAD:1::1/128 [0/0]
     via GigabitEthernet0/0, receive
C   2001:DB8:ACAD:2::/64 [0/0]
     via GigabitEthernet0/1, directly connected
L   2001:DB8:ACAD:2::1/128 [0/0]
     via GigabitEthernet0/1, receive
C   2001:DB8:ACAD:3::/64 [0/0]
     via GigabitEthernet0/2, directly connected
L   2001:DB8:ACAD:3:2E0:F7FF:FE1A:2B03/128 [0/0]
     via GigabitEthernet0/2, receive
L   FF00::/8 [0/0]
     via Null0, receive
📎 Dòng L FF00::/8 là dải multicast; router tự thêm, không cần quan tâm ở mức CCNA.

🛠️ Lỗi thường gặp & cách xử lý

Triệu chứngNguyên nhân thường gặpCách kiểm tra & sửa
PC chọn tự động nhưng chỉ có địa chỉ FE80:: Router chưa có ipv6 unicast-routing nên không gửi RA Bật lệnh, rồi cho PC xin cấu hình lại (Static → Automatic)
Router báo lỗi khi gõ địa chỉ link-local Gõ thiếu từ khoá link-local, hoặc địa chỉ không thuộc FE80::/10 ipv6 address fe80::1 link-local
PC-A2 ping gateway thất bại Sai prefix hoặc gateway (gõ FE80::1 thành FE80::10…) ipconfig trên PC-A2
Ping được trong cùng mạng nhưng không qua mạng khác Thiếu ipv6 unicast-routing, hoặc PC sai gateway show running-config | include ipv6 unicast
SLAAC không chạy trên một mạng Prefix trên router không phải /64 SLAAC cần prefix /64; sửa lại độ dài prefix

🏆 Thử thách mở rộng

  1. Từ PC-A2 ping địa chỉ link-local FE80::1. Sau đó từ PC-B1 ping địa chỉ link-local của PC-A1. Lệnh nào thành công, vì sao?
  2. Viết gọn nhất có thể địa chỉ 2001:0db8:0000:0000:0a00:0000:0000:0001.
  3. Thêm cho G0/1 một địa chỉ global thứ hai 2001:db8:acad:22::1/64. PC-B1 nhận được mấy địa chỉ global?
👉 Gợi ý đáp án

Thử thách 1: PC-A2 ping FE80::1 thành công vì cùng đoạn mạng với G0/0. PC-B1 ping link-local của PC-A1 thất bại: địa chỉ link-local không được router chuyển sang đoạn mạng khác.

Thử thách 2: 2001:db8::a00:0:0:1 — bỏ số 0 đứng đầu mỗi nhóm, và chỉ được thay một chuỗi nhóm 0 liên tiếp bằng :: (chọn chuỗi dài nhất).

Thử thách 3: Router quảng bá cả hai prefix trong RA, nên PC-B1 có thể tạo hai địa chỉ global — một với mỗi prefix. Kiểm tra bằng ipconfig sau khi cho PC xin cấu hình lại.

💬 Hỏi & Đáp nhanh

❓ Vì sao gateway của PC là FE80::1 chứ không phải 2001:DB8:ACAD:1::1?

✅ RA được router gửi đi từ địa chỉ link-local của nó, nên PC lấy địa chỉ đó làm default gateway. Đây là cách IPv6 làm việc bình thường; vì vậy nên đặt link-local dễ nhớ cho cổng router.

❓ IPv6 có ARP không?

✅ Không. IPv6 dùng giao thức Neighbor Discovery (gói Neighbor Solicitation/Advertisement) để tìm MAC; kết quả xem bằng show ipv6 neighbors.

❓ Ngoài SLAAC còn cách nào cấp địa chỉ tự động?

✅ DHCPv6: stateless (địa chỉ vẫn tự tạo bằng SLAAC, DHCPv6 chỉ cấp thêm DNS…) và stateful (DHCPv6 cấp luôn địa chỉ, giống DHCP của IPv4).

📝 Bài tập đánh giá

Câu 1: PC chọn tự cấu hình IPv6 nhưng chỉ có địa chỉ FE80::. Router đã có địa chỉ global trên cổng nối PC. Nguyên nhân khả dĩ nhất?

  • A. PC thiếu DNS server
  • B. Router chưa bật ipv6 unicast-routing
  • C. Router chưa đặt link-local thủ công
  • D. Switch chưa hỗ trợ IPv6

Câu 2: Địa chỉ nào là link-local?

  • A. 2001:db8::1
  • B. FF02::1
  • C. FE80::2E0:F7FF:FE1A:2B03
  • D. ::1

👉 Đáp án

  • Câu 1: B — Không có ipv6 unicast-routing, router không gửi RA nên PC không biết prefix để tự tạo địa chỉ global.
  • Câu 2: C — Link-local thuộc FE80::/10. FF02::1 là multicast tới mọi node, ::1 là loopback.

💡 Output trong bài là output mẫu trên Packet Tracer, trên máy bạn có thể khác một chút (ví dụ địa chỉ MAC).

📚 Bài viết thuộc khóa học CCNA của VNExperts

🧭 Điều hướng

⬅️ Bài trước🏠 Mục lục khóa họcBài kế tiếp ➡️
Bài 12: IPv6 subnetting cơ bản Mục lục khóa học CCNA Bài 13: Kiến trúc mạng: 2-tier, 3-tier, Spine-Leaf