Trang chủ Tin nhắn đến fanpage facebook Tin nhắn Zalo Điện thoại

HƯỚNG DẪN TẠO PC ROUTER PFSENSE BẰNG HYPER-V TRÊN SERVER BOOT CHO PHÒNG GAME HÀNG TRĂM MÁY

 Giải pháp PC Router "Chuẩn Server": Tận dụng Hyper-V để tối ưu hóa phòng Net

1. Tại sao phải là phần cứng Server?

Server Bootrom chính là "bổn mạng" của phòng máy. Nên chủ phòng máy không tiếc tiền để sở hữu phần cứng chuyên dụng như Mainboard Server, RAM ECC (tự sửa lỗi) và CPU Xeon giúp hệ thống có khả năng vận hành bền bỉ 24/7.

So với việc sử dụng các dòng PC Mini hoặc Desktop phổ thông giá 3-4 triệu đồng để làm Router mà các dịch vụ game net trên toàn quốc bán cho chủ net, việc tận dụng trực tiếp tài nguyên của Server giúp:

       Độ ổn định tuyệt đối: Loại bỏ rủi ro treo máy, lỗi vặt từ phần cứng giá rẻ.

       Hiệu suất xử lý cao: Khả năng chịu tải và băng thông của linh kiện Server luôn vượt trội.


2. Sức mạnh từ ảo hóa Hyper-V "chính thống"

Thay vì sử dụng các nền tảng khác, Hyper-V là giải pháp được Microsoft phát triển hơn 18 năm, tích hợp sâu vào Windows Server. Đây là môi trường giúp máy ảo Pfsense hoạt động cực kỳ mượt mà, ổn định như đang chạy trên phần cứng thực thụ.


3. Trọng tâm cấu hình: Tính độc lập và Tương thích Game Net

Để hệ thống vận hành hoàn hảo, chúng ta cần xử lý hai vấn đề cốt lõi:

     Cô lập đường truyền (Network Isolation): * Sử dụng cơ chế Virtual Switch để tách bạch hoàn toàn Card mạng dành cho Pfsense (WAN/LAN) và Card mạng phục vụ Bootrom.

Đảm bảo lưu lượng mạng của Router không "xâm lấn" hoặc gây ảnh hưởng đến tốc độ truy xuất ổ cứng ảo của hàng trăm máy trạm.

     Tối ưu hóa máy ảo (Optimization for Gaming):

-Cấu hình thông số CPU và RAM phù hợp trong Hyper-V để giảm thiểu độ trễ (Latency/Ping).

-Đảm bảo Pfsense nhận diện đầy đủ phần cứng ảo hóa để xử lý các gói tin game nhanh nhất, không xảy ra tình trạng drop packet hay lag giật.


Kết luận: Việc đưa PC Router lên Hyper-V trên nền tảng phần cứng Server không chỉ tiết kiệm chi phí  đầu tư thiết bị rời mà còn mang lại một hệ thống quản trị tập trung, chuyên nghiệp và cực kỳ tin cậy.

Ví dụ chỉ với 1 card mạng 4 port (giá trên dưới 500k) bạn có thể tạo 1 pc router chạy được 80 pc phòng game, muốn chạy 200-300 máy thì chỉ cần thêm card quang tăng ram vật lý lên 8GB


_________________________________________________________________________

Cách kích hoạt Hyper-v và cài đặt Pfsense có nhiều và hướng dẫn chi tiết trên net, mình chỉ đi vào trọng tâm cấu hình tính độc lập của pc router pfsense trên windows server và không ảnh hưởng đến card mạng phần mềm boot rom, và máy ảo phải tương thích với game net.

A.TẠO VIRTUAL SWITCH CHO CARD MẠNG:

Trước tiên nên cài 2 Virtual Switch cho WAN và LAN ( Nếu có nhiều WAN's là LAN's đừng vội cài hết đầy đủ Virtual switch, nên làm hoàn thành xong cho pc router pfsense ra internet lúc đó ta thêm các Virtual Switch's cho WAN's và LAN's )

Vào Hyper-v Manager ta có giao diện sau. Ở cột bên phải chọn Virtual Switch Manager :



Nó hiện một cửa sổ mới chọn New virtual network switch.Ta có 3 lựa chọn:


-External: tạo Virtual Switch thông qua card mạng vật lý (network interface card) của Host ( server boot rom). Các thiết bị trong mạng ảo kết nối đến các thiết bị mạng vật lý trong mạng nội bộ.

-Internal: tạo 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: tạo 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.

Lưu ý: với game net thì ta chỉ quan tâm đến thiết bị mạng vật lý trong mạng nội bộ, nên không cần quan tâm đến mục Internal và Private

-------------------------------------------------------

Chọn External, click vào mục Create Virtual Switch, đặt tên WAN ( hay FPT, VNPT...) rồi chọn đúng card mạng vật lý ( coi chừng chọn nhầm card mạng boot rom) ở dòng External network.

**Bỏ dấu check ở dòng này: "Allow management operating system to share this network adapter" ( hình dưới). Mục này loại bỏ lý do sau:

-Phòng game chỉ quan tâm đến thiết bị mạng vật lý trong mạng nội bộ

-Giúp "giấu" card này khỏi Windows Server, ngăn chặn các xung đột IP không đáng có từ modem

-Ở cổng WAN, gói tin đi thẳng từ modem vào máy ảo Pfsense mà không phải đi vòng qua các lớp xử lý của Windows Server

-Nếu Pfsense bị tấn công hoặc quá tải, nó chỉ ảnh hưởng đến cổng WAN/LAN ảo, hệ thống nạp dữ liệu Bootrom vẫn chạy độc lập trên card vật lý riêng, giúp máy trạm không bị treo xanh

**Nên chọn dấu check ở dòng SR-IOV nó cho phép máy ảo pfSense truy cập trực tiếp vào phần cứng card mạng mà không cần đi qua lớp trung gian của Hyper-V. Giúp giảm tải CPU máy chủ xuống gần như bằng 0 cho tác vụ mạng và giảm độ trễ (latency) tối đa.

Chú ý: phải bật SR-IOV trong BIOS/UEFI của máy tính, card mạng phải hỗ trợ tính năng SR-IOV




Tạo card LAN cho pc router bằng card mạng vật lý thứ 2 cũng tương tự như WAN ( hình dưới)



B.TẠO MÁY ẢO:

Chuột phải vào tên máy chọn New --> chọn Virtual Machine:



Hiện cửa mới nhấn Next :



Đặt tên máy ảo là Pfsense chẳng hạn:



Chọn Generation 2 ( thế hệ 2 ) có hỗ trợ UEFI và hệ điều hành 64 bit:



Nếu phòng máy 40 pc trở xuống chọn ram vật lý cho máy ảo 2024 MB (2GB). Có nghĩa là trường hợp này server boot rom bạn mất 2GB dành riêng cho pc router

200 PC thì chọn 8G, mấy cyber thì khách chơi 24/7, chạy pc router ảo là thuận tiện

Theo mình nếu không chạy game thủ công để update thì chỉ cần chừa trống cho hệ thống windows server 2GB. Tuỳ theo cách mỗi người nhưng mình ví dụ nếu tổng ram là 16GB trống 10% thì hệ thống bạn trống chỉ còn 1,6GB. Nếu tổng ram là 128GB trống 10% thì hệ thống bạn còn trống đến 12,8GB

Lưu ý: phải tắt Dynamic Memory cấp RAM tĩnh (Static). Việc co giãn RAM sẽ gây ra độ trễ (jitter) khi Router cần xử lý lượng gói tin lớn đột ngột.



C.THIẾT LẬP THUỘC TÍNH MÁY ẢO TRƯỚC KHI CÀI ĐẶT PFSENSE:

Nhấn chuột phải chọn Setting, hiện cửa sổ mới, chọn Fimware, chỉnh tập tin cài đặt pfsense và image đuôi .vhdx theo thứ tự như hình

Chú ý: khi cài Pfsense xong nhớ chỉnh tập tin cài đặt Pfsense xuống dưới




Hình bên dưới bỏ hẳn dấu check Enable Secure BootEnable TPM do hệ điều hành Free BSD (pfsense là bản lite của Free BSD) có thể bị lỗi kén kernel, nếu không bỏ dấu check thì pfsense không khởi động được



Hình bên dưới có thể để mặc định hoặc chỉnh máy ảo sử dụng 2 core CPU, 4 core CPU hoặc chỉnh sử dụng máy ảo chiếm max 20% CPU vật lý ( CPU thật )

Thực tế khi pc router hoạt động nó chiếm không quá 5% CPU vật lý



Dòng SCSI đã chỉnh sẳn ở trên rồi

Chú ý khi cài pfsense xong chọn None để xoá đường dẫn đến tập tin cài đặt pfsense:



Ở hình bên dưới dòng Network Adapter chọn kết nối máy ảo với virtual switch WAN:


---------------------------------------------------

Chổ này (hình dưới) hơi phức tạp, nếu bạn thấy khó hiểu hay không kiểm soát được phần cứng hệ thống thì không tick chọn gì cả,cũng không sao.

- VMQ (Virtual Machine Queuing)

Thiết lập: NÊN TÍCH CHỌN (Enable) (Nếu phần cứng hỗ trợ).

Lý do: Đây là tính năng quan trọng nhất cho Router. Nó cho phép card mạng vật lý phân phối gói tin trực tiếp vào các hàng đợi của máy ảo pfSense, giúp giảm tải cho CPU máy Host và tăng tốc độ xử lý gói tin (Throughput).

Lưu ý: Nếu card mạng vật lý của bạn quá cũ và không hỗ trợ VMQ, việc bật tính năng này có thể làm mất mạng. Nhưng với các card mạng đời mới (Intel, Realtek), hãy luôn bật.

- IPsec Task Offload

Thiết lập: TÍCH CHỌN (Enable) nếu bạn có sử dụng VPN (IPsec) trên pfSense. Nếu không dùng VPN, bạn có thể tắt hoặc bật đều được.

Lý do: Nó giúp đẩy việc mã hóa/giải mã các gói tin VPN cho card mạng xử lý thay vì dùng CPU chính.

- Single-root I/O Virtualization (SR-IOV)

Thiết lập: NÊN TÍCH CHỌN (Enable) (Nếu phần cứng hỗ trợ).

Lý do: Đây là "vũ khí hạng nặng" cho pfSense. SR-IOV cho phép máy ảo pfSense truy cập gần như trực tiếp vào phần cứng card mạng vật lý mà không cần thông qua lớp ảo hóa của Hyper-V. Tốc độ sẽ đạt mức tối đa và độ trễ (Ping) thấp nhất.

Điều kiện: Cả BIOS, Card mạng vật lý và Mainboard phải hỗ trợ SR-IOV.


--------------------------------------

-MAC Address (Địa chỉ MAC)

      Static (Tĩnh): Bạn có thể để Dynamic (Mặc định) hoặc chọn Static nếu bạn muốn cố định địa chỉ MAC để Modem nhà mạng (hoặc hệ thống quản lý) luôn nhận diện đúng máy ảo này.

     Enable MAC address spoofing: TUỲ NHU CẦU TÍCH CHỌN.

     Lý do: nếu pfSense cần quyền thay đổi hoặc giả lập địa chỉ MAC để xử lý các gói tin từ WAN và cấp phát cho LAN. Nếu không tích ô này, pfSense thường sẽ không nhận được IP từ Modem hoặc không thể truyền dữ liệu ra ngoài.

-DHCP Guard (Bảo vệ DHCP)

     Enable DHCP Guard: KHÔNG TÍCH.

     Lý do: pfSense chính là máy chủ cấp DHCP cho mạng của bạn. Nếu bạn tích vào đây, Hyper-V sẽ chặn các gói tin DHCP từ pfSense, dẫn đến việc các thiết bị cần cấp DHCP như  Access Point (AP), camera IP..... trong phòng game  không nhận được địa chỉ IP.

-Router Guard (Bảo vệ Router)

      Enable Router Guard: KHÔNG TÍCH.

      Lý do: pfSense đóng vai trò là Router. Nếu bật tính năng này, Hyper-V sẽ ngăn không cho máy ảo này quảng bá chính nó là một Router (chặn các gói tin ICMP Redirect và Router Advertisement).

-Protected network

       Thiết lập: NÊN BỎ TÍCH 

       Lý do: Tính năng này của Hyper-V được thiết kế cho các cụm máy chủ (Cluster). Nếu tích chọn,  Hyper-V sẽ tự động di chuyển máy ảo sang một node khác trong cụm nếu nó phát hiện card mạng bị mất kết nối.

       Đối với pfSense chạy đơn lẻ (không chạy Cluster/High Availability của Hyper-V), việc bật tính năng này là không cần thiết và đôi khi có thể gây ra tình trạng máy ảo tự khởi động lại hoặc tạm dừng nếu tín hiệu mạng từ modem (WAN) không ổn định.

-Port Mirroring (Sao chép cổng)

      Mirroring mode: Để mặc định là None. (Chỉ dùng khi bạn muốn dùng một máy ảo khác để giám sát toàn bộ lưu lượng mạng của pfSense, thường không cần thiết cho phòng net).



Hình dưới chọn Add Hardware, tạo thêm 1 Network Adapter cho LAN



Ở hình bên dưới dòng Network Adapter chọn kết nối máy ảo với virtual switch LAN, nhớ loại bỏ các dấu check tương tự như WAN


-----------------------------------------------------

Đối với pfSense (chạy trên nhân FreeBSD), không phổ biến như OS windows và Ubuntu nên Hyper-V và máy ảo Router pfsense khó "hiểu" nhau. Dưới đây là cách tích chọn tối ưu nhất:

 -Operating system shutdown: PHẢI TÍCH.

      Tác dụng: Giúp bạn có thể nhấn nút "Shut down" từ quản lý Hyper-V để tắt pfSense một cách an toàn. Nếu không tích, khi bạn tắt máy chủ, pfSense sẽ bị ngắt điện đột ngột, dễ gây lỗi file hệ thống (corrupt file).

-Time synchronization: CHỌN HAY KHÔNG CHỌN CŨNG ĐƯỢC, do trên pfsense có sẵn công cụ đồng bộ thời gian time server. 

      Tác dụng: Đồng bộ giờ của pfSense theo giờ của máy chủ vật lý.

-Data Exchange: CHỌN HAY KHÔNG CHỌN CŨNG ĐƯỢC, theo mình nên bỏ.

     Tác dụng: Cho phép máy chủ và máy ảo trao đổi một số thông tin cơ bản (như phiên bản OS, tên máy). Với hệ điều hành windows hay Ubuntu thì bật chứ pfsense là bản lite của OS FreeBSD có thể không chính xác.

-Heartbeat: CHỌN HAY KHÔNG CHỌN CŨNG ĐƯỢC, theo mình nên bỏ.

     Tác dụng: Để máy chủ Hyper-V biết máy ảo pfSense còn đang "sống" hay đã bị treo. Với hệ điều hành windows hay Ubuntu thì bật chứ pfsense là bản lite của OS FreeBSD có thể không chính xác.

-Backup (volume shadow copy): NÊN BỎ TÍCH.

      Lý do: pfSense sử dụng định dạng file hệ thống (UFS hoặc ZFS) khác với Windows. Tính năng VSS này thường không hoạt động tốt hoặc gây lỗi treo máy ảo khi Windows thực hiện sao lưu.

-Guest services: NÊN BỎ TÍCH.

      Lý do: Tính năng này dùng để chép file trực tiếp từ Host vào Guest mà không cần mạng. Với Router pfSense, bạn thường quản lý qua WebGUI nên không cần đến nó, tắt đi để bảo mật hơn.


---------------------------------------------

Checkpoints (Điểm kiểm soát) giống như một bản "Snapshot" hệ thống. Nếu bạn cài đặt lỗi, bạn có thể quay lại lúc trước. Tuy nhiên, với Router pfSense, nó lại gây ra vấn đề về hiệu năng ổ cứng.


Cách cấu hình tối ưu cho pfSense:

    -Mục Enable checkpoints: NÊN BỎ TÍCH.

     Lý do: Khi bật Checkpoints, Hyper-V sẽ tạo ra các file .avhdx. Việc này làm chậm tốc độ đọc/ghi của ổ cứng ảo. Đối với Router xử lý gói tin liên tục, việc ghi file checkpoint sẽ gây ra độ trễ (latency) và làm đầy ổ cứng rất nhanh.

     -Nếu bạn vẫn muốn để lại để phòng hờ:

Nếu bạn muốn giữ lại để khi nâng cấp pfSense lỗi thì quay lại, hãy chọn Standard checkpoints thay vì Production checkpoints.

Theo mình cho PC Router chạy ổn định là: Tắt hẳn (Bỏ tích Enable checkpoints).


------------------------------------------------

-Lựa chọn dòng: "Always start this virtual machine automatically"

      Bạn hãy tích chọn vào dòng thứ 3 (dưới cùng) trong nhóm lựa chọn đầu tiên.

      Tại sao: pfSense cung cấp internet cho hệ thống mạng. Nó phải tự động bật lên ngay khi máy chủ có điện mà không cần bạn phải can thiệp thủ công. Nếu bạn chọn "Nothing", cả phòng game sẽ không có mạng cho đến khi bạn vào bật máy ảo lên.

-Startup delay (Độ trễ khi khởi động)

      Trong ô số giây (0 seconds), bạn nên:

      Để nguyên là 0 giây: Để pfSense khởi động ngay lập tức, giúp cấp IP và mạng cho các thiết bị khác sớm nhất có thể.

Chỉ tăng lên (khoảng 30-60s) nếu: Máy chủ của bạn chạy quá nhiều máy ảo nặng cùng lúc khi khởi động và bạn muốn dành tài nguyên cho ổ cứng ổn định trước khi chạy Router. Nhưng thông thường, đối với Router, 0 là con số tốt nhất.


------------------------------------------------

Chọn dòng: "Shut down the guest operating system"

Đây là lựa chọn tối ưu nhất cho pfSense.

    Tại sao chọn dòng này? Khi bạn tắt máy tính hoặc khởi động lại Windows Host, Hyper-V sẽ gửi một tín hiệu tắt máy đúng quy trình cho pfSense. Nó giống như việc bạn vào menu và chọn "Halt system". Các file hệ thống, log mạng và cấu hình sẽ được đóng lại an toàn trước khi máy ảo tắt hẳn.

     Tại sao không chọn "Save the virtual machine state"? Lựa chọn này (thường là mặc định) sẽ "đóng băng" máy ảo. Khi bật lại, đôi khi pfSense gặp lỗi mất kết nối mạng hoặc sai lệch thời gian (time drift), khiến các dịch vụ như VPN hoặc chứng chỉ SSL bị lỗi.

     Tại sao không chọn "Turn off the virtual machine"? Dòng này tương đương với việc "rút điện đột ngột". Rất dễ gây lỗi ổ cứng ảo (corrupt file hệ thống FreeBSD), khiến pfSense không thể khởi động lại được ở lần sau.



D.CÀI ĐẶT PFSENSE

Chuột phải, chọn Start để khởi động máy ảo



Sau khi nạp thông tin cơ bản từ tập tin cài đặt pfsense lên RAM, sẻ hiện thị cửa sổ bên dưới bắt đầu quá trình cài đặt, nhấn Accept ( chấp nhận)



Cửa sổ bên dưới nhấn vào Install ( cài đặt)



Phân vùng ổ đĩa, chọn Auto (UFS) rồi nhấn OK .



Hình dưới chọn Entall Disk để phân bổ toàn bộ đĩa cho pfSense.



Chọn GPT GUID Partition Table cho các phân vùng rồi nhấn OK



Hình dưới nhấn vào Finish (kết thúc)



Khi được yêu cầu xác nhận, chỉ cần nhấp vào nút Comit



Nhấn vào Reboot ( khởi động lại ) hoàn tất quá trình cài đặt


------------------------------

Sau khi khởi động lại máy ảo, nó hỏi xem chúng ta có muốn thiết lập VLAN ngay bây giờ không hãy gõ chữ "n" nhấn Enter

Tiếp theo, cấu hình WAN , để ý hn0 có MAC address là 00:15:5d:01:D2:00 là card WAN đã thiết lập ở trên

Tương tự hn1 có MAC address là 00:15:5d:01:D2:00 là card LAN đã thiết lập ở trên

Khi nó hỏi hn0 và hn1 chọn làm WAN và LAN cho đúng






Giao diện khi cài đặt xong



Phòng máy đang chạy thực tế pc router pfsense trên Hyper-v



LỖI CÓ THỂ XẢY RA:

Trường hợp phát sinh lỗi do chọn nhầm card mạng cho Hyper-v trong quá trình cài đặt ảnh hưởng đến hệ thống, bạn chỉ cần bỏ dấu check như hình bên dưới là card mạng trở về trạng thái cũ









GIỚI THIỆU

-Bên mình là nơi đầu tiên ở Việt Nam đưa ra kỹ thuật như khái niệm định tuyến, QoS game Online phòng game, VPN tích hợp router,... dành riêng cho router game Online và hiện tại đang là chuẩn mực cho các phòng game trên toàn quốc
-Là nơi duy nhất ở Việt Nam cài đặt đầy đủ các tính năng hỗ trợ game online, áp dụng nhiều kỹ thuật và kinh nghiệm khi triển khai thực tế router chuyên game online từ hàng chục thiết bị đến hàng trăm thiết bị

0 comments