Khi mạng gia đình của bạn trở nên phức tạp hơn, việc phân chia các thiết bị vào các mạng cục bộ ảo (VLAN) là một giải pháp cực kỳ hợp lý, không chỉ từ góc độ bảo mật mà còn về quản trị. Bạn có thể dễ dàng tách biệt các thiết bị IoT khỏi các kho dữ liệu nhạy cảm, nhóm máy tính với máy in và các thiết bị mạng khác cần thiết, hoặc chỉ cho phép các thiết bị đó giao tiếp với nhau. Bên cạnh đó, bạn cũng có thể thiết lập các luồng camera IP chỉ truy cập được từ một chương trình trung tâm.
Một trong những công cụ tốt nhất để thực hiện điều này là sử dụng các switch mạng có quản lý (managed network switches). Chúng cho phép bạn gắn thẻ lưu lượng VLAN cụ thể cho từng cổng, thêm mạng khách chỉ cho phép truy cập Internet mà không thể truy cập tài nguyên nội bộ, và sử dụng nhiều tính năng VLAN tiện ích khác. Tuy nhiên, dù VLAN khá đơn giản để hiểu, tôi luôn gặp phải những điều mình bỏ lỡ trong lần thử đầu tiên, dù đó là một cổng bị gắn thẻ sai hay một phần nào đó của lớp truyền tải cần thay đổi thiết lập. Điều này chắc chắn sẽ làm hỏng VLAN như thể một sợi cáp vật lý bị rút ra, và điều quan trọng là phải biết bắt đầu tìm kiếm ở đâu nếu có sự cố xảy ra.
Hình ảnh một hệ thống mạng gia đình gồm switch mạng, bộ định tuyến (router) và thiết bị lưu trữ NAS, minh họa sự phức tạp và lợi ích của việc sử dụng VLAN
Dưới đây là 5 lỗi phổ biến nhất bạn có thể gặp phải khi cấu hình VLAN trong mạng gia đình và cách khắc phục chúng.
1. Bỏ Quên Chuyển Tiếp Lưu Lượng Multicast (mDNS)
Nhiều Thiết Bị Cần mDNS Để Phát Hiện Trong Mạng
Ngày nay, giao thức IP multicast được sử dụng trong hầu hết mọi thứ, từ Windows đến macOS, điện thoại, thiết bị IoT, loa thông minh, thiết bị mạng, và nhiều hơn nữa. Nó đã trở thành một công nghệ nền tảng cho nhà thông minh, và mọi thứ sẽ không hoạt động đúng cách nếu thiếu nó.
Vấn đề với các thiết bị dựa vào mDNS là nó không thể “nhảy” giữa hai dải IP khác nhau mà không có sự trợ giúp. Vì vậy, ngay sau khi bạn thiết lập một VLAN và chuyển bất kỳ thiết bị thông minh nào vào đó, mDNS sẽ hoạt động trên VLAN đó và mạng chính, nhưng không có cầu nối giữa hai mạng. Bạn sẽ cần truy cập vào router, tường lửa hoặc switch quản lý của mình và tìm kiếm mDNS Repeater, sau đó bật nó lên. Ngoài ra, bạn cũng nên bật IGMP Snooping và thiết lập các quy tắc tường lửa để UDP 5353 được truyền giữa các VLAN và mạng chính.
Thiết bị ổ cắm thông minh TCP Smart Plug tích hợp Home Assistant, minh họa thiết bị IoT cần mDNS để hoạt động trong mạng gia đình và VLAN
2. Sử Dụng Switch Không Quản Lý (Unmanaged Switch) Trong Đường Dẫn
Không Phải Mọi Switch Đều Chuyển Tiếp Thẻ VLAN, Khiến Công Sức Của Bạn Vô Ích
Hãy hình dung thế này: Bạn đã thiết lập một VLAN phụ, đảm bảo đã gắn thẻ các cổng trunk trên toàn bộ kiến trúc mạng của mình và cảm thấy tự tin về kỹ năng đã tích lũy được. Sau đó, bạn hết cổng để kết nối một PC và một thiết bị phát trực tuyến trong một phòng, vì vậy bạn cắm chúng vào một switch không quản lý, và cả hai thiết bị đều không kết nối được với VLAN bạn vừa mất công xây dựng. Bạn kiểm tra lại để xem mình đã gắn thẻ các cổng upstream chính xác là trunk (hoặc với VLAN bạn muốn truyền qua) chưa, nhưng vẫn không có kết nối trên PC hoặc thiết bị phát trực tuyến.
Vấn đề ở đây là phần lớn các switch không quản lý sẽ loại bỏ các tiêu đề 802.1Q, khiến mọi khung dữ liệu đi qua chúng bị chuyển về VLAN 1 mặc định. Đây không phải là cách bạn muốn các gói mạng của mình được gửi đi, và chỉ có hai giải pháp, cả hai đều yêu cầu phần cứng vật lý. Bạn có thể thêm một switch quản lý giá rẻ thay vì switch không quản lý, hoặc chạy một đường dây riêng từ router hoặc switch quản lý đến PC đó. Lựa chọn dễ dàng hơn rõ ràng là switch quản lý, và bạn thậm chí có thể tìm thấy các loại có PoE+ để không cần tìm ổ cắm điện gần đó.
Hình ảnh một chiếc switch Ethernet 5 cổng của Netgear, tượng trưng cho loại switch không quản lý có thể gây lỗi khi sử dụng VLAN trong mạng gia đình
3. Thiết Bị Client Nhận Địa Chỉ IP APIPA (169.254.x.x) Thay Vì Subnet Mong Muốn
Nếu Thấy Địa Chỉ 169.254.x.x, Bạn Đã Biết Phải Tìm Ở Đâu
Khi thêm các thiết bị client mới vào AP hoặc switch quản lý có gắn thẻ VLAN, một hiện tượng rất phổ biến là client nhận được địa chỉ IP trong dải 169.254.x.x hoặc một địa chỉ IP tự động riêng tư (APIPA) khác. Nguyên nhân tương tự như bất kỳ loại mạng nào khác; các gói DHCP discover của client không bao giờ đến được máy chủ, vì vậy nó không bao giờ được gán địa chỉ IP và quay trở lại địa chỉ mặc định.
Điều này có thể có nghĩa là một vài điều. Thẻ VLAN (ví dụ: VLAN 10) có thể có sẵn trên SSID hoặc switch quản lý, nhưng cổng trên switch đi đến router lại thiếu thẻ VLAN 10, vì vậy các khung đó không được chuyển đến router để cấp phát DHCP. Nó cũng có thể có nghĩa là không còn địa chỉ IP nào để cấp phát trong dải DHCP, có thể do các thiết bị khách đã chiếm hết (vì vậy hãy thay đổi thời gian hết hạn DHCP xuống khoảng 15 phút để giải quyết), hoặc vì không đủ địa chỉ trong dải đã thiết lập, và việc mở rộng dải DHCP sẽ khắc phục vấn đề.
À, còn một điều nữa cần kiểm tra. Các máy chủ Proxmox hoặc Docker sử dụng proxy-ARP có thể phản hồi các gói ARP thăm dò, nói rằng chúng quản lý một địa chỉ IP được gán cho các VM hoặc container, thay vì trên các giao diện vật lý. Điều này có thể gây ra sự cố nếu nhóm DHCP quá nhỏ, dẫn đến việc client tự gán dải 169.254.x.x thay vì kéo một địa chỉ IP DHCP hợp lệ.
Bộ chuyển mạch mạng Cat6a minh họa thiết bị mạng cần được cấu hình đúng VLAN trunking để đảm bảo client nhận IP hợp lệ thay vì APIPA
4. Lưu Lượng Giữa Các VLAN (Inter-VLAN Traffic) Không Chảy Đúng Cách
Có Thể Chặn Hoặc Cho Phép Toàn Bộ Lưu Lượng, Đều Không Theo Ý Muốn
Tùy thuộc vào phần cứng mạng và phần mềm đang chạy trên đó, bất kỳ VLAN mới nào cũng sẽ có một tập hợp các quy tắc tường lửa (firewall rules) mặc định. Đối với OPNsense, mặc định là chặn tất cả lưu lượng đến và đi từ VLAN đó, và bạn cần thêm các quy tắc tường lửa rõ ràng để cho phép lưu lượng, mDNS và bất kỳ gói tin nào khác mà VLAN sẽ cần. UniFi thì ngược lại (cũng như pfSense), nơi không có quy tắc tường lửa nào được áp dụng theo mặc định, và bạn sẽ phải thêm các quy tắc rõ ràng cho lưu lượng bạn cần, sau đó đặt quy tắc block all để ngăn VLAN đó truy cập các phân đoạn mạng LAN khác của bạn. Và như mọi khi, hãy kiểm tra các cổng dọc theo các kết nối vật lý cho VLAN đó để đảm bảo chúng được gắn thẻ với VLAN(s) chính xác hoặc được đặt làm cổng trunk.
Giao diện công cụ cấu hình đám mây Zyxel Nebula hiển thị các VLAN đang được tạo, minh họa việc quản lý quy tắc tường lửa cho lưu lượng Inter-VLAN
5. VLAN Có DHCP Nhưng Không Có Kết Nối Internet
Ước Gì Không Phải Do DNS, Nhưng Thực Ra Lại Là Do DNS (Với Cách Khắc Phục Đơn Giản)
Mạng cần một vài yếu tố để hoạt động cùng nhau nhằm đảm bảo luồng gói tin phù hợp, và hoàn toàn có thể thiết lập một VLAN, gắn thẻ tất cả các cổng và SSID một cách chính xác, các client kết nối đúng cách và nhận được địa chỉ IP, nhưng vẫn không có kết nối Internet. Điều này thường có nghĩa là thiếu DNS hoặc NAT, vì vậy chúng ta cần kiểm tra tường lửa và trình phân giải DNS (DNS resolver). Chúng ta cần các quy tắc NAT để lưu lượng có thể đi qua tường lửa từ VLAN đến giao diện WAN, và một quy tắc khác để cổng 53 có thể vượt qua tường lửa, cho phép lưu lượng DNS đi qua. Bạn cũng có thể cần thêm VLAN hoặc các thiết bị trên đó vào “listen list” của trình phân giải hoặc bộ chuyển tiếp DNS, để nó không loại bỏ bất kỳ truy vấn DNS nào từ VLAN đó.
Ứng dụng kiểm tra DNS trên Android hiển thị tốc độ DNS, minh họa tầm quan trọng của cấu hình DNS chính xác để VLAN có kết nối Internet
Chắc Chắn Sẽ Còn Gặp Nhiều Lỗi Hơn Với VLAN Trong Tương Lai
Mạng gia đình của tôi ngày càng mở rộng theo từng tuần, khi tôi khám phá ra những phương pháp hay nhất và các tính năng mạng khác mà tôi chưa từng sử dụng trước đây. Hiện tại tôi chỉ có một VLAN trên các điểm truy cập không dây của mình, mặc dù chúng có khả năng hỗ trợ nhiều VLAN, mỗi VLAN có SSID riêng. Tôi nghĩ đó là một trong những điều tiếp theo tôi sẽ thử nghiệm, để có thể có các SSID 2.4GHz dành riêng cho các thiết bị IoT, một SSID cho khách, có thể là một SSID dành riêng cho các client hỗ trợ 6GHz và các cấu hình tiềm năng khác. Dù tôi quyết định điều gì, tôi chắc chắn rằng tôi sẽ gặp lỗi thường xuyên hơn là làm cho chúng hoạt động (ban đầu), nhưng đó là một phần của niềm vui khám phá.
Hãy chia sẻ những kinh nghiệm hoặc lỗi VLAN mà bạn từng gặp phải và cách bạn đã khắc phục chúng trong phần bình luận bên dưới!