🔥 Khi bước vào phần cấu hình NAT động (Dynamic NAT), rất nhiều học viên dễ nhầm lẫn với NAT tĩnh. Thực tế, hai cơ chế này có nhiều điểm tương đồng nhưng lại khác nhau về cách ánh xạ địa chỉ. Nếu NAT tĩnh là ánh xạ “1-1” cố định giữa địa chỉ trong và ngoài, thì NAT động cho phép ánh xạ “nhiều-nhiều” dựa trên pool địa chỉ toàn cục (global pool) và Access Control List (ACL). Đây là kỹ năng cơ bản nhưng cực kỳ quan trọng trong lộ trình từ CCNA lên CCNP và cả CCIE.
🔹 Cấu hình NAT động bên trong (Dynamic IPv4 Inside NAT)
1. Xác định giao diện Inside và Outside
Giống NAT tĩnh, ta cần chỉ rõ giao diện nào là inside và giao diện nào là outside:
ACL được sử dụng để xác định tập các local address (thường là private IP theo RFC 1918).
Ví dụ:
access-list 1 permit 10.1.1.0 0.0.0.255
ACL này cho phép tất cả địa chỉ trong subnet 10.1.1.0/24 được NAT.
⚠️ Lưu ý quan trọng: ACL luôn có implicit deny any ở cuối. Nếu viết permit any, router có thể NAT “toàn bộ” lưu lượng → gây tiêu tốn tài nguyên và khó kiểm soát. 3. Tạo pool địa chỉ toàn cục
Dùng lệnh:
ip nat pool NAT-POOL 209.165.200.230 209.165.200.235 netmask 255.255.255.224
Pool này gồm 6 địa chỉ từ .230 đến .235 trong dải 209.165.200.224/27. 4. Ánh xạ ACL với NAT Pool
Dùng lệnh ip nat inside source list để kết nối ACL và NAT pool:
ip nat inside source list 1 pool NAT-POOL
Lệnh này có nghĩa:
Router sẽ dịch địa chỉ theo cơ chế first-come first-served. Khi pool hết địa chỉ, kết nối mới sẽ không được NAT. 5. Cấu hình giao diện
Ví dụ:
interface g0/0 ip address 10.1.1.1 255.255.255.0 ip nat inside interface g0/1 ip address 209.165.200.225 255.255.255.224 ip nat outside 6. Kiểm tra kết quả
Dùng lệnh:
show ip nat translations
Ví dụ output:
Pro Inside global Inside local Outside local Outside global icmp 209.165.200.230 10.1.1.100 --- --- tcp 209.165.200.231 10.1.1.101 --- ---
Ở đây:
🔹 Thực tế vận hành
👉 Ví dụ lab:
Giả sử bạn có 2 PC trong LAN (10.1.1.100, 10.1.1.101), cả hai đều ping ra Internet.
Nếu thêm PC3, nó sẽ được cấp 209.165.200.232 (nếu có sẵn trong pool). Nếu hết pool thì PC3 không thể ra Internet.
🔥 Như vậy, Dynamic NAT chính là “phiên bản nâng cấp” của Static NAT, cho phép nhiều người dùng nội bộ sử dụng nhiều địa chỉ toàn cục một cách linh hoạt. Đây là nền tảng để bạn học tiếp PAT (NAT Overload) – cơ chế cực kỳ phổ biến hiện nay trong hầu hết router gia đình và doanh nghiệp nhỏ.
🔹 Cấu hình NAT động bên trong (Dynamic IPv4 Inside NAT)
1. Xác định giao diện Inside và Outside
Giống NAT tĩnh, ta cần chỉ rõ giao diện nào là inside và giao diện nào là outside:
- Inside: nơi nhận lưu lượng nội bộ cần dịch.
- Outside: nơi lưu lượng ra ngoài Internet hoặc mạng công cộng.
ACL được sử dụng để xác định tập các local address (thường là private IP theo RFC 1918).
Ví dụ:
access-list 1 permit 10.1.1.0 0.0.0.255
ACL này cho phép tất cả địa chỉ trong subnet 10.1.1.0/24 được NAT.
⚠️ Lưu ý quan trọng: ACL luôn có implicit deny any ở cuối. Nếu viết permit any, router có thể NAT “toàn bộ” lưu lượng → gây tiêu tốn tài nguyên và khó kiểm soát. 3. Tạo pool địa chỉ toàn cục
Dùng lệnh:
ip nat pool NAT-POOL 209.165.200.230 209.165.200.235 netmask 255.255.255.224
Pool này gồm 6 địa chỉ từ .230 đến .235 trong dải 209.165.200.224/27. 4. Ánh xạ ACL với NAT Pool
Dùng lệnh ip nat inside source list để kết nối ACL và NAT pool:
ip nat inside source list 1 pool NAT-POOL
Lệnh này có nghĩa:
- ACL 1 chọn địa chỉ cục bộ nào được dịch.
- NAT-POOL là pool địa chỉ global được sử dụng.
Router sẽ dịch địa chỉ theo cơ chế first-come first-served. Khi pool hết địa chỉ, kết nối mới sẽ không được NAT. 5. Cấu hình giao diện
Ví dụ:
interface g0/0 ip address 10.1.1.1 255.255.255.0 ip nat inside interface g0/1 ip address 209.165.200.225 255.255.255.224 ip nat outside 6. Kiểm tra kết quả
Dùng lệnh:
show ip nat translations
Ví dụ output:
Pro Inside global Inside local Outside local Outside global icmp 209.165.200.230 10.1.1.100 --- --- tcp 209.165.200.231 10.1.1.101 --- ---
Ở đây:
- PC1 (10.1.1.100) được dịch sang địa chỉ đầu tiên trong pool .230.
- PC2 (10.1.1.101) được dịch sang địa chỉ tiếp theo .231.
- ICMP không có port number nên router dùng ICMP identifier field thay thế.
🔹 Thực tế vận hành
- NAT động cho phép nhiều máy trong LAN chia sẻ nhiều địa chỉ public, linh hoạt hơn NAT tĩnh.
- Các entry trong NAT table có timeout mặc định là 86400 giây (24h). Nếu không có lưu lượng, entry sẽ bị xóa để giải phóng tài nguyên.
👉 Ví dụ lab:
Giả sử bạn có 2 PC trong LAN (10.1.1.100, 10.1.1.101), cả hai đều ping ra Internet.
- PC1 sẽ được NAT thành 209.165.200.230.
- PC2 sẽ được NAT thành 209.165.200.231.
Nếu thêm PC3, nó sẽ được cấp 209.165.200.232 (nếu có sẵn trong pool). Nếu hết pool thì PC3 không thể ra Internet.
🔥 Như vậy, Dynamic NAT chính là “phiên bản nâng cấp” của Static NAT, cho phép nhiều người dùng nội bộ sử dụng nhiều địa chỉ toàn cục một cách linh hoạt. Đây là nền tảng để bạn học tiếp PAT (NAT Overload) – cơ chế cực kỳ phổ biến hiện nay trong hầu hết router gia đình và doanh nghiệp nhỏ.