Chức năng phản chiếu cổng trong Hyper-V: Hướng dẫn thiết lập
Khắc phục sự cố là một nhiệm vụ thường gặp đối với các quản trị viên hệ thống làm việc trong lĩnh vực mạng. Thiết bị mạng chuyên nghiệp thường được trang bị các tính năng giám sát và khắc phục sự cố, chẳng hạn như tính năng sao chép cổng (port mirroring). Tính năng sao chép cổng cũng có thể hữu ích trong việc phân tích lưu lượng mạng trong các môi trường ảo, bao gồm các mạng ảo trên máy chủ Microsoft Hyper-V và giao tiếp mạng giữa các máy ảo (VM). Bài viết trên blog này sẽ hướng dẫn cách cấu hình tính năng sao chép cổng trên Microsoft Hyper-V để phân tích giao tiếp mạng trong môi trường ảo.
Các khái niệm chính về phản chiếu cổng
Trước khi giải thích cách cấu hình phản chiếu cổng, hãy cùng tìm hiểu các khái niệm chính, nguyên lý hoạt động và các tính năng cấu hình hiện có của Hyper-V.
Phản chiếu cổng là gì?
Phản chiếu cổng là tính năng cho phép bạn sao chép lưu lượng mạng từ cổng mạng của máy chủ nguồn sang một cổng mạng (bộ điều hợp) của máy chủ phụ để phân tích sâu hơn về lưu lượng này. Máy chủ có thể là máy vật lý, máy ảo, thiết bị mạng có giao diện mạng, v.v. Máy chủ nguồn là máy chủ có lưu lượng mạng được giám sát trong bối cảnh này. Cổng nguồn còn được gọi là cổng được nhân bản và cổng đích còn được gọi là cổng được quan sát. Nhân bản cổng còn được gọi là Switched Port Analyzer (SPAN).
Các loại và lợi ích
Nhân bản cổng có thể là cục bộ hoặc từ xa, tùy thuộc vào chế độ kết nối giữa các cổng. Đối với sao chép cổng cục bộ, các cổng mạng nguồn và đích được kết nối với cùng một thiết bị chuyển mạch. Sao chép cổng từ xa được sử dụng khi các cổng nguồn và đích được kết nối với các thiết bị chuyển mạch khác nhau. Việc gắn thẻ VLAN và đóng gói GRE có thể được sử dụng cho sao chép cổng từ xa để chuyển lưu lượng mạng đến cổng và thiết bị được giám sát.
Lợi ích của sao chép cổng là khả năng phân tích và gỡ lỗi giao tiếp mạng mà không ảnh hưởng đến quá trình xử lý của các thiết bị mạng đang hoạt động. Quản trị viên có thể phân tích lưu lượng để xác định các cuộc tấn công tiềm ẩn trên mạng, phát hiện nguồn tấn công và nâng cao bảo mật mạng. Khi sử dụng sao chép cổng, không cần phải ghi lại lưu lượng mạng trực tiếp trong hệ điều hành khách của một máy đang hoạt động (ví dụ: một máy ảo sản xuất).
Lưu ý rằng sao chép cổng tiêu tốn thêm băng thông mạng để truyền tải lưu lượng được sao chép, và bạn có thể cần kích hoạt tính năng này theo yêu cầu khi cần thực hiện phân tích mạng.
So sánh giữa phản chiếu cổng và chuyển tiếp cổng
Phản chiếu cổng khác với chuyển tiếp cổng ở chỗ lưu lượng mạng, chẳng hạn như các gói TCP hoặc datagram UDP, không thể được chuyển hướng trong phản chiếu cổng. Lưu lượng có thể được phản chiếu (sao chép), nhưng nguồn và đích của hướng lưu lượng ban đầu không bị thay đổi. Một bản sao của lưu lượng ban đầu sẽ được gửi đến vị trí đích để phân tích. Trong tính năng chuyển tiếp cổng (port forwarding), điểm đến của lưu lượng mạng (chẳng hạn như các gói TCP hoặc các datagram UDP) có thể được thay đổi, và các gói cụ thể (hoặc các đơn vị dữ liệu giao thức khác) có thể được chuyển đến một địa chỉ IP và cổng khác trong mạng IP. Tính năng chuyển tiếp cổng được sử dụng cùng với dịch địa chỉ mạng (NAT) để đảm bảo giao tiếp giữa các mạng. Không có bản sao nào của lưu lượng gốc được tạo ra.
Chức năng sao chép cổng trong Hyper-V
Bạn có thể sử dụng chức năng sao chép cổng trong Hyper-V để phân tích lưu lượng trong các mạng ảo mà các máy ảo (VM) được kết nối thông qua các bộ chuyển mạch ảo. Bạn cần xác định một máy ảo đích và cài đặt phần mềm thu thập lưu lượng như Wireshark để phân tích lưu lượng. Bạn có thể sử dụng các hệ thống phát hiện xâm nhập (IDS) khác có sẵn cho mục đích này.
Tính năng sao chép cổng trong Hyper-V tương tự như sao chép cổng phần cứng nhưng được triển khai ở cấp bộ chuyển mạch ảo Hyper-V. Các tính năng mở rộng của bộ chuyển mạch và danh sách kiểm soát truy cập (ACL) cổng được sử dụng trên bộ chuyển mạch ảo Hyper-V để thiết lập quy tắc cho việc chuyển tiếp và thu thập lưu lượng.
Chức năng phản chiếu cổng chỉ hoạt động trong phạm vi của một máy chủ Hyper-V duy nhất. Nếu các máy ảo nằm trên các máy chủ Hyper-V khác nhau (ví dụ: trong một cụm dự phòng, sau khi di chuyển máy ảo từ máy chủ này sang máy chủ khác), thì không thể sử dụng chức năng phản chiếu cổng Hyper-V. Trong trường hợp này, bạn cần cấu hình thêm một máy ảo đích để phân tích mạng trên máy chủ Hyper-V thứ hai mà máy ảo nguồn đã được di chuyển đến.
Chuẩn bị cho việc cấu hình phản chiếu cổng
Bạn nên tìm hiểu kỹ các yêu cầu để cấu hình phản chiếu cổng Hyper-V.
Điều kiện tiên quyết và yêu cầu thiết lập
Dưới đây là các yêu cầu để cấu hình phản chiếu cổng trong môi trường Hyper-V:
- Windows Server 2012 R2 (hoặc phiên bản mới hơn) có Hyper-V và quyền truy cập quản trị. Windows 10 hoặc phiên bản mới hơn có thể được sử dụng làm hệ điều hành máy khách.
- Một bộ chuyển mạch ảo trên máy chủ Hyper-V.
- Ít nhất hai máy ảo để nhân đôi (sao chép) lưu lượng từ máy ảo nguồn sang máy ảo đích.
Danh sách kiểm tra phần cứng và phần mềm
Cần cài đặt công cụ phân tích lưu lượng (traffic sniffer) hoặc hệ thống phát hiện xâm nhập trên máy ảo đích. Ví dụ về các công cụ này là Wireshark, Microsoft Network Monitor, Ettercapvà SmartSniff.
Các bước cấu hình
Chúng ta có hai máy ảo Windows trên một máy chủ Hyper-V:
Wind0ws-VM– máy ảo nguồn ( 192.168.101.215 )Win-VM-Dest– máy ảo đích ( 192.168.101.212 )
Máy chủ Hyper-V được cấu hình trên Windows Server 2019. Cách cấu hình cho các phiên bản Windows khác được hỗ trợ cũng tương tự.
Cấu hình bộ chuyển mạch ảo
Bạn có thể sử dụng một bộ chuyển mạch ảo hiện có hoặc tạo một bộ chuyển mạch ảo mới. Nếu không có bộ chuyển mạch ảo nào trên máy chủ Hyper-V, hãy tạo một bộ chuyển mạch ảo mới bộ chuyển mạch ảo. Để tạo bộ chuyển mạch ảo, hãy thực hiện như sau:
- Mở Trình quản lý Hyper-V, nhấp chuột phải vào máy chủ Hyper-V, rồi chọn
Virtual Switch Managertrong menu ngữ cảnh.
- Chọn loại công tắc ảo và nhấp vào
Create Virtual Switch. Trong trường hợp này, chúng ta sử dụngvSwitch0, một công tắc bên ngoài (mạng cầu nối). Nhấp vàoOKđể lưu cài đặt và đóng cửa sổ.
Cấu hình máy ảo nguồn
Khi công tắc ảo đã sẵn sàng, bạn có thể cấu hình máy ảo nguồn mà bạn muốn giám sát lưu lượng truy cập.
- Để mở cài đặt máy ảo nguồn trong Trình quản lý Hyper-V, nhấp chuột phải vào tên máy ảo và chọn
Settingstrong menu ngữ cảnh.
- Trong cửa sổ cài đặt máy ảo, điều hướng đến
Network Adapter > Advanced features. - Trong phần
Port Mirroring, chọnSourcelàm chế độ nhân bản cổng trong menu thả xuống. Thao tác này kích hoạt tính năng nhân bản cổng Hyper-V cho cổng của bộ chuyển mạch ảo mà cổng hiện tại của máy ảo đang kết nối. Nhấp vàoOKđể lưu cài đặt.
- Hãy ghi nhớ tên bộ chuyển mạch ảo mà bộ điều hợp mạng ảo của máy ảo nguồn đang kết nối. Ưu điểm là bạn có thể cấu hình nhiều hơn một máy ảo nguồn để phân tích lưu lượng của tất cả các máy ảo trên máy ảo đích.
Bước tiếp theo là cấu hình máy ảo đích mà lưu lượng mạng sẽ được nhân bản (sao chép).
Cấu hình máy ảo đích
Phương pháp được khuyến nghị là tạo thêm một bộ điều hợp mạng trên máy ảo đích và vô hiệu hóa tất cả các dịch vụ mạng cho bộ điều hợp mạng này để phân tích chính xác hơn. Cách tiếp cận này cho phép bạn thu thập toàn bộ lưu lượng mạng sau khi vô hiệu hóa các dịch vụ và giao thức mạng không cần thiết.
- Tắt máy ảo đích nếu máy ảo đang chạy.
- Để mở cài đặt máy ảo của máy ảo đích, nhấp chuột phải vào tên máy ảo trong Hyper-V Manager và chọn
Settings. - Nhấp vào
Add hardwareở khung bên trái của cửa sổ cài đặt máy ảo, chọnNetwork adapter, rồi nhấp vàoAdd.
- Chọn công tắc ảo mà bộ điều hợp mạng ảo thứ hai sẽ được kết nối. Đây phải là cùng một bộ chuyển mạch ảo với bộ chuyển mạch mà máy ảo đầu tiên (nguồn) được kết nối. Trong trường hợp của chúng ta, đó là
vSwitch0. Nhấp vàoOKđể lưu cài đặt và đóng cửa sổ.
- Mở lại cài đặt của máy ảo đích.
- Chọn bộ điều hợp mạng ảo thứ hai được tạo ra để nhân bản cổng và chẩn đoán lưu lượng (trong danh sách phần cứng máy ảo ở khung bên trái) và chuyển đến
Network adapter > Advanced features. - Trong phần
Port mirroring, chọnDestinationlàm chế độ nhân bản để nhận lưu lượng mạng được nhân bản. NhấnOK.
- Bật nguồn các máy ảo.
- Kết nối với máy ảo đích đã được tạo để nhận và phân tích lưu lượng (bằng Hyper-V VMConnect hoặc RDP).

- Mở
Network and sharing centertrong máy ảo Windows đích. Nhấp vàoChange adapter settings. - Chọn bộ điều hợp mạng thứ hai được tạo để phân tích lưu lượng (bạn có thể đổi tên bộ điều hợp này thành
LAN2-SPANđể thuận tiện hơn). - Nhấp chuột phải vào bộ điều hợp mạng và chọn
Properties.
Bây giờ, bạn có thể cài đặt và cấu hình phần mềm phân tích lưu lượng mạng, chẳng hạn như WireShark, trên máy ảo đích.
Cài đặt công cụ phân tích lưu lượng
- Tải xuống và cài đặt
Wiresharktrên máy ảo đích. Quy trình cài đặt rất đơn giản thông qua trình hướng dẫn giao diện người dùng – bạn có thể sử dụng các thiết lập mặc định. - Chạy
Wiresharktrên máy ảo đích. - Nhấp đúp vào bộ điều hợp mạng được tạo riêng cho chức năng sao chép cổng và phân tích lưu lượng mạng (
LAN2-SPAN) trong cửa sổWireshark.
- Bây giờ, bạn có thể xem hoạt động mạng của máy ảo nguồn (địa chỉ IP của máy ảo nguồn là 192.168.101.215). Hãy thử ping google.com trên máy ảo nguồn.
- Chúng ta có thể thấy các yêu cầu và phản hồi ICMP đến/từ 142.251.208.110 – đây là địa chỉ IP của máy chủ google.com tại thời điểm này.

- Để thuận tiện hơn, bạn có thể bật bộ lọc, ví dụ: chọn ICMP.

Đây là một ví dụ cơ bản. Bạn có thể theo dõi và phân tích các hoạt động mạng khác bằng cách sử dụng các giao thức khác.
PowerShell
Hệ điều hành Windows Server cũng cho phép bạn định cấu hình và quản lý tính năng nhân bản cổng Hyper-V trong PowerShell.
Để bật tính năng nhân bản cổng trên máy ảo nguồn và máy ảo đích, hãy chạy các lệnh tương ứng:
Set-VMNetworkAdapter -VMName Wind0ws-VM -PortMirroring Source
Set-VMNetworkAdapter -VMName Win-VM-Dest -PortMirroring Destination
Để tắt tính năng nhân bản cổng cho một máy ảo: Set-VMNetworkAdapter -VMName Wind0ws-VM -PortMirroring None
Để kiểm tra cài đặt nhân bản cổng cho các máy ảo (VM):
(Get-VMNetworkAdapter -VMName Wind0ws-VM).PortMirroringMode
(Get-VMNetworkAdapter -VMName Win-VM-Dest).PortMirroringMode
Bạn có thể sử dụng các lệnh sau để hiển thị thông tin trợ giúp:
Get-Help Set-VMNetworkAdapter
Get-Help Set-VMNetworkAdapter -full
Get-Help Set-VMNetworkAdapter -detailed
Get-Help Set-VMNetworkAdapter -examples
Các lệnh sau đây có thể hữu ích để cấu hình phản chiếu cổng:
Add-VMNetworkAdapter – thêm một bộ điều hợp mạng ảo mới cho máy ảo (VM)
Get-NetAdapter – hiển thị danh sách các bộ điều hợp mạng cho máy ảo (VM)
Rename-Netadapter – thay đổi tên của bộ điều hợp mạng ảo cho máy ảo (VM)
Kết luận
Việc cấu hình phản chiếu cổng Hyper-V có thể được thực hiện thuận tiện trong giao diện người dùng đồ họa của Hyper-V Manager hoặc trong PowerShell. Hãy tuân thủ các yêu cầu và lưu ý các hạn chế, chẳng hạn như vị trí của các máy ảo nguồn và đích trên cùng một máy chủ Hyper-V. Bạn có thể cần cấu hình thêm các máy ảo đích với công cụ phân tích lưu lượng trên các máy chủ Hyper-V trong cụm chuyển đổi dự phòng. Wireshark là một công cụ phân tích lưu lượng tiện lợi và phổ biến, nhưng bạn có thể sử dụng các công cụ khác nếu cần.