Chuyên mục
Virtualization

Cấu hình mạng ảo trong Hyper-V bằng Virtual Switch: External Switch, Internal Switch, Private Switch

Cấu hình mạng ảo là một trong những thành phần quan trọng nhất khi sử dụng Hyper-V để thiết lập homelab. Mạng ảo trong Hyper-V được tạo dựng bởi các bộ chia mạng ảo với tên gọi Virtual Switch. Cần phải hiểu rõ cách thức hoạt động của từng loại switch ảo này thì mới thiết lập được một hệ thống mạng ảo hoạt động hiệu quả.

Bài viết này mình sẽ chia sẻ sự khác nhau giữa các loại Virtual Switch của Hyper-V và cách chọn loại Virtual Switch phù hợp cho nhu cầu sử dụng của bạn

Virtual Switch là gì?

Virtual Switch (bộ chia mảng ảo) trong Hyper-V vận hành y hệt như một Physical Switch (bộ chia mạng vật lý). Nó hoạt động ở Layer 2 của OSI Protocol với nhiệm vụ gửi gói dữ liệu đến địa chỉ MAC Address và quản lý VLAN Tagging.

Nếu bạn chưa hiểu rõ về các khái niệm mạng (OSI Protocol, MAC Address, VLAN) mình vừa mới nhắc đến, hãy tham gia khoá học Networking Essentials (miễn phí) của Cisco để trang bị kiến thức căn bản về hệ thống mạng. Nó sẽ giúp bạn không chỉ trong việc quản lý Homelab, mà còn hữu ích trong công việc sau này.

Trong Hyper-V, Virtual Switch được chia làm 3 loại:

  • External Virtual Switch: Tạo mạng ảo kết nối với mạng nội bộ trong nhà thông qua card mạng vật lý (network interface card) của Host. Các thiết bị trong mạng ảo có thể kết nối đến các thiết bị mạng vật lý trong mạng nội bộ.
  • Internal Virtual Switch: Kết nối host và các máy ảo với nhau. Dữ liệu được trao đổi giữa các máy ảo và host.
  • Private Virtual Switch: Kết nối các máy ảo với nhau, chỉ cho phép trao đổi dữ liệu giữa các máy ảo. Host và máy ảo không giao tiếp được với nhau.

Chi tiết về mô hình hoạt động của từng loại Virtual Switch, các bạn xem tiếp bên dưới sẽ hiểu rõ hơn

External Virtual Switch

External Virtual Network sử dụng adapter mạng vật lý của máy chủ để tạo mạng ảo. Card mạng vật lý trên máy chủ Hyper-V sẽ được biến thành Virtual Switch, không được cấp IP. Máy chủ sẽ tự động tạo thêm 1 card mạng ảo và kết nối vào External Virtual Switch.

Do External Switch hoạt động dựa trên card mạng vật lý nên nếu máy bạn chỉ có 1 card mạng vật lý, bạn chỉ có thể tạo được duy nhất 1 External Network trong Hyper-V.

Để tạo External Virtual Switch, bạn mở Hyper-V Manager và truy cập vào mục Virtual Swich Manager, bấm vào New virtual network switch, chọn External. Bấm Create Virtual Swich

Chọn External và bấm Create Virtual Switch
Chọn External network, sau đó chọn Card mạng vật lý đang sử dụng trên máy chủ

Khi tạo External network, bạn sẽ có thêm lựa chọn “Allow management operating system to share this network adapter”.

  • Nếu bấm chọn: Card mạng ảo của Host sẽ được kết nối vào Virtual Switch Network.
  • Nếu không chọn: Card mạng ảo của Host sẽ KHÔNG được kết nối vào Virtual Switch Network.
Allow management operating system to share this network adapter: Checked
Allow management operating system to share this network adapter: Unchecked

Lưu ý: Nếu bạn không chọn mục Allow management operating system to share this network adapter, Host sẽ không thể kết nối được với Router mạng trong nhà và sẽ bị mất kết nối Internet.

Nếu muốn có kết nối Internet trên Host, bạn có 2 lựa chọn:

  • Vào chính sửa External Virtual Swich, bấm chọn lại Allow management operating system to share this network adapter.
  • Tạo thêm 1 Internal Virtual Switch, kết nối với 1 máy ảo được cấu hình làm Router mạng để chia sẻ Internet với Host. Xem tiếp phần Internal Switch, mình sẽ có hình minh hoạt

Internal Virtual Switch

Internal Virtual switch không sử dụng kết nối đến NIC vật lý nào trên máy chủ. Nó là một switch tách biệt hoàn toàn trong Hyper-V. Hệ điều hành Host sẽ kết nối vào Internal Virtual Switch thông qua một card mạng ảo được Hyper-V tạo ra khi thiết lập Internal Switch.

Mặc định, Hyper-V đã tạo ra sẵn 1 Internal Swich có tên gọi Default Switch, với cấu hình DHCP và NAT để các máy ảo có thể kết nối với mạng vật lý / mạng Internet mà không cần phải cấu hình gì thêm.

Bạn có thể tạo thêm Internal Switch bằng cách truy cập vào Virtual Switch Manager và bấm vào New vỉtual network switch.

Tạo thêm Internal network tên gọi pfSense switch
Trên Windows 10 Host tự động tao ra card mạng vEthernet (pfSense Switch) để kết nối vào Virtual Switch vừa tạo trước đó trong Hyper-V.

Lưu ý: Nếu bạn tạo thêm Internal Switch, cần phải kết nối nó với một máy ảo được cấu hình làm Router (dùng VyOS, pfSense, OPNsense,…) thì các máy ảo khác trong cùng Switch mới được cấp DHCP. Virtual Switch không có chức năng cấp DHCP cho thiết bị kết nối.

Trong hình ở trên, các bạn có thể thấy vEthernet (pfSense Switch) báo Unidentified Network. Lý do vì trên Switch chưa có kết nối đến Router, nên nó không được cấp IP và báo lỗi.

Internal Switch (Màu đỏ hồng) trong Hyper-V

Như trong hình này, Host đang có IP 172.16.0.10 do máy ảo pfSense cung cấp. Cả Host và pfSense đều không thể truy cập Internet do chưa kết nối đến mạng vật lý bên ngoài. Mình có thể kết nối pfSense đến External Switch để chia sẻ Internet đến Host (hiện đang không có kết nối đến External Switch) như sau

Vào phần Setting của máy ảo pfSense, tạo thêm Network Adapter, kết nối vào External Switch
Máy ảo pfSense vừa có kết nối đến External Swich, vừa có kết nối đến Internal Switch

pfSense có thể được cấu hình NAT để chia sẻ kết nối từ subnet 192.168.0.1/24 đến subnet 172.16.0.1/24, Host có thể truy cập Internet thông qua pfSense.

Private Virtual Switch

Private Virtual Switch hoạt động y hệt như Internal Virtual Switch, chỉ khác là Host không có kết nối đến trên Private Switch. Do đó, các máy ảo trên Private Switch có thể giao tiếp với nhau, nhưng không thể giao tiếp với Host. Ngược lại, Host cũng không thể kết nối đến các máy ảo trên Private Network thông qua Private Virtual Switch.

Private Virtual Switch

Mục đích của Private Virtual Switch là để thiết lập các mạng riêng ảo Private Network hoàn toàn tách biệt với nhau. Nếu muốn các mạng riêng ảo này kết nói với nhau, hoặc kết nối đến Host, bạn cần phải tạo 1 máy ảo làm nhiệm vụ Router để liên kết các mạng ảo với nhau.

Tạo Private Switch với tên gọi pfSense Switch

Trong hình minh hoạ ở trên, các bạn có thể thấy mình sử dụng pfSense làm nhiệm vụ Router + Firewall để kết nối mạng từ subnet 172.16.0.1/24 đến subnet 192.168.0.1/24. Nếu cấu hình NAT trên pfSense, các máy ảo trong Private Switch có thể kết nối đến Router Mikrotik trong mạng vật lý để truy cập vào Host hoặc truy cập Internet.

Sử dụng Virtual Switch nào?

Lựa chọn loại Virtual Switch nào để sử dụng hoàn toàn phụ thuộc vào nhu cầu thiết lập Homelab của bạn. Có rất nhiều kịch bản bạn có thể áp dụng:

  • Nếu bạn muốn thiết lập máy ảo để chạy Pi-Hole hoặc AdGuard Home để chặn quảng cáo cho cả nhà, tốt nhất nên cho máy ảo này kết nối vào External Switch để tối ưu hoạt động.
  • Nếu bạn muốn tạo web server để có thể truy cập từ Internet, bạn nên sử dụng Private Switch và thiết lập thêm máy ảo pfSense làm tường lửa để tăng bảo mật. Đồng thời, ngăn chặn truy cập trái phép từ Internet vào hệ thống mạng vật lý trong nhà.
  • Bạn còn có thể thiết lập VLAN để phân chia mạng LAN ảo trên cùng một Virtual Switch, giúp việc cấu hình đơn giản hơn.

Hy vọng bài viết mang đến thông tin hữu ích cho bạn trong bước đầu nghiên cứu về Hyper-V và Virtualization.

Chúc bạn thiết lập Homelab thành công!

Trả lời