0
0
Lập trình
Thaycacac
Thaycacac thaycacac

Cách mở WSL2 ra mạng LAN một cách vĩnh viễn

Đăng vào 5 tháng trước

• 4 phút đọc

Hướng dẫn mở WSL2 ra mạng LAN vĩnh viễn

Bạn có thể mở WSL2 ra mạng LAN của mình một cách vĩnh viễn bằng cách sử dụng chế độ mạng mirrored. Bài viết này sẽ hướng dẫn bạn từng bước để thực hiện điều này, từ việc cấu hình cho đến những giải pháp khắc phục sự cố có thể xảy ra.

Mục tiêu

Mục tiêu của bài viết là giúp bạn dễ dàng kết nối WSL2 với các thiết bị khác trong mạng LAN, giúp việc phát triển và thử nghiệm ứng dụng trở nên dễ dàng hơn.

Điều kiện tiên quyết

Trước khi bắt đầu, hãy đảm bảo rằng bạn có các điều kiện sau:

  • ✅ Bạn cần có ít nhất Windows 11 22H2.
  • ✅ Quyền truy cập quản trị viên trên máy tính của bạn.
  • ✅ Bạn phải có WSL2 đã được cấu hình.

Khuyến nghị

Đây là một bước không bắt buộc nhưng bạn nên tạo một điểm khôi phục vì chúng ta sẽ tắt firewall cho mạng riêng hoặc toàn bộ mạng.

Tài liệu tham khảo

Bước đầu tiên là mở Windows PowerShell với quyền Quản trị viên và làm theo các bước sau:

Bước 1: Chỉnh sửa tệp .wslconfig bằng notepad

Mở hoặc tạo tệp .wslconfig nằm trong thư mục profile người dùng Windows của bạn. Bạn có thể thực hiện điều này bằng cách chạy lệnh sau trong Windows PowerShell:

powershell Copy
notepad $env:USERPROFILE\.wslconfig

Bước 2: Thêm cài đặt chế độ mirrored

Thêm các dòng sau vào tệp .wslconfig và lưu lại:

plaintext Copy
[wsl2]
networkingMode=mirrored

Bước 3: Tắt và khởi động lại WSL2

Tắt tất cả các phiên bản WSL2 để áp dụng các thay đổi:

powershell Copy
wsl --shutdown

Bước 4: Cấu hình firewall Hyper-V

Bước cuối cùng là cho phép các kết nối vào qua firewall Hyper-V mà WSL2 sử dụng. Mở Windows PowerShell với quyền Quản trị viên và chạy một trong các lệnh sau:

Đối với mạng riêng (an toàn):

Điều này sẽ tắt firewall chỉ cho các mạng riêng:

powershell Copy
New-NetFirewallHyperVRule -DisplayName 'WSL Private Inbound Rule' -Profiles Private -Direction Inbound -Action Allow -VMCreatorId ((Get-NetFirewallHyperVVMCreator).VMCreatorId)

Để tắt hoàn toàn firewall (dễ nhất nhưng kém an toàn):

powershell Copy
Set-NetFirewallHyperVVMSetting -Name ((Get-NetFirewallHyperVVMCreator).VMCreatorId) -Enabled False

Kết quả

Chúc mừng bạn, các dịch vụ WSL2 của bạn sẽ có thể truy cập trực tiếp từ các thiết bị khác trong mạng LAN bằng địa chỉ IP của máy bạn.

Các biện pháp tốt nhất

  • Luôn kiểm tra quyền truy cập: Đảm bảo rằng bạn chỉ cho phép các thiết bị mà bạn tin tưởng kết nối vào WSL2.
  • Giới hạn kết nối: Nếu có thể, hãy giới hạn các kết nối đến WSL2 từ các địa chỉ IP cụ thể.
  • Theo dõi hiệu suất: Sử dụng các công cụ theo dõi để kiểm tra hiệu suất và bảo mật của WSL2.

Những cạm bẫy thường gặp

  • Quên lưu tệp cấu hình: Nhiều người dùng quên lưu tệp .wslconfig sau khi chỉnh sửa, dẫn đến việc không áp dụng các thay đổi.
  • Không khởi động lại WSL2: Sau khi thay đổi cấu hình, bạn cần phải khởi động lại WSL2 để các thay đổi có hiệu lực.

Mẹo hiệu suất

  • Sử dụng SSD: Nếu có thể, hãy cài đặt WSL2 trên ổ SSD để cải thiện tốc độ truy cập và hiệu suất tổng thể.
  • Tối ưu hóa cấu hình WSL2: Xem xét việc điều chỉnh các cài đặt của WSL2 để phù hợp với nhu cầu phát triển của bạn.

Giải quyết sự cố

Nếu bạn gặp sự cố, hãy thử các bước sau:

  1. Kiểm tra lại tệp .wslconfig để đảm bảo cấu hình chính xác.
  2. Đảm bảo rằng firewall đã được cấu hình đúng cách.
  3. Kiểm tra kết nối mạng của máy tính và thiết bị khác.

FAQ

1. Làm thế nào để kiểm tra xem WSL2 đã được cấu hình đúng chưa?
Bạn có thể chạy lệnh wsl -l -v trong PowerShell để kiểm tra trạng thái của WSL2.

2. Có cách nào khác để mở WSL2 ra mạng LAN không?
Có, bạn có thể sử dụng các công cụ bên thứ ba hoặc cấu hình mạng phức tạp hơn nhưng điều này có thể yêu cầu kiến thức kỹ thuật cao hơn.

3. Liệu việc tắt firewall có làm giảm độ bảo mật không?
Có, việc tắt firewall sẽ làm giảm độ bảo mật của hệ thống. Hãy cân nhắc kỹ lưỡng trước khi thực hiện.

Kết luận

Mở WSL2 ra mạng LAN vĩnh viễn có thể giúp bạn dễ dàng hơn trong việc phát triển và thử nghiệm ứng dụng. Hãy thực hiện theo các bước hướng dẫn trên và đảm bảo rằng bạn luôn áp dụng các biện pháp bảo mật hợp lý. Nếu bạn có bất kỳ câu hỏi nào, đừng ngần ngại liên hệ qua LinkedIn để thảo luận thêm!

Gợi ý câu hỏi phỏng vấn
Không có dữ liệu

Không có dữ liệu

Bài viết được đề xuất
Bài viết cùng tác giả

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào