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
Mục Lục
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
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.
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.
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.
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
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.
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.
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!
Rất hay và chi tiết.Thanks!
Chào ad,
Mình muốn tạo card mạng ảo cho virtual machine nhưng mạng vật lý không kết nối với internet ( vì nhu cầu không cần internet ) thì tạo bằng cách nào để host và máy ảo thông nhau được ạ? NIC vật lý và mạng ảo đều đặt IP tĩnh.
Cảm ơn ad
Theo nhu cầu của bạn thì tạo Internal Switch, kết nối máy ảo vào đó thì máy ảo và host sẽ thông nhau qua Internal Switch.
nhưng nếu máy có 2 card mạng thì sao ad ?
mình muốn tạo 2 card mạng ảo dựa trên 2 card mạng vật lý
1 cái có mạng internet, 1 cái thì chạy mạng LAN nhưng lúc chọn Internal thì mình không thể chọn card để setup được
Cảm ơn ad
Mình không hiểu tại sao bạn phải tạo card mạng ảo dựa trên card vật lý trong khi lại không cần cái card mạng ảo đó kết nối Internet.
Nếu không muốn mạng ảo thứ hai không kết nối Internet thì tạo Internal Switch là xong, ko cần dựa vào card vật lý. Hoặc tạo External Switch dựa trên card vật lý đó luôn.
không cần card mạng ảo kết nối internet là vì để kết nối với mạng LAN nội bộ ad ạ.
Tức là máy ảo sẽ muốn vừa có internet, vừa có thể kết nối với mạng nội bộ ( ko có internet ) kia.
Ad xem cái link này có thể hiểu rõ hơn ko?
https://prnt.sc/agjkp7qicYk_
Cảm ơn ad
Theo sơ đồ bạn gửi thì cần phải tạo 2 External Switch dựa trên 2 card mạng vật lý, và kết nối máy ảo vào 2 switch này nhé.
cho tôi hỏi mục đích tạo mạng ảo để làm gì , máy tôi bỗng nhiên có mạng ảo mà tôi không thao tác gì , có phải máy dã bị virus tấn công