Việc cấu hình NAT (Network Address Translation) trên thiết bị Mikrotik là kỹ năng sống còn đối với bất kỳ kỹ sư hệ thống nào khi muốn triển khai Camera, Web Server, hoặc VPN nội bộ ra môi trường Internet. Tại VietITPro, chúng tôi thường xuyên tiếp nhận các ca xử lý hệ thống mạng doanh nghiệp bị "tắc nghẽn" hoặc không thể truy cập từ xa do cấu hình NAT sai quy trình hoặc không xử lý được vấn đề IP WAN thay đổi (Dynamic IP).
Bài viết này sẽ đi sâu vào bản chất kỹ thuật, cách cấu hình chi tiết thông qua Winbox/CLI và các mẹo xử lý sự cố thực tế.
1. Bản chất của NAT (Destination NAT) trên Mikrotik
Trên Mikrotik, để mở port, chúng ta sử dụng quy tắc dst-nat (Destination NAT) nằm trong chuỗi NAT của IP Firewall. Hiểu đơn giản, thiết bị sẽ "chặn" các gói tin đi vào cổng WAN của router, sau đó "thay đổi" địa chỉ đích của gói tin đó thành địa chỉ IP nội bộ (LAN) của máy chủ cần mở port.
Cấu trúc lệnh cơ bản của một quy tắc NAT là:
- Chain:
dstnat(xử lý gói tin đi vào). - Protocol: Thường là
tcphoặcudp. - Dst. Port: Cổng mà người dùng truy cập từ bên ngoài.
- In. Interface: Cổng WAN (nơi internet đi vào).
- Action:
dst-nat. - To Addresses: IP nội bộ của thiết bị cần mở port.
- To Ports: Cổng thực tế của dịch vụ bên trong.
2. Cấu hình NAT Port với IP WAN Tĩnh (Static IP)
Đây là trường hợp lý tưởng nhất khi nhà mạng cung cấp cho bạn một IP Public cố định.
Bước 1: Xác định thông số
Giả sử:
- WAN Interface:
ether1-wan - IP WAN:
113.xxx.xxx.xxx - IP Server nội bộ:
192.168.88.10 - Cổng cần mở:
8080(cho Web Server)
Bước 2: Thực hiện lệnh qua Terminal hoặc Winbox
Để đảm bảo tính chính xác, tôi khuyến khích anh em sử dụng cửa sổ New Terminal trên Winbox để copy/paste lệnh, giúp tránh sai sót thao tác chuột:
Lưu ý quan trọng cho Kỹ sư:
Luôn luôn thêm comment vào mỗi quy tắc NAT. Trong các hệ thống lớn với hàng chục port cần mở, việc không có comment sẽ khiến bạn "phát điên" khi cần bảo trì hoặc thay đổi cấu hình sau 6 tháng.
3. Cấu hình NAT Port khi IP WAN là IP Động (Dynamic IP)
Đa số đường truyền Internet cáp quang hộ gia đình và doanh nghiệp nhỏ hiện nay đều sử dụng IP động. Nếu bạn dùng lệnh dst-address=113.xxx.xxx.xxx, khi router khởi động lại hoặc nhà mạng cấp IP mới, quy tắc NAT sẽ bị "gãy" ngay lập tức.
Giải pháp 1: Sử dụng In-Interface (Khuyên dùng)
Thay vì chỉ định địa chỉ IP cụ thể, chúng ta chỉ định cổng đầu vào (Interface). Đây là cách làm "thực tế" nhất vì dù IP WAN có thay đổi bao nhiêu lần, quy tắc vẫn giữ nguyên.
Giải pháp 2: Kết hợp với DDNS (Dynamic DNS)
Nếu bạn cần truy cập vào hệ thống thông qua tên miền (ví dụ: mycompany.dyndns.org), bạn cần kích hoạt tính năng Cloud của Mikrotik:
1. Vào IP -> Cloud.
2. Tích chọn DDNS Enabled.
3. Nhấn Apply. Mikrotik sẽ cấp cho bạn một tên miền dạng [serial-number].sn.mynetname.net.
Bằng cách này, dù IP WAN thay đổi, tên miền vẫn trỏ đúng về địa chỉ hiện tại của router.
4. Bảng đối chiếu so sánh phương pháp NAT
5. Các lỗi thực tế thường gặp (Pan bệnh tại VietITPro)
Trong quá trình hỗ trợ kỹ thuật, chúng tôi thường xuyên gặp các trường hợp "đã mở port nhưng vẫn không vào được". Dưới đây là danh sách kiểm tra (Checklist) của chúng tôi:
1. Vấn đề "Hairpin NAT" (NAT Loopback)
Đây là tình trạng bạn đứng trong nội bộ mạng nhưng không thể truy cập vào máy chủ thông qua IP WAN hoặc tên miền DDNS. Nguyên nhân là do gói tin không biết đường quay ngược lại.
Cách xử lý: Thêm một quy tắc src-nat để "đánh lừa" router rằng gói tin đến từ chính nó.
2. Nhà mạng chặn Port (CGNAT)
Một số nhà mạng (như Viettel, VNPT) hiện nay áp dụng mô hình NAT chồng NAT (CGNAT). Bạn sẽ thấy IP trên router Mikrotik không trùng với IP trên các trang web như whatismyip.com.
Cách xử lý: Gọi tổng đài yêu cầu cấp IP Public (IP tĩnh hoặc IP động công cộng) hoặc sử dụng các giải pháp VPN/Tunneling (như WireGuard hoặc ZeroTier) để vượt qua lớp NAT của nhà mạng.
3. Quy tắc Firewall chặn đứng
Đôi khi quy tắc NAT đúng nhưng IP Firewall Filter lại chặn gói tin. Hãy đảm bảo quy tắc input và forward cho phép các port bạn vừa mở.
6. Lời khuyên từ Kỹ Sư Phần Cứng về Bảo mật
Việc mở port đồng nghĩa với việc bạn đang "đục lỗ" trên tường thành bảo vệ của mạng nội bộ. Để an toàn:
- Không bao giờ mở các port mặc định như 80, 22, 23, 3389 ra Internet. Hãy đổi chúng thành các port lạ (ví dụ: 8080, 4489, 5022).
- Sử dụng Address List: Chỉ cho phép các IP cụ thể (ví dụ IP văn phòng chi nhánh) được phép truy cập vào port đã mở.
- Cập nhật RouterOS thường xuyên: Các dòng vi xử lý của Mikrotik (như Atheros, Tilera) thường xuyên có bản vá bảo mật. Đừng để firmware quá cũ.
7. FAQ - Giải đáp thắc mắc từ cộng đồng
Q: Tại sao tôi đã mở port nhưng dùng công cụ canyouseeme.org vẫn báo Connection Refused?
Trả lời: Kiểm tra lại xem máy chủ bên trong (Server/Camera) đã bật dịch vụ chưa? Có đang dùng Firewall trên Windows/Linux chặn cổng đó không? Nếu máy chủ chưa chạy, router sẽ báo lỗi kết nối dù cấu hình NAT hoàn toàn đúng.
Q: Tôi có thể mở một dải port thay vì một port không?
Trả lời: Có, bạn có thể dùng cú pháp 8080-8090 trong trường Dst. Port. Tuy nhiên, hãy cẩn thận, mở quá nhiều port là hành vi "tự sát" về mặt bảo mật.
Q: Router Mikrotik bị treo khi cấu hình quá nhiều NAT?
Trả lời: Kiểm tra lại tài nguyên CPU. Các dòng đời cũ như hAP Lite (mã chip QCA9531) có tài nguyên hạn chế. Nếu hệ thống lớn, hãy cân nhắc sử dụng các dòng CCR hoặc thiết bị có chip xử lý mạnh hơn để tránh tình trạng tràn bộ nhớ NAT (NAT table full).
Hy vọng bài viết này giúp anh em kỹ thuật có cái nhìn thực tế về NAT trên Mikrotik. Nếu gặp các ca khó về phần cứng hoặc cấu hình mạng chuyên sâu, anh em có thể liên hệ trực tiếp với đội ngũ tại VietITPro.vn để được hỗ trợ.




