Mở cổng 3389 trên router để điều khiển laptop ở nhà là phương án cũ, đồng thời để lộ dịch vụ Remote Desktop ra Internet. Tailscale đi theo hướng khác: mỗi thiết bị cài ứng dụng, đăng nhập cùng một tài khoản, nhận địa chỉ riêng dạng 100.x.y.z rồi liên lạc với nhau qua đường hầm WireGuard đã mã hoá. Nói đơn giản, đây là mạng riêng ảo nối thẳng từng laptop với nhau, không cần thuê máy chủ trung gian hay cấu hình chuyển tiếp cổng trên modem nhà mạng.
Tailscale dựng mạng riêng ảo dạng mesh trên nền WireGuard
Tài liệu chính thức mô tả Tailscale là nền tảng kết nối dựa trên danh tính, dùng giao thức mã nguồn mở WireGuard để tạo các liên kết điểm tới điểm có mã hoá. Các thiết bị đã đăng nhập hợp thành một tailnet, tức mạng riêng ảo dạng mesh: laptop ở văn phòng, máy tính để bàn ở nhà và điện thoại nối trực tiếp với nhau thay vì cùng đổ về một cổng VPN trung tâm. Về nguyên lý, kiến trúc phi tập trung này giảm độ trễ và loại bỏ điểm nghẽn đơn lẻ mà mô hình VPN cũ thường gặp khi truy cập máy từ xa.

Mỗi thiết bị trong tailnet nhận một địa chỉ IPv4 thuộc dải 100.64.0.0/10, khoảng địa chỉ dùng chung theo RFC 6598 vốn dành cho NAT cấp nhà mạng (CGNAT). Dải này không trùng các mạng nội bộ quen thuộc như 192.168.0.0/16 hay 10.0.0.0/8, nên laptop vẫn duy trì kết nối Wi-Fi gia đình bình thường. Địa chỉ ấy giữ nguyên khi thiết bị chuyển từ Wi-Fi sang mạng di động, nhờ vậy việc truy cập máy từ xa không phải dò lại IP sau mỗi lần đổi mạng.
Phần điều phối và phần dữ liệu được tách riêng. Máy chủ điều phối chỉ lưu khoá công khai, địa chỉ và chính sách, về bản chất giống một hộp thư chung để các nút tìm thấy nhau. Khoá bí mật được sinh và giữ trên chính thiết bị, không bao giờ rời khỏi đó, nên chỉ hai đầu đang trao đổi mới giải mã được gói tin. Theo blog kỹ thuật của hãng, nếu tự dựng WireGuard thủ công để nối đủ 10 nút với nhau, quản trị viên phải khai báo tới 90 đầu đường hầm; tailnet tự động hoá toàn bộ khâu phân phối khoá đó.
Ba kiểu kết nối direct, Peer Relay và DERP khác nhau ở đâu
Mọi phiên kết nối của Tailscale đều khởi đầu qua máy chủ chuyển tiếp DERP (Designated Encrypted Relay for Packets), sau đó hệ thống thử nâng cấp lên đường trực tiếp. Hai thiết bị trao đổi thông tin địa chỉ qua DERP, rồi dùng kỹ thuật NAT traversal để mở một đường hầm UDP thẳng giữa hai đầu. Khi NAT traversal thành công, gói tin đi trực tiếp, cho độ trễ thấp và thông lượng cao, đây cũng là trạng thái hệ thống luôn ưu tiên duy trì.
| Kiểu kết nối | Đường đi của gói tin | Khi nào được dùng | Dấu hiệu khi kiểm tra trạng thái |
|---|---|---|---|
| Direct | UDP thẳng giữa hai thiết bị | NAT traversal thành công | Chữ direct kèm IP và cổng |
| Peer Relay | Qua một máy khác trong cùng tailnet | Không đi thẳng được và tailnet có máy làm trạm chuyển tiếp | Chữ peer-relay |
| DERP | Qua máy chủ chuyển tiếp của hãng, cổng HTTPS 443 | Phương án dự phòng sau cùng | Chữ relay kèm mã thành phố |
Khi cả hai đầu nằm sau NAT khó (hard NAT) hoặc tường lửa doanh nghiệp chặn UDP, đường trực tiếp không lập được. Lúc này thiết bị tìm Peer Relay, tức một máy trong cùng tailnet được cấu hình làm trạm chuyển tiếp; máy đó phải chạy phiên bản 1.86 trở lên và không thuộc nhóm iOS, Apple TV hay Android. Không có Peer Relay khả dụng thì kết nối ở lại DERP, phương án dự phòng sau cùng. Hệ thống DERP đặt tại nhiều khu vực, gần Việt Nam có Singapore, Hong Kong và Tokyo.
Cả ba đường trong mạng riêng ảo này đều mã hoá đầu cuối bằng WireGuard, khác biệt nằm ở hiệu năng chứ không ở mức an toàn. DERP chỉ chuyển tiếp gói đã mã hoá và không đọc được nội dung, nhưng chất lượng dịch vụ có giới hạn nên thông lượng suy giảm so với kết nối trực tiếp. Tài liệu Connection types của hãng xếp việc dùng relay khi lẽ ra đi thẳng được vào nhóm nguyên nhân hay gặp của hiện tượng chậm. Lệnh status hiển thị chữ direct, relay hoặc peer-relay, còn lệnh ping riêng của ứng dụng cho biết gói tin đi qua DERP hay đã sang đường thẳng.
Vì sao không cần mở cổng router như port forwarding truyền thống
Port forwarding, cách truy cập máy từ xa quen thuộc, buộc router chuyển gói tin từ một cổng công khai, chẳng hạn cổng 3389 mặc định của Remote Desktop, vào laptop bên trong. Dịch vụ khi đó lắng nghe trực tiếp trên Internet, đối tượng nào dò ra địa chỉ đều có thể thử đăng nhập. Bản thân giao thức RDP cũng từng có điểm yếu chưa được vá, như phân tích trong bài Lỗ hổng bảo mật nghiêm trọng trong Remote Desktop: Microsoft từ chối khắc phục, nên càng ít phơi ra Internet càng an toàn.

Tailscale giải quyết bài toán theo chiều ngược lại bằng kỹ thuật NAT traversal. Hai thiết bị cùng chủ động gửi gói UDP ra ngoài, tường lửa coi đó là luồng đi ra nên cho phép gói trả lời đi vào. Giao thức STUN qua cổng 3478 giúp mỗi đầu xác nhận địa chỉ công khai của chính nó và nhận diện NAT dễ hay NAT khó. Đường hầm WireGuard trực tiếp mặc định dùng cổng nguồn UDP 41641, còn kết nối tới máy chủ điều phối và DERP đi qua HTTPS cổng 443.
So với mạng riêng ảo truyền thống kiểu trung tâm và nan hoa (hub-and-spoke), lưu lượng không còn phải vòng qua một bộ tập trung đặt ở văn phòng. Tài liệu hãng xác nhận đa số trường hợp không cần mở cổng tường lửa nào; chỉ khi cả hai đầu cùng nằm trong mạng khó, việc cho phép UDP 41641 mới giúp chuyển từ relay sang kết nối ngang hàng. Nhờ đó, truy cập máy từ xa vẫn được duy trì từ Wi-Fi khách sạn hay quán cà phê trong khi router ở nhà đóng mọi cổng vào.
Cài đặt trên laptop Windows và gọi máy bằng tên MagicDNS
Quy trình truy cập máy từ xa bắt đầu bằng việc cài ứng dụng trên cả hai đầu. Phiên bản Tailscale hiện hành cho Windows yêu cầu Windows 10 trở lên hoặc Windows Server 2016 trở lên, với một bộ cài .exe dùng chung cho cả 32 bit và 64 bit. Sau khi cài, biểu tượng xuất hiện ở khay hệ thống, chọn Log in để kích hoạt đăng nhập qua trình duyệt bằng tài khoản của nhà cung cấp danh tính (SSO). Laptop thứ hai hay điện thoại đăng nhập cùng tài khoản là tự vào chung mạng riêng ảo, kèm bộ chính sách mặc định cho phép các thiết bị liên lạc với nhau.

MagicDNS tự đăng ký tên miền cho từng thiết bị theo tên máy, được kích hoạt sẵn với các tailnet tạo từ ngày 20/10/2022. Thay vì nhớ địa chỉ 100.x.y.z, chỉ cần gõ tên laptop vào Remote Desktop, trình duyệt hay lệnh ssh; tên đầy đủ gồm tên máy cộng tên miền tailnet đuôi .ts.net. Theo hướng dẫn bật Remote Desktop của Microsoft, Remote Desktop chỉ hỗ trợ nhận kết nối đến trên Windows bản Pro, Enterprise hoặc Education, còn laptop chạy bản Home chỉ đóng vai máy khách.
Khoá thiết bị mặc định hết hạn sau 180 ngày, khi đó laptop phải đăng nhập lại, nếu không mọi kết nối tới và đi đều ngừng. Với laptop đặt cố định ở nhà làm đích truy cập máy từ xa, quản trị viên có thể tắt hết hạn khoá trong trang quản trị để tránh mất kết nối khi đang đi xa. Điều kiện bắt buộc là máy đích đang bật và có mạng, laptop ngủ sâu hoặc tắt nguồn sẽ không phản hồi; các điều kiện để đánh thức laptop qua mạng được phân tích trong bài Wake on LAN trên laptop - Bật máy từ xa qua mạng cần những điều kiện gì.
Phân quyền bằng ACL, grants và Tailscale SSH cho từng thiết bị
Khi mới tạo, tailnet của Tailscale áp dụng chính sách cho phép tất cả, nghĩa là mọi thiết bị thấy nhau. Khi số thiết bị vượt ngưỡng vài chiếc, quản trị viên viết tệp chính sách bằng cú pháp huJSON để quy định nguồn nào được vào đích nào, trên cổng nào. ACL là thế hệ đầu, vẫn được duy trì vô thời hạn nhưng không nhận tính năng mới; grants là cú pháp hãng khuyến nghị cho cấu hình mới, gộp quyền tầng mạng (trường ip) và quyền tầng ứng dụng (trường app).

Cả hai cơ chế tuân theo nguyên tắc từ chối mặc định và có tính một chiều: cho laptop A vào laptop B trong mạng riêng ảo không đồng nghĩa B vào được A. Quy tắc được thực thi ngay trên từng thiết bị, không cần máy chủ điều phối can thiệp mỗi lần kết nối. Ví dụ, khi truy cập máy từ xa, chỉ cấp cho điện thoại quyền mở cổng 3389 tới laptop ở nhà, còn NAS dùng chung thì dành cho nhóm khác. Thiết bị hết công dụng nên gỡ khỏi tailnet thay vì giữ quyền vô thời hạn.
Tailscale SSH chiếm cổng 22 trên địa chỉ tailnet của máy đích và dùng chính danh tính đăng nhập để xác thực, nên không phải phân phát tệp authorized_keys. Tệp sshd_config và khoá SSH cũ được giữ nguyên, kết nối SSH ngoài tailnet vẫn chạy như trước. Chế độ check mode bắt đăng nhập lại trước các phiên rủi ro như tài khoản root, mặc định có hiệu lực 12 giờ. Tính năng này đáp ứng tốt laptop chạy Linux hoặc máy chủ nhỏ, còn phiên điều khiển màn hình Windows vẫn do Remote Desktop đảm nhiệm.
Exit node, subnet router và giới hạn gói Personal miễn phí
Theo mặc định, Tailscale chỉ định tuyến lưu lượng giữa các thiết bị trong tailnet, còn truy cập web thông thường vẫn đi thẳng ra Internet. Exit node thay đổi điều đó: một thiết bị được quản trị viên cho phép làm điểm thoát, máy khác chọn đi qua nó bằng tuyến mặc định 0.0.0.0/0 giống VPN truyền thống, có công dụng rõ khi ngồi Wi-Fi công cộng không tin cậy. Đưa toàn bộ lưu lượng qua mạng riêng ảo cũng có mặt trái, vì nhiều website hạn chế truy cập từ VPN, nguyên nhân được giải thích trong bài Tại sao các trang web chặn VPN?
| Gói | Giá (USD/người/tháng) | Số thành viên | Nhóm ACL | Phút tài nguyên tạm thời mỗi tháng |
|---|---|---|---|---|
| Personal | 0 | Tối đa 6 | 3 | 1.000 |
| Standard | 8 | Không giới hạn | 10 | 1.000 |
| Premium | 18 | Không giới hạn | 300 | 10.000 |
| Enterprise | Báo giá riêng | Tuỳ chỉnh | Tuỳ chỉnh | Tuỳ chỉnh |
Subnet router hỗ trợ thiết bị không cài được ứng dụng như máy in, camera hay NAS đời cũ. Một máy trong mạng LAN đóng vai cổng, quảng bá dải địa chỉ nội bộ vào tailnet; thiết bị phía sau không tính vào giới hạn thiết bị của gói cước. Mặc định cổng này dùng SNAT, nên lưu lượng hiện ra như đến từ chính máy làm cổng. Tài liệu hãng vẫn khuyến nghị cài ứng dụng trực tiếp khi có thể để giữ mã hoá đầu cuối và hiệu năng.
Gói Personal 0 USD dành cho cá nhân, cho phép tối đa 6 thành viên với số thiết bị cá nhân không giới hạn, 3 nhóm ACL và 50 tài nguyên gắn thẻ. Standard giá 8 USD và Premium giá 18 USD mỗi người mỗi tháng, mở rộng nhóm ACL, quản lý thiết bị qua MDM và nhật ký luồng mạng. MagicDNS, exit node, subnet router và Tailscale SSH có ở mọi gói, nên nhu cầu truy cập máy từ xa của một gia đình hay nhóm nhỏ thường được đáp ứng trọn trong bản miễn phí.
Câu hỏi thường gặp (FAQ)
Tailscale có thay thế được Remote Desktop hay AnyDesk không?
Không. Ứng dụng chỉ tạo lớp mạng riêng ảo giữa các thiết bị, còn phiên điều khiển màn hình vẫn cần RDP, VNC hoặc phần mềm tương tự. Ưu thế nằm ở chỗ các dịch vụ đó không phải mở cổng ra Internet.
Laptop chạy Windows Home có truy cập máy từ xa qua mạng riêng ảo này được không?
Laptop Windows Home vẫn cài ứng dụng và vào tailnet bình thường, đồng thời đáp ứng vai trò máy khách Remote Desktop. Muốn nhận phiên RDP đến thì máy đích phải chạy bản Pro, Enterprise hoặc Education.
Dữ liệu có đi qua máy chủ của Tailscale không?
Kết nối direct đi thẳng giữa hai thiết bị. Khi phải chuyển tiếp qua DERP, máy chủ chỉ chuyển gói đã mã hoá WireGuard và về thực chất không giải mã được, vì khoá bí mật không rời khỏi thiết bị.
Kết nối chậm thì nên kiểm tra điều gì trước?
Xác minh trạng thái kết nối xem đang direct hay relay. Nếu đang qua DERP, cho phép UDP 41641 trên tường lửa hoặc dựng một Peer Relay trong tailnet giúp tận dụng đường ngang hàng và cải thiện thông lượng.





0 phản hồi cho “Tailscale trên laptop - Truy cập máy từ xa mà không cần mở cổng router”