3x-ui/web/translation/vi-VN.json
MHSanaei 987a6dd1e5
feat(clients/inbounds): IP log popups, clearer titles, tag-based inbound labels
Add an IP Log popup (view list + refresh + clear) to the client edit form and the Client Information modal, with IPs stacked vertically.

Identify inbounds by their xray tag (not remark/protocol:port) across every picker and chip: attach/detach modals, the attached-inbounds column and field, the filter drawer, and bulk-add. Add the tag field to the InboundOption schema (the backend already returned it).

Clarify modal titles/labels: Client Information (was More Information) and Inbound Information (was Inbound's Data); Client Information / QR Code titles now include the client email.

i18n: rename keys moreInformation->clientInfo and inboundData->inboundInfo with proper translations in all languages; addTitle->addClient, editTitle->editClient, addToGroupPlaceholder->groupName.
2026-05-29 23:22:49 +02:00

1547 lines
88 KiB
JSON
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{
"username": "Tên người dùng",
"password": "Mật khẩu",
"login": "Đăng nhập",
"confirm": "Xác nhận",
"cancel": "Hủy bỏ",
"close": "Đóng",
"save": "Lưu",
"logout": "Đăng xuất",
"create": "Tạo",
"add": "Thêm",
"remove": "Xóa",
"update": "Cập nhật",
"copy": "Sao chép",
"copied": "Đã sao chép",
"more": "thêm",
"download": "Tải xuống",
"remark": "Ghi chú",
"enable": "Kích hoạt",
"protocol": "Giao thức",
"search": "Tìm kiếm",
"filter": "Lọc",
"all": "Tất cả",
"from": "Từ",
"to": "Đến",
"done": "Xong",
"loading": "Đang tải",
"refresh": "Làm mới",
"clear": "Xóa",
"second": "Giây",
"minute": "Phút",
"hour": "Giờ",
"day": "Ngày",
"check": "Kiểm tra",
"indefinite": "Không xác định",
"unlimited": "Không giới hạn",
"none": "Không",
"qrCode": "Mã QR",
"info": "Thông tin thêm",
"edit": "Sửa",
"delete": "Xóa",
"reset": "Đặt lại",
"noData": "Không có dữ liệu.",
"copySuccess": "Đã sao chép thành công",
"sure": "Chắc chắn",
"encryption": "Mã hóa",
"useIPv4ForHost": "Sử dụng IPv4 cho máy chủ",
"transmission": "Truyền tải",
"host": "Host",
"path": "Đường dẫn",
"camouflage": "Ngụy trang",
"status": "Trạng thái",
"enabled": "Đã kích hoạt",
"disabled": "Đã tắt",
"depleted": "Depleted",
"depletingSoon": "Depleting...",
"offline": "Ngoại tuyến",
"online": "Trực tuyến",
"domainName": "Tên miền",
"monitor": "Listening IP",
"certificate": "Chứng chỉ số",
"fail": "Thất bại",
"comment": "Bình luận",
"success": "Thành công",
"lastOnline": "Lần online gần nhất",
"getVersion": "Lấy phiên bản",
"install": "Cài đặt",
"clients": "Các khách hàng",
"usage": "Sử dụng",
"twoFactorCode": "Mã",
"remained": "Còn lại",
"security": "Bảo vệ",
"secAlertTitle": "Cảnh báo an ninh-Tiếng Việt by Ohoang7",
"secAlertSsl": "Kết nối này không an toàn; Vui lòng không nhập thông tin nhạy cảm cho đến khi TLS được kích hoạt để bảo vệ dữ liệu của Bạn",
"secAlertConf": "Một số cài đặt có thể dễ bị tấn công. Đề xuất tăng cường các giao thức bảo mật để ngăn chặn các vi phạm tiềm ẩn.",
"secAlertSSL": "Bảng điều khiển thiếu kết nối an toàn. Vui lòng cài đặt chứng chỉ TLS để bảo vệ dữ liệu.",
"secAlertPanelPort": "Cổng mặc định của bảng điều khiển có thể dễ bị tấn công. Vui lòng cấu hình một cổng ngẫu nhiên hoặc cụ thể.",
"secAlertPanelURI": "Đường dẫn URI mặc định của bảng điều khiển không an toàn. Vui lòng cấu hình một đường dẫn URI phức tạp.",
"secAlertSubURI": "Đường dẫn URI mặc định của đăng ký không an toàn. Vui lòng cấu hình một đường dẫn URI phức tạp.",
"secAlertSubJsonURI": "Đường dẫn URI JSON mặc định của đăng ký không an toàn. Vui lòng cấu hình một đường dẫn URI phức tạp.",
"emptyDnsDesc": "Không có máy chủ DNS nào được thêm.",
"emptyFakeDnsDesc": "Không có máy chủ Fake DNS nào được thêm.",
"emptyBalancersDesc": "Không có bộ cân bằng tải nào được thêm.",
"emptyReverseDesc": "Không có proxy ngược nào được thêm.",
"somethingWentWrong": "Đã xảy ra lỗi",
"subscription": {
"title": "Thông tin đăng ký",
"subId": "ID đăng ký",
"status": "Trạng thái",
"downloaded": "Đã tải xuống",
"uploaded": "Đã tải lên",
"expiry": "Hết hạn",
"totalQuota": "Tổng hạn mức",
"individualLinks": "Liên kết riêng lẻ",
"active": "Hoạt động",
"inactive": "Không hoạt động",
"unlimited": "Không giới hạn",
"noExpiry": "Không hết hạn"
},
"menu": {
"theme": "Chủ đề",
"dark": "Tối",
"ultraDark": "Siêu tối",
"dashboard": "Trạng thái hệ thống",
"inbounds": "Inbound",
"clients": "Khách hàng",
"groups": "Nhóm",
"nodes": "Nút",
"settings": "Cài đặt bảng điều khiển",
"xray": "Cấu hình Xray",
"apiDocs": "Tài liệu API",
"logout": "Đăng xuất",
"link": "Quản lý",
"donate": "Quyên góp"
},
"pages": {
"login": {
"hello": "Xin chào",
"title": "Chào mừng",
"loginAgain": "Thời hạn đăng nhập đã hết. Vui lòng đăng nhập lại.",
"toasts": {
"invalidFormData": "Dạng dữ liệu nhập không hợp lệ.",
"emptyUsername": "Vui lòng nhập tên người dùng.",
"emptyPassword": "Vui lòng nhập mật khẩu.",
"wrongUsernameOrPassword": "Tên người dùng, mật khẩu hoặc mã xác thực hai yếu tố không hợp lệ.",
"successLogin": "Bạn đã đăng nhập vào tài khoản thành công."
}
},
"index": {
"title": "Trạng thái hệ thống",
"cpu": "CPU",
"logicalProcessors": "Bộ xử lý logic",
"frequency": "Tần số",
"swap": "Swap",
"storage": "Lưu trữ",
"memory": "RAM",
"threads": "Luồng",
"xrayStatus": "Xray",
"stopXray": "Dừng",
"restartXray": "Khởi động lại",
"xraySwitch": "Phiên bản",
"xrayUpdates": "Cập nhật Xray",
"xraySwitchClick": "Chọn phiên bản mà bạn muốn chuyển đổi sang.",
"xraySwitchClickDesk": "Hãy lựa chọn thận trọng, vì các phiên bản cũ có thể không tương thích với các cấu hình hiện tại.",
"updatePanel": "Cập nhật Panel",
"panelUpdateDesc": "Điều này sẽ cập nhật 3X-UI lên bản phát hành mới nhất và khởi động lại dịch vụ panel.",
"currentPanelVersion": "Phiên bản panel hiện tại",
"latestPanelVersion": "Phiên bản panel mới nhất",
"panelUpToDate": "Panel đã được cập nhật",
"upToDate": "Đã cập nhật",
"xrayStatusUnknown": "Không xác định",
"xrayStatusRunning": "Đang chạy",
"xrayStatusStop": "Dừng",
"xrayStatusError": "Lỗi",
"xrayErrorPopoverTitle": "Đã xảy ra lỗi khi chạy Xray",
"operationHours": "Thời gian hoạt động",
"systemHistoryTitle": "Lịch sử hệ thống",
"charts": "Biểu đồ",
"xrayMetricsTitle": "Chỉ số Xray",
"xrayMetricsDisabled": "Điểm cuối chỉ số Xray chưa được cấu hình",
"xrayMetricsHint": "Thêm khối metrics cấp cao nhất vào cấu hình xray với tag là metrics_out và listen là 127.0.0.1:11111, sau đó khởi động lại xray.",
"xrayObservatoryEmpty": "Chưa có dữ liệu Observatory",
"xrayObservatoryHint": "Thêm khối observatory vào cấu hình xray liệt kê các tag outbound cần kiểm tra, sau đó khởi động lại xray.",
"xrayObservatoryTagPlaceholder": "Chọn outbound",
"xrayObservatoryAlive": "Hoạt động",
"xrayObservatoryDead": "Ngừng",
"xrayObservatoryLastSeen": "Lần cuối thấy",
"xrayObservatoryLastTry": "Lần thử cuối",
"trendLast2Min": "2 phút gần nhất",
"systemLoad": "Tải hệ thống",
"systemLoadDesc": "trung bình tải hệ thống trong 1, 5 và 15 phút qua",
"connectionCount": "Số lượng kết nối",
"ipAddresses": "Địa chỉ IP",
"toggleIpVisibility": "Chuyển đổi hiển thị IP",
"overallSpeed": "Tốc độ tổng thể",
"upload": "Tải lên",
"download": "Tải xuống",
"totalData": "Tổng dữ liệu",
"sent": "Đã gửi",
"received": "Đã nhận",
"documentation": "Tài liệu",
"xraySwitchVersionDialog": "Bạn có chắc chắn muốn thay đổi phiên bản Xray không?",
"xraySwitchVersionDialogDesc": "Hành động này sẽ thay đổi phiên bản Xray thành #version#.",
"xraySwitchVersionPopover": "Xray đã được cập nhật thành công",
"panelUpdateDialog": "Bạn có chắc muốn cập nhật panel không?",
"panelUpdateDialogDesc": "Điều này sẽ cập nhật 3X-UI lên #version# và khởi động lại dịch vụ panel.",
"panelUpdateCheckPopover": "Kiểm tra cập nhật panel thất bại",
"panelUpdateStartedPopover": "Bắt đầu cập nhật panel",
"geofileUpdateDialog": "Bạn có chắc chắn muốn cập nhật geofile không?",
"geofileUpdateDialogDesc": "Hành động này sẽ cập nhật tệp #filename#.",
"geofilesUpdateDialogDesc": "Thao tác này sẽ cập nhật tất cả các tập tin.",
"geofilesUpdateAll": "Cập nhật tất cả",
"geofileUpdatePopover": "Geofile đã được cập nhật thành công",
"customGeoTitle": "GeoSite / GeoIP tùy chỉnh",
"customGeoAdd": "Thêm",
"customGeoType": "Loại",
"customGeoAlias": "Bí danh",
"customGeoUrl": "URL",
"customGeoEnabled": "Bật",
"customGeoLastUpdated": "Cập nhật lần cuối",
"customGeoExtColumn": "Định tuyến (ext:…)",
"customGeoToastUpdateAll": "Đã cập nhật tất cả nguồn tùy chỉnh",
"customGeoActions": "Thao tác",
"customGeoEdit": "Sửa",
"customGeoDelete": "Xóa",
"customGeoDownload": "Cập nhật ngay",
"customGeoModalAdd": "Thêm geo tùy chỉnh",
"customGeoModalEdit": "Sửa geo tùy chỉnh",
"customGeoModalSave": "Lưu",
"customGeoDeleteConfirm": "Xóa nguồn geo tùy chỉnh này?",
"customGeoRoutingHint": "Trong quy tắc định tuyến dùng cột giá trị dạng ext:file.dat:tag (thay tag).",
"customGeoInvalidId": "ID tài nguyên không hợp lệ",
"customGeoAliasesError": "Không tải được bí danh geo tùy chỉnh",
"customGeoValidationAlias": "Bí danh chỉ gồm chữ thường, số, - và _",
"customGeoValidationUrl": "URL phải bắt đầu bằng http:// hoặc https://",
"customGeoAliasPlaceholder": "a-z 0-9 _ -",
"customGeoAliasLabelSuffix": " (tùy chỉnh)",
"customGeoToastList": "Danh sách geo tùy chỉnh",
"customGeoToastAdd": "Thêm geo tùy chỉnh",
"customGeoToastUpdate": "Cập nhật geo tùy chỉnh",
"customGeoToastDelete": "Đã xóa geofile tùy chỉnh “{{ .fileName }}”",
"customGeoToastDownload": "Đã cập nhật geofile “{{ .fileName }}”",
"customGeoErrInvalidType": "Loại phải là geosite hoặc geoip",
"customGeoErrAliasRequired": "Cần bí danh",
"customGeoErrAliasPattern": "Bí danh có ký tự không hợp lệ",
"customGeoErrAliasReserved": "Bí danh này được dành riêng",
"customGeoErrUrlRequired": "Cần URL",
"customGeoErrInvalidUrl": "URL không hợp lệ",
"customGeoErrUrlScheme": "URL phải dùng http hoặc https",
"customGeoErrUrlHost": "Máy chủ URL không hợp lệ",
"customGeoErrDuplicateAlias": "Bí danh này đã dùng cho loại này",
"customGeoErrNotFound": "Không tìm thấy nguồn geo tùy chỉnh",
"customGeoErrDownload": "Tải xuống thất bại",
"customGeoErrUpdateAllIncomplete": "Một hoặc nhiều nguồn geo tùy chỉnh không cập nhật được",
"customGeoEmpty": "Chưa có nguồn geo tùy chỉnh nào — nhấp Thêm để tạo",
"dontRefresh": "Đang tiến hành cài đặt, vui lòng không làm mới trang này.",
"logs": "Nhật ký",
"config": "Cấu hình",
"backup": "Sao lưu",
"backupTitle": "Sao lưu & Khôi phục",
"exportDatabase": "Sao lưu",
"exportDatabaseDesc": "Nhấp để tải xuống tệp .db chứa bản sao lưu cơ sở dữ liệu hiện tại của bạn vào thiết bị.",
"importDatabase": "Khôi phục",
"importDatabaseDesc": "Nhấp để chọn và tải lên tệp .db từ thiết bị của bạn để khôi phục cơ sở dữ liệu từ bản sao lưu.",
"importDatabaseSuccess": "Đã nhập cơ sở dữ liệu thành công",
"importDatabaseError": "Lỗi xảy ra khi nhập cơ sở dữ liệu",
"readDatabaseError": "Lỗi xảy ra khi đọc cơ sở dữ liệu",
"getDatabaseError": "Lỗi xảy ra khi truy xuất cơ sở dữ liệu",
"getConfigError": "Lỗi xảy ra khi truy xuất tệp cấu hình"
},
"inbounds": {
"title": "Inbound",
"totalDownUp": "Tổng tải lên/tải xuống",
"totalUsage": "Tổng sử dụng",
"inboundCount": "Số lượng điểm vào",
"operate": "Menu",
"enable": "Kích hoạt",
"remark": "Chú thích",
"node": "Node",
"deployTo": "Triển khai tới",
"localPanel": "Panel cục bộ",
"fallbacks": {
"title": "Fallbacks",
"help": "Khi một kết nối trên inbound này không khớp với client nào, nó sẽ được chuyển hướng tới inbound khác. Chọn một child bên dưới và các trường định tuyến (SNI / ALPN / Path / xver) sẽ được tự động điền từ transport của child — hầu hết cấu hình không cần chỉnh thêm. Mỗi child nên lắng nghe trên 127.0.0.1 với security=none.",
"empty": "Chưa có fallback nào",
"add": "Thêm fallback",
"pickInbound": "Chọn một inbound",
"matchAny": "bất kỳ",
"destPlaceholder": "tự động (listen:port của child)",
"rederive": "Điền lại từ child",
"rederived": "Đã điền lại từ child",
"editAdvanced": "Sửa trường định tuyến",
"hideAdvanced": "Ẩn nâng cao",
"quickAddAll": "Thêm nhanh tất cả các inbound đủ điều kiện",
"quickAdded": "Đã thêm {n} fallback",
"quickAddedNone": "Không có inbound mới nào đủ điều kiện",
"routesWhen": "Định tuyến khi",
"defaultCatchAll": "Mặc định — bắt mọi thứ khác"
},
"protocol": "Giao thức",
"port": "Cổng",
"portMap": "Ánh xạ cổng",
"traffic": "Lưu lượng",
"details": "Chi tiết",
"transportConfig": "Truyền dẫn",
"expireDate": "Ngày hết hạn",
"createdAt": "Tạo lúc",
"updatedAt": "Cập nhật",
"resetTraffic": "Đặt lại lưu lượng",
"addInbound": "Thêm điểm vào",
"generalActions": "Hành động chung",
"modifyInbound": "Chỉnh sửa điểm vào (Inbound)",
"deleteInbound": "Xóa điểm vào (Inbound)",
"deleteInboundContent": "Xác nhận xóa điểm vào? (Inbound)",
"deleteConfirmTitle": "Xóa inbound \"{remark}\"?",
"deleteConfirmContent": "Hành động này xóa inbound và toàn bộ khách hàng của nó. Không thể hoàn tác.",
"resetConfirmTitle": "Đặt lại lưu lượng của \"{remark}\"?",
"resetConfirmContent": "Đặt lại bộ đếm lên/xuống về 0 cho inbound này.",
"cloneConfirmTitle": "Sao chép inbound \"{remark}\"?",
"cloneConfirmContent": "Tạo bản sao với cổng mới và danh sách khách hàng trống.",
"delAllClients": "Xóa tất cả khách hàng",
"delAllClientsConfirmTitle": "Xóa toàn bộ {count} khách hàng khỏi \"{remark}\"?",
"delAllClientsConfirmContent": "Xóa mọi khách hàng khỏi inbound này và hủy bản ghi lưu lượng của họ. Bản thân inbound vẫn được giữ lại. Hành động này không thể hoàn tác.",
"attachClients": "Gắn client vào…",
"addClientsToGroup": "Thêm client vào nhóm…",
"attachClientsTitle": "Gắn client từ «{remark}»",
"attachClientsDesc": "Gắn cùng {count} client (cùng UUID/mật khẩu và lưu lượng chung) vào các inbound đã chọn. Họ vẫn ở trên inbound này.",
"attachClientsTargets": "Inbound đích",
"attachClientsNoTargets": "Không có inbound tương thích khác để gắn.",
"attachClientsResult": "Đã gắn {attached}, bỏ qua {skipped}.",
"attachClientsResultMixed": "Đã gắn {attached}, bỏ qua {skipped}, lỗi {errors}.",
"attachClientsSelectLabel": "Client để gắn",
"attachClientsSearchPlaceholder": "Tìm email hoặc ghi chú",
"attachClientsStatusDisabled": "Đã tắt",
"attachClientsSelectedCount": "Đã chọn {selected}/{total}",
"detachClients": "Tách client",
"detachClientsTitle": "Tách client của «{remark}»",
"detachClientsDesc": "Chỉ xóa client đã chọn khỏi inbound này. Hồ sơ client được giữ lại (dùng Delete để xóa hoàn toàn). Nguồn có tổng cộng {count} client.",
"detachClientsResult": "Đã tách {detached}, bỏ qua {skipped}.",
"detachClientsResultMixed": "Đã tách {detached}, bỏ qua {skipped}, lỗi {errors}.",
"detachClientsSelectLabel": "Client để tách",
"exportLinksTitle": "Xuất liên kết inbound",
"exportSubsTitle": "Xuất liên kết đăng ký",
"exportAllLinksTitle": "Xuất tất cả liên kết inbound",
"exportAllSubsTitle": "Xuất tất cả liên kết đăng ký",
"exportAllLinksFileName": "Tat-ca-Inbound",
"exportAllSubsFileName": "Tat-ca-Inbound-Subs",
"inboundJsonTitle": "JSON inbound",
"deleteClient": "Xóa người dùng",
"deleteClientContent": "Bạn có chắc chắn muốn xóa người dùng không?",
"resetTrafficContent": "Xác nhận đặt lại lưu lượng?",
"copyLink": "Sao chép liên kết",
"address": "Địa chỉ",
"network": "Mạng",
"destinationPort": "Cổng đích",
"targetAddress": "Địa chỉ mục tiêu",
"monitorDesc": "Mặc định để trống",
"meansNoLimit": "= Không giới hạn. (đơn vị: GB)",
"totalFlow": "Tổng lưu lượng",
"leaveBlankToNeverExpire": "Để trống để không bao giờ hết hạn",
"noRecommendKeepDefault": "Không yêu cầu đặc biệt để giữ nguyên cài đặt mặc định",
"certificatePath": "Đường dẫn tập",
"certificateContent": "Nội dung tập",
"publicKey": "Khóa công khai",
"privatekey": "Khóa cá nhân",
"clickOnQRcode": "Nhấn vào Mã QR để sao chép",
"client": "Người dùng",
"export": "Xuất liên kết",
"clone": "Sao chép",
"cloneInbound": "Sao chép điểm vào (Inbound)",
"cloneInboundContent": "Tất cả cài đặt của điểm vào này, trừ Cổng, IP nghe và máy khách, sẽ được áp dụng cho bản sao.",
"cloneInboundOk": "Sao chép",
"resetAllTraffic": "Đặt lại lưu lượng cho tất cả điểm vào",
"resetAllTrafficTitle": "Đặt lại lưu lượng cho tất cả điểm vào",
"resetAllTrafficContent": "Bạn có chắc chắn muốn đặt lại lưu lượng cho tất cả điểm vào không?",
"resetInboundClientTraffics": "Đặt lại lưu lượng toàn bộ người dùng của điểm vào",
"resetInboundClientTrafficTitle": "Đặt lại lưu lượng cho toàn bộ người dùng của điểm vào",
"resetInboundClientTrafficContent": "Bạn có chắc chắn muốn đặt lại tất cả lưu lượng cho các người dùng của điểm vào này không?",
"resetAllClientTraffics": "Đặt lại lưu lượng cho toàn bộ người dùng",
"resetAllClientTrafficTitle": "Đặt lại lưu lượng cho toàn bộ người dùng",
"resetAllClientTrafficContent": "Bạn có chắc chắn muốn đặt lại tất cả lưu lượng cho toàn bộ người dùng không?",
"delDepletedClients": "Xóa các người dùng đã cạn kiệt",
"delDepletedClientsTitle": "Xóa các người dùng đã cạn kiệt",
"delDepletedClientsContent": "Bạn có chắc chắn muốn xóa toàn bộ người dùng đã cạn kiệt không?",
"email": "Email",
"emailDesc": "Vui lòng cung cấp một địa chỉ email duy nhất.",
"IPLimit": "Giới hạn IP",
"IPLimitDesc": "Vô hiệu hóa điểm vào nếu số lượng vượt quá giá trị đã nhập (nhập 0 để vô hiệu hóa giới hạn IP).",
"IPLimitlog": "Lịch sử IP",
"IPLimitlogDesc": "Lịch sử đăng nhập IP (trước khi kích hoạt điểm vào sau khi bị vô hiệu hóa bởi giới hạn IP, bạn nên xóa lịch sử).",
"IPLimitlogclear": "Xóa Lịch sử",
"setDefaultCert": "Đặt chứng chỉ từ bảng điều khiển",
"setDefaultCertEmpty": "Không có chứng chỉ nào được cấu hình cho bảng điều khiển. Hãy đặt một chứng chỉ trong Cài đặt trước.",
"streamTab": "Luồng",
"securityTab": "Bảo mật",
"sniffingTab": "Dò gói",
"sniffingMetadataOnly": "Chỉ siêu dữ liệu",
"sniffingRouteOnly": "Chỉ định tuyến",
"sniffingIpsExcluded": "IP bị loại trừ",
"sniffingDomainsExcluded": "Tên miền bị loại trừ",
"decryption": "Giải mã",
"encryption": "Mã hóa",
"vlessAuthX25519": "Xác thực X25519",
"vlessAuthMlkem768": "Xác thực ML-KEM-768",
"vlessAuthCustom": "Tùy chỉnh",
"vlessAuthSelected": "Đã chọn: {auth}",
"advanced": {
"title": "Các phần JSON của inbound",
"subtitle": "JSON inbound đầy đủ và các trình chỉnh sửa riêng cho settings, sniffing và streamSettings.",
"all": "Tất cả",
"allHelp": "Đối tượng inbound đầy đủ với mọi trường trong một trình chỉnh sửa.",
"settings": "Cài đặt",
"settingsHelp": "Bao đóng khối settings của Xray:",
"sniffing": "Sniffing",
"sniffingHelp": "Bao đóng khối sniffing của Xray:",
"stream": "Stream",
"streamHelp": "Bao đóng khối stream của Xray:",
"jsonErrorPrefix": "JSON nâng cao"
},
"telegramDesc": "Vui lòng cung cấp ID Trò chuyện Telegram. (sử dụng lệnh '/id' trong bot) hoặc ({'@'}userinfobot)",
"subscriptionDesc": "Bạn có thể tìm liên kết gói đăng ký của mình trong Chi tiết, cũng như bạn có thể sử dụng cùng tên cho nhiều cấu hình khác nhau",
"same": "Giống nhau",
"inboundInfo": "Thông tin Inbound",
"exportInbound": "Xuất nhập khẩu",
"import": "Nhập",
"importInbound": "Nhập inbound",
"periodicTrafficResetTitle": "Đặt lại lưu lượng",
"periodicTrafficResetDesc": "Tự động đặt lại bộ đếm lưu lượng theo khoảng thời gian xác định",
"lastReset": "Đặt lại lần cuối",
"periodicTrafficReset": {
"never": "Không bao giờ",
"daily": "Hàng ngày",
"weekly": "Hàng tuần",
"monthly": "Hàng tháng",
"hourly": "Hàng giờ"
},
"toasts": {
"obtain": "Nhận",
"updateSuccess": "Cập nhật thành công",
"logCleanSuccess": "Đã xóa nhật ký",
"inboundsUpdateSuccess": "Đã cập nhật thành công các kết nối inbound",
"inboundUpdateSuccess": "Đã cập nhật thành công kết nối inbound",
"inboundCreateSuccess": "Đã tạo thành công kết nối inbound",
"inboundDeleteSuccess": "Đã xóa thành công kết nối inbound",
"inboundClientAddSuccess": "Đã thêm client inbound",
"inboundClientDeleteSuccess": "Đã xóa client inbound",
"inboundClientUpdateSuccess": "Đã cập nhật client inbound",
"delDepletedClientsSuccess": "Đã xóa tất cả client hết hạn",
"resetAllClientTrafficSuccess": "Đã đặt lại toàn bộ lưu lượng client",
"resetAllTrafficSuccess": "Đã đặt lại toàn bộ lưu lượng",
"resetInboundClientTrafficSuccess": "Đã đặt lại lưu lượng",
"resetInboundTrafficSuccess": "Đã đặt lại lưu lượng Inbound",
"trafficGetError": "Lỗi khi lấy thông tin lưu lượng",
"getNewX25519CertError": "Lỗi khi lấy chứng chỉ X25519.",
"getNewmldsa65Error": "Lỗi khi lấy chứng chỉ mldsa65.",
"getNewVlessEncError": "Lỗi khi lấy chứng chỉ VlessEnc."
},
"form": {
"moveUp": "Lên",
"moveDown": "Xuống",
"addAll": "Thêm tất cả",
"addAllFallbackTooltip": "Thêm hàng fallback cho mỗi inbound đủ điều kiện chưa được nối",
"peers": "Peers",
"addPeer": "Thêm peer",
"keepAlive": "Keep-alive",
"autoSystemRoutesTooltip": "Chỉ Windows. CIDR được tự động thêm vào bảng định tuyến hệ thống để lưu lượng khớp đi qua TUN.",
"autoOutboundsInterface": "Giao diện outbound tự động",
"autoOutboundsInterfaceTooltip": "Giao diện vật lý cho lưu lượng đi. Dùng 'auto' để tự phát hiện; tự bật khi Auto system routes được đặt.",
"rewriteAddress": "Viết lại địa chỉ",
"rewritePort": "Viết lại cổng",
"allowedNetwork": "Mạng cho phép",
"followRedirect": "Theo redirect",
"accounts": "Tài khoản",
"allowTransparent": "Cho phép trong suốt",
"encryptionMethod": "Phương thức mã hóa",
"visionTestseed": "Vision testseed",
"version": "Phiên bản",
"udpIdleTimeout": "UDP idle timeout (s)",
"masquerade": "Masquerade",
"type": "Loại",
"upstreamUrl": "Upstream URL",
"rewriteHost": "Viết lại Host",
"skipTlsVerify": "Bỏ qua xác minh TLS",
"directory": "Thư mục",
"statusCode": "Mã trạng thái",
"body": "Body",
"headers": "Header",
"proxyProtocol": "Proxy Protocol",
"requestVersion": "Phiên bản yêu cầu",
"requestMethod": "Phương thức yêu cầu",
"requestPath": "Đường dẫn yêu cầu",
"requestHeaders": "Header yêu cầu",
"responseVersion": "Phiên bản phản hồi",
"responseStatus": "Trạng thái phản hồi",
"responseReason": "Lý do phản hồi",
"responseHeaders": "Header phản hồi",
"heartbeatPeriod": "Chu kỳ heartbeat",
"serviceName": "Tên dịch vụ",
"authority": "Authority",
"multiMode": "Multi Mode",
"maxBufferedUpload": "Upload buffered tối đa",
"maxUploadSize": "Kích thước upload tối đa (Byte)",
"streamUpServer": "Stream-Up Server",
"serverMaxHeaderBytes": "Byte header máy chủ tối đa",
"paddingBytes": "Byte Padding",
"uplinkHttpMethod": "Uplink HTTP method",
"paddingObfsMode": "Chế độ obfs Padding",
"paddingKey": "Padding Key",
"paddingHeader": "Padding Header",
"paddingPlacement": "Vị trí Padding",
"paddingMethod": "Phương thức Padding",
"sessionPlacement": "Session Placement",
"sessionKey": "Session Key",
"sequencePlacement": "Sequence Placement",
"sequenceKey": "Sequence Key",
"uplinkDataPlacement": "Uplink Data Placement",
"uplinkDataKey": "Uplink Data Key",
"noSseHeader": "Không có header SSE",
"ttiMs": "TTI (ms)",
"uplinkMbps": "Uplink (MB/s)",
"downlinkMbps": "Downlink (MB/s)",
"cwndMultiplier": "Hệ số CWND",
"maxSendingWindow": "Cửa sổ gửi tối đa",
"externalProxy": "Proxy ngoài",
"sniPlaceholder": "SNI (mặc định = host)",
"fingerprint": "Fingerprint",
"defaultOption": "Mặc định",
"routeMark": "Route Mark",
"tcpKeepAliveInterval": "TCP Keep Alive Interval",
"tcpKeepAliveIdle": "TCP Keep Alive Idle",
"tcpMaxSeg": "TCP Max Seg",
"tcpUserTimeout": "TCP User Timeout",
"tcpWindowClamp": "TCP Window Clamp",
"tcpFastOpen": "TCP Fast Open",
"multipathTcp": "Multipath TCP",
"penetrate": "Penetrate",
"v6Only": "Chỉ V6",
"tcpCongestion": "TCP Congestion",
"dialerProxy": "Dialer Proxy",
"trustedXForwardedFor": "X-Forwarded-For tin cậy",
"addressPortStrategy": "Chiến lược địa chỉ+cổng",
"tryDelayMs": "Độ trễ thử (ms)",
"prioritizeIPv6": "Ưu tiên IPv6",
"interleave": "Interleave",
"maxConcurrentTry": "Số thử đồng thời tối đa",
"customSockopt": "Sockopt tùy chỉnh",
"addCustomOption": "Thêm tùy chọn",
"serverNameIndication": "SNI",
"cipherSuites": "Cipher Suites",
"autoOption": "Tự động",
"minMaxVersion": "Phiên bản Min/Max",
"rejectUnknownSni": "Từ chối SNI lạ",
"disableSystemRoot": "Tắt System Root",
"sessionResumption": "Khôi phục phiên",
"oneTimeLoading": "Tải một lần",
"usageOption": "Tùy chọn sử dụng",
"buildChain": "Tạo chuỗi",
"echKey": "ECH key",
"echConfig": "Cấu hình ECH",
"pinnedPeerCertSha256": "SHA-256 chứng chỉ peer đã ghim",
"pinnedPeerCertSha256Tip": "Hash SHA-256 mã hóa Base64 của chứng chỉ peer. Chỉ panel — không ghi vào cấu hình xray máy chủ, nhưng được đưa vào liên kết chia sẻ để client có thể ghim chứng chỉ.",
"pinnedPeerCertSha256Placeholder": "hash base64, phân tách bằng dấu phẩy",
"generateRandomPin": "Tạo hash ngẫu nhiên",
"getNewEchCert": "Lấy chứng chỉ ECH mới",
"show": "Hiện",
"xver": "Xver",
"target": "Mục tiêu",
"maxTimeDiff": "Chênh lệch thời gian tối đa (ms)",
"minClientVer": "Phiên bản client tối thiểu",
"maxClientVer": "Phiên bản client tối đa",
"shortIds": "Short IDs",
"spiderX": "SpiderX",
"getNewCert": "Lấy chứng chỉ mới",
"mldsa65Seed": "mldsa65 Seed",
"mldsa65Verify": "mldsa65 Verify",
"getNewSeed": "Lấy Seed mới"
},
"info": {
"mode": "Chế độ",
"grpcServiceName": "grpc serviceName",
"grpcMultiMode": "grpc multiMode",
"interfaceName": "Tên giao diện",
"mtu": "MTU",
"gateway": "Gateway",
"dns": "DNS",
"outboundsInterface": "Giao diện outbound",
"autoSystemRoutes": "Định tuyến hệ thống tự động",
"followRedirect": "FollowRedirect",
"auth": "Auth",
"noKernelTun": "TUN không kernel",
"keepAlive": "Keep alive",
"peerNumber": "Peer {n}",
"peerNumberConfig": "Cấu hình Peer {n}"
},
"stream": {
"general": {
"request": "Lời yêu cầu",
"response": "Phản ứng",
"name": "Tên",
"value": "Giá trị"
},
"tcp": {
"version": "Phiên bản",
"method": "Phương pháp",
"path": "Đường dẫn",
"status": "Trạng thái",
"statusDescription": "Tình trạng Mô tả",
"requestHeader": "Header yêu cầu",
"responseHeader": "Header phản hồi"
}
}
},
"clients": {
"add": "Thêm khách hàng",
"edit": "Chỉnh sửa khách hàng",
"submitAdd": "Thêm khách hàng",
"submitEdit": "Lưu thay đổi",
"clientCount": "Số lượng khách hàng",
"bulk": "Thêm hàng loạt",
"copyFromInbound": "Sao chép khách hàng từ inbound",
"copyToInbound": "Sao chép khách hàng đến",
"copySelected": "Sao chép đã chọn",
"copySource": "Nguồn",
"copyEmailPreview": "Xem trước email kết quả",
"copySelectSourceFirst": "Hãy chọn inbound nguồn trước.",
"copyResult": "Kết quả sao chép",
"copyResultSuccess": "Đã sao chép thành công",
"copyResultNone": "Không có gì để sao chép: chưa chọn khách hàng hoặc nguồn rỗng",
"copyResultErrors": "Lỗi sao chép",
"copyFlowLabel": "Flow cho khách hàng mới (VLESS)",
"copyFlowHint": "Áp dụng cho tất cả khách hàng được sao chép. Để trống để bỏ qua.",
"selectAll": "Chọn tất cả",
"clearAll": "Xóa tất cả",
"method": "Phương thức",
"first": "Đầu",
"last": "Cuối",
"ipLog": "Nhật ký IP",
"prefix": "Tiền tố",
"postfix": "Hậu tố",
"delayedStart": "Bắt đầu sau lần dùng đầu",
"expireDays": "Thời hạn",
"days": "Ngày",
"renew": "Tự động gia hạn",
"renewDesc": "Tự động gia hạn sau khi hết hạn. (0 = tắt) (đơn vị: ngày)",
"searchPlaceholder": "Tìm email, ghi chú, sub ID, UUID, mật khẩu, auth…",
"filterTitle": "Lọc client",
"clearAllFilters": "Xóa tất cả",
"sortOldest": "Cũ nhất trước",
"sortNewest": "Mới nhất trước",
"sortRecentlyUpdated": "Gần đây cập nhật",
"sortRecentlyOnline": "Gần đây trực tuyến",
"sortEmailAZ": "Email A→Z",
"sortEmailZA": "Email Z→A",
"sortMostTraffic": "Nhiều lưu lượng nhất",
"sortHighestRemaining": "Còn nhiều nhất",
"sortExpiringSoonest": "Sắp hết hạn",
"has": "Có",
"hasNot": "Không có",
"title": "Khách hàng",
"actions": "Hành động",
"totalGB": "Tổng gửi/nhận (GB)",
"expiryTime": "Hết hạn",
"addClients": "Thêm khách hàng",
"limitIp": "Giới hạn IP",
"password": "Mật khẩu",
"subId": "ID đăng ký",
"online": "Trực tuyến",
"email": "Email",
"group": "Nhóm",
"groupDesc": "Nhãn logic để gom các client liên quan (nhóm, khách hàng, khu vực). Có thể lọc từ thanh công cụ.",
"groupPlaceholder": "ví dụ customer-a",
"comment": "Ghi chú",
"traffic": "Lưu lượng",
"offline": "Ngoại tuyến",
"addClient": "Thêm khách hàng",
"qrCode": "Mã QR",
"clientInfo": "Thông tin khách hàng",
"delete": "Xóa",
"reset": "Đặt lại lưu lượng",
"editClient": "Chỉnh sửa khách hàng",
"client": "Khách hàng",
"enabled": "Đã bật",
"remaining": "Còn lại",
"duration": "Thời hạn",
"attachedInbounds": "Inbound đã gắn",
"selectInbound": "Chọn một hoặc nhiều inbound",
"noSubId": "Khách hàng này không có subId, không có liên kết chia sẻ.",
"noLinks": "Không có liên kết chia sẻ — hãy gắn khách hàng này vào một inbound có giao thức tương thích trước.",
"link": "Liên kết",
"resetNotPossible": "Hãy gắn khách hàng này vào một inbound trước.",
"general": "Chung",
"resetAllTraffics": "Đặt lại lưu lượng của tất cả khách hàng",
"resetAllTrafficsTitle": "Đặt lại lưu lượng của tất cả khách hàng?",
"resetAllTrafficsContent": "Bộ đếm gửi/nhận của mỗi khách hàng về 0. Hạn mức và thời hạn không bị ảnh hưởng. Không thể hoàn tác.",
"deleteConfirmTitle": "Xóa khách hàng {email}?",
"deleteConfirmContent": "Hành động này gỡ khách hàng khỏi mọi inbound đã gắn và xóa bản ghi lưu lượng. Không thể hoàn tác.",
"deleteSelected": "Xóa ({count})",
"adjustSelected": "Điều chỉnh ({count})",
"subLinksSelected": "Liên kết sub ({count})",
"addToGroupTitle": "Thêm {count} client vào một nhóm",
"addToGroupTooltip": "Chọn nhóm có sẵn hoặc nhập tên mới. Dùng Ungroup để xóa client khỏi nhóm hiện tại.",
"groupName": "Tên nhóm",
"addToGroupSuccessToast": "Đã thêm {count} client vào {group}",
"ungroupSuccessToast": "Đã xóa nhóm khỏi {count} client",
"ungroup": "Bỏ nhóm",
"ungroupConfirmTitle": "Xóa {count} client khỏi nhóm của họ?",
"ungroupConfirmContent": "Xóa nhãn nhóm trên mỗi client đã chọn. Bản thân client được giữ lại (dùng Delete để xóa hoàn toàn).",
"addToGroup": "Thêm vào nhóm",
"attach": "Gắn",
"adjust": "Điều chỉnh",
"subLinks": "Liên kết sub",
"selectedCount": "Đã chọn {count}",
"attachSelected": "Gắn ({count})",
"attachToInboundsTitle": "Gắn {count} client vào inbound",
"attachToInboundsDesc": "Gắn {count} client đã chọn (cùng UUID/mật khẩu và lưu lượng chung) vào các inbound đã chọn. Các gắn kết hiện tại được giữ nguyên.",
"attachToInboundsTargets": "Inbound đích",
"attachToInboundsNoTargets": "Không có inbound đa người dùng nào để gắn.",
"detachSelected": "Tách ({count})",
"detach": "Tách",
"detachFromInboundsTitle": "Tách {count} client khỏi inbound",
"detachFromInboundsDesc": "Xóa {count} client đã chọn khỏi các inbound đã chọn. Các cặp client chưa gắn sẽ được bỏ qua. Hồ sơ client được giữ lại (dùng Delete để xóa hoàn toàn).",
"detachFromInboundsTargets": "Inbound để tách",
"detachFromInboundsNoTargets": "Không có inbound đa người dùng nào.",
"detachFromInboundsResult": "Đã tách {detached}, bỏ qua {skipped}.",
"detachFromInboundsResultMixed": "Đã tách {detached}, bỏ qua {skipped}, lỗi {errors}.",
"subLinksTitle": "Liên kết sub ({count})",
"subLinkColumn": "URL đăng ký",
"subJsonLinkColumn": "URL JSON đăng ký",
"subLinksCopyAll": "Sao chép tất cả",
"subLinksCopiedAll": "Đã sao chép {count} liên kết",
"subLinksEmpty": "Không client nào trong các client đã chọn có ID đăng ký.",
"subLinksDisabled": "Dịch vụ đăng ký đã tắt.",
"subLinksDisabledHint": "Bật đăng ký tại Cài đặt bảng điều khiển → Đăng ký để tạo liên kết.",
"bulkDeleteConfirmTitle": "Xóa {count} khách hàng?",
"bulkDeleteConfirmContent": "Mỗi khách hàng được chọn sẽ bị gỡ khỏi tất cả inbound đã gắn và bản ghi lưu lượng cũng bị xóa. Không thể hoàn tác.",
"bulkAdjustTitle": "Điều chỉnh {count} khách hàng",
"bulkAdjustHint": "Giá trị dương kéo dài, giá trị âm rút ngắn. Khách hàng có hạn hoặc lưu lượng không giới hạn sẽ bị bỏ qua cho trường đó.",
"bulkAdjustNothing": "Đặt số ngày hoặc lưu lượng trước khi áp dụng.",
"addDays": "Thêm ngày",
"addTrafficGB": "Thêm lưu lượng (GB)",
"delDepleted": "Xóa hết hạn mức",
"delDepletedConfirmTitle": "Xóa khách hàng hết hạn mức?",
"delDepletedConfirmContent": "Gỡ tất cả khách hàng đã dùng hết hạn mức lưu lượng hoặc đã quá hạn. Không thể hoàn tác.",
"auth": "Auth",
"hysteriaAuth": "Hysteria Auth",
"uuid": "UUID",
"flow": "Flow",
"vmessSecurity": "Bảo mật VMess",
"reverseTag": "Reverse tag",
"reverseTagPlaceholder": "Reverse tag tùy chọn",
"telegramId": "ID người dùng Telegram",
"telegramIdPlaceholder": "ID người dùng Telegram dạng số (0 = không có)",
"created": "Tạo",
"updated": "Cập nhật",
"ipLimit": "Giới hạn IP",
"toasts": {
"deleted": "Đã xóa khách hàng",
"trafficReset": "Đã đặt lại lưu lượng",
"allTrafficsReset": "Đã đặt lại lưu lượng của tất cả khách hàng",
"bulkDeleted": "Đã xóa {count} khách hàng",
"bulkDeletedMixed": "Đã xóa {ok}, thất bại {failed}",
"bulkCreated": "Đã tạo {count} khách hàng",
"bulkCreatedMixed": "Đã tạo {ok}, thất bại {failed}",
"bulkAdjusted": "Đã điều chỉnh {count} khách hàng",
"bulkAdjustedMixed": "Đã điều chỉnh {ok}, bỏ qua {skipped}",
"delDepleted": "Đã xóa {count} khách hàng hết hạn mức"
}
},
"groups": {
"title": "Nhóm",
"name": "Tên",
"clientCount": "Client trong nhóm",
"totalGroups": "Tổng số nhóm",
"totalGroupedClients": "Client có nhóm",
"emptyGroups": "Nhóm trống",
"addGroup": "Thêm nhóm",
"createSuccess": "Đã tạo nhóm «{name}».",
"rename": "Đổi tên",
"renameTitle": "Đổi tên {name}",
"renameCollision": "Nhóm có tên «{name}» đã tồn tại.",
"renameSuccess": "Đã đổi tên nhóm trên {count} client.",
"deleteConfirmTitle": "Xóa nhóm {name}?",
"deleteConfirmContent": "Việc này xóa nhóm và xóa nhãn khỏi {count} client. Bản thân client không bị xóa.",
"deleteSuccess": "Đã xóa nhóm khỏi {count} client.",
"resetTraffic": "Đặt lại lưu lượng",
"resetConfirmTitle": "Đặt lại lưu lượng nhóm {name}?",
"resetConfirmContent": "Việc này đưa up/down về 0 cho tất cả {count} client trong nhóm.",
"resetSuccess": "Đã đặt lại lưu lượng cho {count} client.",
"adjustSuccess": "Đã điều chỉnh {count} client trong {name}.",
"emptyForAction": "Nhóm này chưa có client.",
"deleteGroupOnly": "Xóa nhóm (giữ client)",
"deleteClients": "Xóa client trong nhóm",
"deleteClientsConfirmTitle": "Xóa tất cả client trong {name}?",
"deleteClientsConfirmContent": "Việc này xóa vĩnh viễn {count} client cùng với hồ sơ lưu lượng. Nhãn nhóm cũng được xóa. Không thể hoàn tác.",
"deleteClientsSuccess": "Đã xóa {count} client.",
"deleteClientsMixed": "{ok} đã xóa, {failed} bỏ qua",
"addToGroup": "Thêm client…",
"addToGroupTitle": "Thêm client vào nhóm «{name}»",
"addToGroupDesc": "Chọn client để thêm vào nhóm này. Giữ nguyên gắn kết inbound hiện tại; chỉ thay đổi nhãn nhóm. Client đã ở trong nhóm này sẽ không được liệt kê.",
"addToGroupEmpty": "Không có client khác để thêm.",
"addToGroupResult": "Đã thêm {count} client vào {name}.",
"removeFromGroup": "Xóa client…",
"removeFromGroupTitle": "Xóa client khỏi nhóm «{name}»",
"removeFromGroupDesc": "Chọn thành viên để xóa khỏi nhóm này. Bản thân client được giữ lại (dùng «Xóa client trong nhóm» để xóa hoàn toàn).",
"removeFromGroupResult": "Đã xóa {count} client khỏi {name}."
},
"nodes": {
"title": "Nút",
"addNode": "Thêm nút",
"editNode": "Sửa node",
"totalNodes": "Tổng số nút",
"onlineNodes": "Trực tuyến",
"offlineNodes": "Ngoại tuyến",
"avgLatency": "Độ trễ trung bình",
"name": "Tên",
"namePlaceholder": "vd: de-frankfurt-1",
"addressPlaceholder": "panel.example.com hoặc 1.2.3.4",
"remark": "Chú thích",
"scheme": "Giao thức",
"address": "Địa chỉ",
"port": "Cổng",
"basePath": "Đường dẫn cơ sở",
"apiToken": "Token API",
"apiTokenPlaceholder": "Token từ trang Cài đặt của panel từ xa",
"apiTokenHint": "Panel từ xa hiển thị token API tại Cài đặt → Token API.",
"regenerate": "Tạo lại token",
"regenerateConfirm": "Tạo lại sẽ vô hiệu hóa token hiện tại. Mọi panel trung tâm dùng nó sẽ mất quyền truy cập cho đến khi được cập nhật. Tiếp tục?",
"allowPrivateAddress": "Cho phép địa chỉ riêng",
"allowPrivateAddressHint": "Chỉ bật cho các nút trên mạng riêng hoặc VPN.",
"enable": "Kích hoạt",
"status": "Trạng thái",
"cpu": "CPU",
"mem": "Bộ nhớ",
"uptime": "Thời gian hoạt động",
"latency": "Độ trễ",
"lastHeartbeat": "Heartbeat gần nhất",
"xrayVersion": "Phiên bản Xray",
"panelVersion": "Phiên bản panel",
"actions": "Hành động",
"probe": "Kiểm tra ngay",
"testConnection": "Kiểm tra kết nối",
"connectionOk": "Kết nối OK ({ms} ms)",
"connectionFailed": "Kết nối thất bại",
"never": "chưa bao giờ",
"justNow": "vừa xong",
"deleteConfirmTitle": "Xóa nút \"{name}\"?",
"deleteConfirmContent": "Việc này dừng giám sát nút. Panel từ xa không bị ảnh hưởng.",
"statusValues": {
"online": "Trực tuyến",
"offline": "Ngoại tuyến",
"unknown": "Không xác định"
},
"toasts": {
"list": "Không tải được danh sách nút",
"obtain": "Không tải được nút",
"add": "Thêm nút",
"update": "Cập nhật nút",
"delete": "Xóa nút",
"deleted": "Đã xóa nút",
"test": "Kiểm tra kết nối",
"fillRequired": "Tên, địa chỉ, cổng và token API là bắt buộc",
"probeFailed": "Kiểm tra thất bại"
}
},
"settings": {
"title": "Cài đặt",
"save": "Lưu",
"infoDesc": "Mọi thay đổi được thực hiện ở đây cần phải được lưu. Vui lòng khởi động lại bảng điều khiển để áp dụng các thay đổi.",
"restartPanel": "Khởi động lại bảng điều khiển",
"restartPanelDesc": "Bạn có chắc chắn muốn khởi động lại bảng điều khiển? Nhấn OK để khởi động lại sau 3 giây. Nếu bạn không thể truy cập bảng điều khiển sau khi khởi động lại, vui lòng xem thông tin nhật ký của bảng điều khiển trên máy chủ.",
"restartPanelSuccess": "Đã khởi động lại bảng điều khiển thành công",
"actions": "Hành động",
"resetDefaultConfig": "Đặt lại cấu hình mặc định",
"panelSettings": "Bảng điều khiển",
"securitySettings": "Bảo mật",
"securityWarnings": "Cảnh báo bảo mật",
"panelExposed": "Bảng điều khiển của bạn có thể bị lộ:",
"warnHttp": "Panel đang chạy trên HTTP thuần — thiết lập TLS cho môi trường thật.",
"warnDefaultPort": "Cổng mặc định 2053 đã quá phổ biến — đổi sang cổng ngẫu nhiên.",
"warnDefaultBasePath": "Đường dẫn cơ sở mặc định \"/\" đã quá phổ biến — đổi sang đường dẫn ngẫu nhiên.",
"warnDefaultSubPath": "Đường dẫn đăng ký mặc định \"/sub/\" đã quá phổ biến — đổi nó.",
"warnDefaultJsonPath": "Đường dẫn đăng ký JSON mặc định \"/json/\" đã quá phổ biến — đổi nó.",
"TGBotSettings": "Bot Telegram",
"panelListeningIP": "IP Nghe của bảng điều khiển",
"panelListeningIPDesc": "Mặc định để trống để nghe tất cả các IP.",
"panelListeningDomain": "Tên miền của nghe bảng điều khiển",
"panelListeningDomainDesc": "Mặc định để trống để nghe tất cả các tên miền và IP",
"panelPort": "Cổng bảng điều khiển",
"panelPortDesc": "Cổng được sử dụng để kết nối với bảng điều khiển này",
"publicKeyPath": "Đường dẫn file chứng chỉ bảng điều khiển",
"publicKeyPathDesc": "Điền vào đường dẫn đầy đủ (bắt đầu từ '/')",
"privateKeyPath": "Đường dẫn file khóa của chứng chỉ bảng điều khiển",
"privateKeyPathDesc": "Điền vào đường dẫn đầy đủ (bắt đầu từ '/')",
"panelUrlPath": "Đường dẫn URI",
"panelUrlPathDesc": "Phải bắt đầu và kết thúc bằng '/'",
"pageSize": "Kích thước phân trang",
"pageSizeDesc": "Xác định kích thước trang cho bảng gửi đến. Đặt 0 để tắt",
"panelProxy": "Proxy mạng của bảng điều khiển",
"panelProxyDesc": "Định tuyến các yêu cầu đi của chính bảng điều khiển (cập nhật geo, kiểm tra phiên bản Xray/panel, Telegram) qua proxy này để vượt qua lọc GitHub/Telegram phía máy chủ. Chấp nhận socks5:// hoặc http(s)://, ví dụ inbound SOCKS cục bộ của Xray. Để trống để kết nối trực tiếp.",
"remarkModel": "Ghi chú mô hình và ký tự phân tách",
"datepicker": "Kiểu lịch",
"datepickerPlaceholder": "Chọn ngày",
"datepickerDescription": "Tác vụ chạy theo lịch trình sẽ chạy theo kiểu lịch này.",
"sampleRemark": "Nhận xét mẫu",
"oldUsername": "Tên người dùng hiện tại",
"currentPassword": "Mật khẩu hiện tại",
"newUsername": "Tên người dùng mới",
"newPassword": "Mật khẩu mới",
"telegramBotEnable": "Bật Bot Telegram",
"telegramBotEnableDesc": "Kết nối với các tính năng của bảng điều khiển này thông qua bot Telegram",
"telegramToken": "Token Telegram",
"telegramTokenDesc": "Bạn phải nhận token từ quản lý bot Telegram {'@'}botfather",
"telegramProxy": "SOCKS Proxy",
"telegramProxyDesc": "Nếu bạn cần socks5 proxy để kết nối với Telegram. Điều chỉnh cài đặt của nó theo hướng dẫn.",
"telegramAPIServer": "Máy chủ API Telegram",
"telegramAPIServerDesc": "Máy chủ API Telegram để sử dụng. Để trống để sử dụng máy chủ mặc định.",
"telegramChatId": "Chat ID Telegram của quản trị viên",
"telegramChatIdDesc": "Nhiều Chat ID phân tách bằng dấu phẩy. Sử dụng {'@'}userinfobot hoặc sử dụng lệnh '/id' trong bot để lấy Chat ID của bạn.",
"telegramNotifyTime": "Thời gian thông báo của bot Telegram",
"telegramNotifyTimeDesc": "Sử dụng định dạng thời gian Crontab.",
"tgNotifyBackup": "Sao lưu Cơ sở dữ liệu",
"tgNotifyBackupDesc": "Bao gồm tệp sao lưu cơ sở dữ liệu với thông báo báo cáo.",
"tgNotifyLogin": "Thông báo Đăng nhập",
"tgNotifyLoginDesc": "Hiển thị tên người dùng, địa chỉ IP và thời gian khi ai đó cố gắng đăng nhập vào bảng điều khiển của bạn.",
"sessionMaxAge": "Thời gian tối đa của phiên",
"sessionMaxAgeDesc": "Thời gian của phiên đăng nhập (đơn vị: phút)",
"expireTimeDiff": "Ngưỡng hết hạn cho thông báo",
"expireTimeDiffDesc": "Nhận thông báo về việc hết hạn tài khoản trước ngưỡng này (đơn vị: ngày)",
"trafficDiff": "Ngưỡng lưu lượng cho thông báo",
"trafficDiffDesc": "Nhận thông báo về việc cạn kiệt lưu lượng trước khi đạt đến ngưỡng này (đơn vị: GB)",
"tgNotifyCpu": "Ngưỡng cảnh báo tỷ lệ CPU",
"tgNotifyCpuDesc": "Nhận thông báo nếu tỷ lệ sử dụng CPU vượt quá ngưỡng này (đơn vị: %)",
"timeZone": "Múi giờ",
"timeZoneDesc": "Các tác vụ được lên lịch chạy theo thời gian trong múi giờ này.",
"subSettings": "Gói đăng ký",
"subEnable": "Bật dịch vụ",
"subEnableDesc": "Tính năng gói đăng ký với cấu hình riêng",
"subJsonEnable": "Bật/Tắt điểm cuối đăng ký JSON độc lập.",
"subJsonEnableTitle": "Đăng ký JSON",
"subClashEnableTitle": "Đăng ký Clash / Mihomo",
"subTitle": "Tiêu đề Đăng ký",
"subTitleDesc": "Tiêu đề hiển thị trong ứng dụng VPN",
"subSupportUrl": "URL Hỗ trợ",
"subSupportUrlDesc": "Liên kết hỗ trợ kỹ thuật hiển thị trong ứng dụng VPN",
"subProfileUrl": "URL Hồ sơ",
"subProfileUrlDesc": "Liên kết đến trang web của bạn hiển thị trong ứng dụng VPN",
"subAnnounce": "Thông báo",
"subAnnounceDesc": "Văn bản thông báo hiển thị trong ứng dụng VPN",
"subEnableRouting": "Bật định tuyến",
"subEnableRoutingDesc": "Cài đặt toàn cục để bật định tuyến trong ứng dụng khách VPN. (Chỉ dành cho Happ)",
"subRoutingRules": "Quy tắc định tuyến",
"subRoutingRulesDesc": "Quy tắc định tuyến toàn cầu cho client VPN. (Chỉ dành cho Happ)",
"subListen": "Listening IP",
"subListenDesc": "Mặc định để trống để nghe tất cả các IP",
"subPort": "Cổng gói đăng ký",
"subPortDesc": "Số cổng dịch vụ đăng ký phải chưa được sử dụng trên máy chủ",
"subCertPath": "Đường dẫn file chứng chỉ gói đăng ký",
"subCertPathDesc": "Điền vào đường dẫn đầy đủ (bắt đầu với '/')",
"subKeyPath": "Đường dẫn file khóa của chứng chỉ gói đăng ký",
"subKeyPathDesc": "Điền vào đường dẫn đầy đủ (bắt đầu với '/')",
"subPath": "Đường dẫn URI",
"subPathDesc": "Phải bắt đầu và kết thúc bằng '/'",
"subDomain": "Tên miền con",
"subDomainDesc": "Mặc định để trống để nghe tất cả các tên miền và IP",
"subUpdates": "Khoảng thời gian cập nhật gói đăng ký",
"subUpdatesDesc": "Số giờ giữa các cập nhật trong ứng dụng khách",
"subEncrypt": "Mã hóa",
"subEncryptDesc": "Mã hóa các cấu hình được trả về trong gói đăng ký",
"subShowInfo": "Hiển thị thông tin sử dụng",
"subShowInfoDesc": "Hiển thị lưu lượng truy cập còn lại và ngày sau tên cấu hình",
"subEmailInRemark": "Thêm Email vào tên",
"subEmailInRemarkDesc": "Thêm email của client vào tên hồ sơ đăng ký.",
"subURI": "URI proxy trung gian",
"subURIDesc": "Thay đổi URI cơ sở của URL gói đăng ký để sử dụng cho proxy trung gian",
"externalTrafficInformEnable": "Thông báo giao thông bên ngoài",
"externalTrafficInformEnableDesc": "Thông báo API ngoài mỗi khi cập nhật lưu lượng.",
"externalTrafficInformURI": "URI thông báo lưu lượng truy cập bên ngoài",
"externalTrafficInformURIDesc": "Cập nhật lưu lượng truy cập được gửi tới URI này.",
"restartXrayOnClientDisable": "Khởi Động Lại Xray Sau Khi Tự Động Vô Hiệu Hóa",
"restartXrayOnClientDisableDesc": "Khi người dùng bị vô hiệu hóa tự động do hết hạn hoặc chạm giới hạn lưu lượng, hãy khởi động lại Xray.",
"fragment": "Sự phân mảnh",
"fragmentDesc": "Kích hoạt phân mảnh cho gói TLS hello",
"fragmentSett": "Cài đặt phân mảnh",
"noisesDesc": "Bật Noises.",
"noisesSett": "Cài đặt Noises",
"trustedProxyCidrs": "CIDR proxy tin cậy",
"trustedProxyCidrsDesc": "IPs/CIDRs cách nhau bằng dấu phẩy được phép đặt header host, proto và IP client chuyển tiếp.",
"ldap": {
"enable": "Bật đồng bộ LDAP",
"host": "LDAP host",
"port": "Cổng LDAP",
"useTls": "Dùng TLS (LDAPS)",
"bindDn": "Bind DN",
"passwordConfigured": "Đã cấu hình; để trống để giữ mật khẩu hiện tại.",
"passwordUnconfigured": "Chưa cấu hình.",
"passwordPlaceholder": "Đã cấu hình — nhập giá trị mới để thay thế",
"baseDn": "Base DN",
"userFilter": "Bộ lọc user",
"userAttr": "Thuộc tính user (username/email)",
"vlessField": "Thuộc tính flag VLESS",
"flagField": "Thuộc tính flag chung (tùy chọn)",
"flagFieldDesc": "Nếu đặt, sẽ ghi đè VLESS flag — ví dụ shadowInactive.",
"truthyValues": "Giá trị truthy",
"truthyValuesDesc": "Cách nhau bằng dấu phẩy; mặc định: true,1,yes,on",
"invertFlag": "Đảo flag",
"invertFlagDesc": "Bật khi thuộc tính có nghĩa «đã tắt» (ví dụ shadowInactive).",
"syncSchedule": "Lịch đồng bộ",
"syncScheduleDesc": "Chuỗi kiểu cron, ví dụ @every 1m",
"inboundTags": "Tag inbound",
"inboundTagsDesc": "Các inbound mà đồng bộ LDAP có thể tự tạo hoặc tự xóa client.",
"noInbounds": "Không tìm thấy inbound. Hãy tạo một inbound trong mục Inbound trước.",
"autoCreate": "Tự động tạo client",
"autoDelete": "Tự động xóa client",
"defaultTotalGb": "Tổng mặc định (GB)",
"defaultExpiryDays": "Hết hạn mặc định (ngày)",
"defaultIpLimit": "Giới hạn IP mặc định"
},
"subFormats": {
"packets": "Gói",
"length": "Độ dài",
"interval": "Khoảng",
"maxSplit": "Chia tối đa",
"noises": "Nhiễu",
"noiseItem": "Nhiễu №{n}",
"type": "Loại",
"packet": "Gói",
"delayMs": "Trễ (ms)",
"applyTo": "Áp dụng cho",
"addNoise": "+ Nhiễu",
"concurrency": "Đồng thời",
"xudpConcurrency": "Đồng thời xudp",
"xudpUdp443": "xudp UDP 443"
},
"mux": "Mux",
"muxDesc": "Truyền nhiều luồng dữ liệu độc lập trong luồng dữ liệu đã thiết lập.",
"muxSett": "Mux Cài đặt",
"direct": "Kết nối trực tiếp",
"directDesc": "Trực tiếp thiết lập kết nối với tên miền hoặc dải IP của một quốc gia cụ thể.",
"notifications": "Thông báo",
"certs": "Chứng chỉ",
"externalTraffic": "Lưu lượng bên ngoài",
"dateAndTime": "Ngày và giờ",
"proxyAndServer": "Proxy và máy chủ",
"intervals": "Khoảng thời gian",
"information": "Thông tin",
"language": "Ngôn ngữ",
"telegramBotLanguage": "Ngôn ngữ của Bot Telegram",
"security": {
"admin": "Thông tin đăng nhập quản trị viên",
"twoFactor": "Xác thực hai yếu tố",
"twoFactorEnable": "Bật 2FA",
"twoFactorEnableDesc": "Thêm một lớp bảo mật bổ sung để tăng cường an toàn.",
"twoFactorModalSetTitle": "Bật xác thực hai yếu tố",
"twoFactorModalDeleteTitle": "Tắt xác thực hai yếu tố",
"twoFactorModalSteps": "Để thiết lập xác thực hai yếu tố, hãy thực hiện các bước sau:",
"twoFactorModalFirstStep": "1. Quét mã QR này trong ứng dụng xác thực hoặc sao chép mã token gần mã QR và dán vào ứng dụng",
"twoFactorModalSecondStep": "2. Nhập mã từ ứng dụng",
"twoFactorModalRemoveStep": "Nhập mã từ ứng dụng để xóa xác thực hai yếu tố.",
"twoFactorModalChangeCredentialsTitle": "Thay đổi thông tin xác thực",
"twoFactorModalChangeCredentialsStep": "Nhập mã từ ứng dụng để thay đổi thông tin xác thực quản trị viên.",
"twoFactorModalSetSuccess": "Xác thực hai yếu tố đã được thiết lập thành công",
"twoFactorModalDeleteSuccess": "Xác thực hai yếu tố đã được xóa thành công",
"twoFactorModalError": "Mã sai",
"show": "Hiển thị",
"hide": "Ẩn",
"apiTokenNew": "Token mới",
"apiTokenName": "Tên",
"apiTokenNamePlaceholder": "ví dụ: central-panel-a",
"apiTokenNameRequired": "Tên là bắt buộc",
"apiTokenEmpty": "Chưa có token nào — tạo một token để xác thực bot hoặc panel từ xa.",
"apiTokenDeleteWarning": "Mọi client đang dùng token này sẽ ngừng xác thực ngay lập tức."
},
"toasts": {
"modifySettings": "Các tham số đã được thay đổi.",
"getSettings": "Lỗi xảy ra khi truy xuất tham số.",
"modifyUserError": "Đã xảy ra lỗi khi thay đổi thông tin đăng nhập quản trị viên.",
"modifyUser": "Bạn đã thay đổi thông tin đăng nhập quản trị viên thành công.",
"originalUserPassIncorrect": "Tên người dùng hoặc mật khẩu gốc không đúng",
"userPassMustBeNotEmpty": "Tên người dùng mới và mật khẩu mới không thể để trống",
"getOutboundTrafficError": "Lỗi khi lấy lưu lượng truy cập đi",
"resetOutboundTrafficError": "Lỗi khi đặt lại lưu lượng truy cập đi"
}
},
"xray": {
"title": "Cài đặt Xray",
"save": "Lưu cài đặt",
"restart": "Khởi động lại Xray",
"restartSuccess": "Đã khởi động lại Xray thành công",
"restartOutputTitle": "Đầu ra khởi động lại Xray",
"restartConfirmTitle": "Khởi động lại xray?",
"restartConfirmContent": "Tải lại dịch vụ xray với cấu hình đã lưu.",
"stopSuccess": "Xray đã được dừng thành công",
"restartError": "Đã xảy ra lỗi khi khởi động lại Xray.",
"stopError": "Đã xảy ra lỗi khi dừng Xray.",
"basicTemplate": "Mẫu Cơ bản",
"advancedTemplate": "Mẫu Nâng cao",
"generalConfigs": "Cấu hình Chung",
"generalConfigsDesc": "Những tùy chọn này sẽ cung cấp điều chỉnh tổng quát.",
"logConfigs": "Nhật ký",
"logConfigsDesc": "Nhật ký có thể ảnh hưởng đến hiệu suất máy chủ của bạn. Bạn chỉ nên kích hoạt nó một cách khôn ngoan trong trường hợp bạn cần",
"blockConfigsDesc": "Những tùy chọn này sẽ ngăn người dùng kết nối đến các giao thức và trang web cụ thể.",
"basicRouting": "Định tuyến Cơ bản",
"blockConnectionsConfigsDesc": "Các tùy chọn này sẽ chặn lưu lượng truy cập dựa trên quốc gia được yêu cầu cụ thể.",
"directConnectionsConfigsDesc": "Kết nối trực tiếp đảm bảo rằng lưu lượng truy cập cụ thể không được định tuyến qua máy chủ khác.",
"blockips": "Chặn IP",
"blockdomains": "Chặn Tên Miền",
"directips": "IP Trực Tiếp",
"directdomains": "Tên Miền Trực Tiếp",
"ipv4Routing": "Định tuyến IPv4",
"ipv4RoutingDesc": "Những tùy chọn này sẽ chỉ định kết nối đến các tên miền mục tiêu qua IPv4.",
"warpRouting": "Định tuyến WARP",
"warpRoutingDesc": "Cảnh báo: Trước khi sử dụng những tùy chọn này, hãy cài đặt WARP ở chế độ proxy socks5 trên máy chủ của bạn bằng cách làm theo các bước trên GitHub của bảng điều khiển. WARP sẽ định tuyến lưu lượng đến các trang web qua máy chủ Cloudflare.",
"nordRouting": "Định tuyến NordVPN",
"nordRoutingDesc": "Các tùy chọn này sẽ định tuyến lưu lượng dựa trên đích cụ thể qua NordVPN.",
"Template": "Mẫu Cấu hình Xray",
"TemplateDesc": "Tạo tệp cấu hình Xray cuối cùng dựa trên mẫu này.",
"FreedomStrategy": "Cấu hình Chiến lược cho Giao thức Freedom",
"FreedomStrategyDesc": "Đặt chiến lược đầu ra của mạng trong Giao thức Freedom.",
"RoutingStrategy": "Cấu hình Chiến lược Định tuyến Tên miền",
"RoutingStrategyDesc": "Đặt chiến lược định tuyến tổng thể cho việc giải quyết DNS.",
"outboundTestUrl": "URL kiểm tra outbound",
"outboundTestUrlDesc": "URL dùng khi kiểm tra kết nối outbound",
"Torrent": "Cấu hình sử dụng BitTorrent",
"Inbounds": "Inbound",
"InboundsDesc": "Thay đổi mẫu cấu hình để chấp nhận các máy khách cụ thể.",
"Outbounds": "Outbound",
"Balancers": "Cân bằng",
"balancerTagRequired": "Tag là bắt buộc",
"balancerSelectorRequired": "Chọn ít nhất một outbound",
"OutboundsDesc": "Thay đổi mẫu cấu hình để xác định các cách ra đi cho máy chủ này.",
"Routings": "Quy tắc định tuyến",
"RoutingsDesc": "Mức độ ưu tiên của mỗi quy tắc đều quan trọng!",
"completeTemplate": "Tất cả",
"logLevel": "Mức đăng nhập",
"logLevelDesc": "Cấp độ nhật ký cho nhật ký lỗi, cho biết thông tin cần được ghi lại.",
"accessLog": "Nhật ký truy cập",
"accessLogDesc": "Đường dẫn tệp cho nhật ký truy cập. Nhật ký truy cập bị vô hiệu hóa có giá trị đặc biệt 'không'",
"errorLog": "Nhật ký lỗi",
"errorLogDesc": "Đường dẫn tệp cho nhật ký lỗi. Nhật ký lỗi bị vô hiệu hóa có giá trị đặc biệt 'không'",
"dnsLog": "Nhật ký DNS",
"dnsLogDesc": "Có bật nhật ký truy vấn DNS không",
"maskAddress": "Ẩn Địa Chỉ",
"maskAddressDesc": "Mt n đa ch IP, khi đưc bt, s t đng thay thế đa ch IP xut hin trong nht ký.",
"statistics": "Thng kê",
"statsInboundUplink": "Thng kê ti lên đu vào",
"statsInboundUplinkDesc": "Kích hot thu thp thng kê cho lưu lưng ti lên ca tt c các proxy đu vào.",
"statsInboundDownlink": "Thng kê ti xung đu vào",
"statsInboundDownlinkDesc": "Kích hot thu thp thng kê cho lưu lưng ti xung ca tt c các proxy đu vào.",
"statsOutboundUplink": "Thng kê ti lên đu ra",
"statsOutboundUplinkDesc": "Kích hot thu thp thng kê cho lưu lưng ti lên ca tt c các proxy đu ra.",
"statsOutboundDownlink": "Thng kê ti xung đu ra",
"statsOutboundDownlinkDesc": "Kích hot thu thp thng kê cho lưu lưng ti xung ca tt c các proxy đu ra.",
"rules": {
"first": "Đu tiên",
"last": "Cui cùng",
"up": "Lên",
"down": "Xung",
"source": "Ngun",
"dest": "Đích",
"inbound": "Vào",
"outbound": "Ra",
"balancer": "Cân bng",
"info": "Thông tin",
"add": "Thêm quy tc",
"edit": "Chnh sa quy tc",
"useComma": "Các mc đưc phân tách bng du phy"
},
"routing": {
"dragToReorder": "Kéo đ sp xếp li"
},
"ruleForm": {
"sourceIps": "IP ngun",
"sourcePort": "Cng ngun",
"vlessRoute": "Đưng VLESS",
"attributes": "Thuc tính",
"value": "Giá tr",
"user": "Ngưi dùng",
"inboundTags": "Tag inbound",
"outboundTag": "Tag outbound",
"balancerTag": "Tag balancer",
"balancerTagTooltip": "Đnh tuyến lưu lưng qua mt trong các b cân bng ti đã cu hình"
},
"outboundForm": {
"tagDuplicate": "Tag đã đưc dùng bi outbound khác",
"tagRequired": "Tag là bt buc",
"tagPlaceholder": "tag-duy-nht",
"localIpPlaceholder": "IP ni b",
"addressRequired": "Đa ch là bt buc",
"portRequired": "Cng là bt buc",
"optional": "tùy chn",
"udpOverTcp": "UDP over TCP",
"uotVersion": "Phiên bn UoT",
"inboundTag": "Tag inbound",
"inboundTagPlaceholder": "tag inbound dùng trong quy tc đnh tuyến",
"responseType": "Loi phn hi",
"rewriteNetwork": "Viết li mng",
"unchanged": "(không đi)",
"unchangedAddress": "(không đi) ví d 1.1.1.1",
"rules": "Quy tc",
"ruleN": "Quy tc {n}",
"action": "Hành đng",
"redirect": "Redirect",
"fragment": "Fragment",
"finalRules": "Quy tc cui",
"overrideXrayPrivateIp": "Ghi đè chn IP riêng mc đnh ca Xray",
"blockDelay": "Tr chn (ms)",
"reverseSniffing": "Sniffing ngưc",
"workers": "Workers",
"reserved": "Đã đt trưc",
"minUploadInterval": "Khong upload ti thiu (ms)",
"maxUploadSizeBytes": "Kích thưc upload ti đa (byte)",
"uplinkChunkSize": "Kích thưc chunk Uplink",
"noGrpcHeader": "Không có header gRPC",
"maxConcurrency": "Đng thi ti đa",
"maxConnections": "Kết ni ti đa",
"maxReuseTimes": "S ln tái s dng ti đa",
"maxRequestTimes": "S yêu cu ti đa",
"maxReusableSecs": "S giây tái s dng ti đa",
"keepAlivePeriod": "Chu k keep alive",
"authPassword": "Mt khu auth",
"visionTestpre": "Vision testpre",
"serverNamePlaceholder": "tên máy ch",
"verifyPeerName": "Xác minh tên peer",
"pinnedSha256": "SHA256 pinned",
"shortId": "Short ID",
"sockopts": "Sockopts",
"keepAliveInterval": "Khong keep alive",
"markFwmark": "Mark (fwmark)",
"interface": "Giao din",
"ipv6Only": "Ch IPv6",
"acceptProxyProtocol": "Chp nhn proxy protocol",
"proxyProtocol": "Proxy protocol",
"tcpUserTimeoutMs": "TCP user timeout (ms)",
"tcpKeepAliveIdleS": "TCP keep-alive idle (s)"
},
"outbound": {
"addOutbound": "Thêm thư đi",
"addReverse": "Thêm đo ngưc",
"editOutbound": "Chnh sa gi đi",
"editReverse": "Chnh sa ngưc li",
"reverseTag": "Th Ngưc",
"reverseTagDesc": "Th outbound ca proxy ngưc đơn gin VLESS. Đ trng đ vô hiu hóa.",
"reverseTagPlaceholder": "th outbound (đ trng đ vô hiu hóa)",
"tag": "Tag",
"tagDesc": "th duy nht",
"address": "Đa ch",
"reverse": "Đo ngưc",
"domain": "Tên min",
"type": "Loi",
"bridge": "Bridge",
"portal": "Portal",
"link": "Liên kết",
"intercon": "Kết ni",
"settings": "cài đt",
"accountInfo": "Thông tin tài khon",
"outboundStatus": "Trng thái đu ra",
"sendThrough": "Gi qua",
"test": "Kim tra",
"testResult": "Kết qu kim tra",
"testing": "Đang kim tra kết ni...",
"testSuccess": "Kim tra thành công",
"testFailed": "Kim tra tht bi",
"testError": "Không th kim tra đu ra",
"testModeTooltip": "TCP: probe dial nhanh. HTTP: yêu cu đy đ qua xray.",
"testAll": "Kim tra tt c",
"nordvpn": "NordVPN",
"accessToken": "Mã truy cp",
"country": "Quc gia",
"server": "Máy ch",
"city": "Thành ph",
"allCities": "Tt c thành ph",
"privateKey": "Khóa riêng",
"load": "Ti"
},
"balancer": {
"addBalancer": "Thêm cân bng",
"editBalancer": "Chnh sa cân bng",
"balancerStrategy": "Chiến lưc",
"balancerSelectors": "B chn",
"tag": "Tag",
"tagDesc": "th duy nht",
"tagDuplicate": "Tag đã đưc dùng bi balancer khác",
"tagPlaceholder": "tag balancer duy nht",
"selector": "Selector",
"fallback": "Fallback",
"expected": "K vng",
"expectedPlaceholder": "s node ti ưu",
"maxRtt": "RTT ti đa",
"tolerance": "Dung sai",
"baselines": "Baselines",
"costs": "Costs",
"balancerDesc": "Không th s dng balancerTag và outboundTag cùng mt lúc. Nếu s dng cùng lúc thì ch outboundTag mi hot đng."
},
"wireguard": {
"secretKey": "Khoá bí mt",
"publicKey": "Khóa công khai",
"allowedIPs": "IP đưc phép",
"endpoint": "Đim cui",
"psk": "Khóa chia s",
"domainStrategy": "Chiến lưc tên min"
},
"tun": {
"nameDesc": "Tên ca giao din TUN. Giá tr mc đnh là 'xray0'",
"mtuDesc": "Đơn v Truyn Ti đa. Kích thưc ti đa ca các gói d liu. Giá tr mc đnh là 1500",
"userLevel": "Mc Ngưi Dùng",
"userLevelDesc": "Tt c các kết ni đưc thc hin thông qua inbound này s s dng mc ngưi dùng này. Giá tr mc đnh là 0"
},
"nord": {
"accessToken": "Access token",
"privateKey": "Khóa riêng",
"noServers": "Không tìm thy máy ch cho quc gia đã chn",
"noPublicKey": "Máy ch đã chn không công b khóa công khai NordLynx.",
"outboundAdded": "Đã thêm outbound NordVPN",
"outboundUpdated": "Đã cp nht outbound NordVPN"
},
"warp": {
"licenseError": "Không thiết lp đưc giy phép WARP.",
"fetchFirst": "Hãy ly cu hình WARP trưc.",
"createAccount": "To tài khon WARP",
"accessToken": "Access token",
"deviceId": "ID thiết b",
"licenseKey": "Khóa giy phép",
"privateKey": "Khóa riêng",
"deleteAccount": "Xóa tài khon",
"settings": "Cài đt",
"licenseKeyLabel": "Khóa giy phép WARP / WARP+",
"key": "Khóa",
"keyPlaceholder": "khóa WARP+ 26 ký t",
"accountInfo": "Thông tin tài khon",
"deviceName": "Tên thiết b",
"deviceModel": "Kiu thiết b",
"deviceEnabled": "Thiết b đã bt",
"accountType": "Loi tài khon",
"role": "Vai trò",
"warpPlusData": "D liu WARP+",
"quota": "Hn ngch",
"usage": "S dng",
"addOutbound": "Thêm outbound"
},
"dns": {
"enable": "Kích hot DNS",
"enableDesc": "Kích hot máy ch DNS tích hp",
"tag": "Th gi đến DNS",
"tagDesc": "Th này s có sn dưi dng th Gi đến trong quy tc đnh tuyến.",
"clientIp": "IP khách hàng",
"clientIpDesc": "Đưc s dng đ thông báo cho máy ch v v trí IP đưc ch đnh trong các truy vn DNS",
"disableCache": "Tt b nh đm",
"disableCacheDesc": "Tt b nh đm DNS",
"disableFallback": "Tt Fallback",
"disableFallbackDesc": "Tt các truy vn DNS Fallback",
"disableFallbackIfMatch": "Tt Fallback Nếu Khp",
"disableFallbackIfMatchDesc": "Tt các truy vn DNS Fallback khi danh sách tên min khp ca máy ch DNS đưc kích hot",
"enableParallelQuery": "Bt Truy vn Song song",
"enableParallelQueryDesc": "Bt truy vn DNS song song đến nhiu máy ch đ phân gii nhanh hơn",
"strategy": "Chiến lưc truy vn",
"strategyDesc": "Chiến lưc tng th đ phân gii tên min",
"add": "Thêm máy ch",
"edit": "Chnh sa máy ch",
"domains": "Tên min",
"expectIPs": "Các IP D Kiến",
"unexpectIPs": "IP không mong mun",
"useSystemHosts": "S dng Hosts h thng",
"useSystemHostsDesc": "S dng file hosts t h thng đã cài đt",
"serveStale": "Phc v kết qu hết hn",
"serveStaleDesc": "Tr v kết qu cache đã hết hn trong khi làm mi chế đ nn",
"serveExpiredTTL": "TTL hết hn",
"serveExpiredTTLDesc": "Thi gian hiu lc (giây) ca các mc cache hết hn; 0 = không bao gi hết hn",
"timeoutMs": "Thi gian ch (ms)",
"skipFallback": "B qua Fallback",
"finalQuery": "Truy vn cui",
"hosts": "Hosts",
"hostsAdd": "Thêm Host",
"hostsEmpty": "Chưa có Host nào",
"hostsDomain": "Tên min (vd. domain:example.com)",
"hostsValues": "IP hoc tên min nhp và nhn Enter",
"usePreset": "Dùng mu",
"dnsPresetTitle": "Mu DNS",
"dnsPresetFamily": "Gia đình",
"clearAll": "Xóa tt c",
"clearAllTitle": "Xóa tt c máy ch DNS?",
"clearAllConfirm": "Thao tác này s xóa toàn b máy ch DNS khi danh sách. Không th hoàn tác."
},
"fakedns": {
"add": "Thêm DNS gi",
"edit": "Chnh sa DNS gi",
"ipPool": "Mng con nhóm IP",
"poolSize": "Kích thưc b bơi"
}
}
},
"tgbot": {
"keyboardClosed": " Bàn phím đã đóng!",
"noResult": " Không có kết qu!",
"noQuery": " Không tìm thy truy vn! Vui lòng s dng li lnh!",
"wentWrong": " Đã xy ra li!",
"noIpRecord": " Không có bn ghi IP!",
"noInbounds": " Không tìm thy inbound!",
"unlimited": " Không gii hn (Đt li)",
"add": "Thêm",
"month": "Tháng",
"months": "Tháng",
"day": "Ngày",
"days": "Ngày",
"hours": "Gi",
"minutes": "Phút",
"unknown": "Không xác đnh",
"inbounds": "Inbound",
"clients": "Client",
"offline": "🔴 Ngoi tuyến",
"online": "🟢 Trc tuyến",
"commands": {
"unknown": " Lnh không rõ",
"pleaseChoose": "👇 Vui lòng chn:\r\n",
"help": "🤖 Chào mng bn đến vi bot này! Bot đưc thiết kế đ cung cp cho bn d liu c th t máy ch và cho phép bn thc hin các thay đi cn thiết.\r\n\r\n",
"start": "👋 Xin chào <i>{{ .Firstname }}</i>.\r\n",
"welcome": "🤖 Chào mng đến vi bot qun lý ca <b>{{ .Hostname }}</b>.\r\n",
"status": " Bot hot đng bình thưng!",
"usage": " Vui lòng cung cp văn bn đ tìm kiếm!",
"getID": "🆔 ID ca bn: <code>{{ .ID }}</code>",
"helpAdminCommands": "Đ khi đng li Xray Core:\r\n<code>/restart</code>\r\n\r\nĐ tìm kiếm email ca khách hàng:\r\n<code>/usage [Email]</code>\r\n\r\nĐ tìm kiếm các nhp (vi s liu thng kê ca khách hàng):\r\n<code>/inbound [Ghi chú]</code>\r\n\r\nID Trò chuyn Telegram:\r\n<code>/id</code>",
"helpClientCommands": "Đ tìm kiếm thng kê, s dng lnh sau:\r\n<code>/usage [Email]</code>\r\n\r\nID Trò chuyn Telegram:\r\n<code>/id</code>",
"restartUsage": "\r\n\r\n<code>/restart</code>",
"restartSuccess": " Hot đng thành công!",
"restartFailed": " Li trong quá trình hot đng.\r\n\r\n<code>Li: {{ .Error }}</code>.",
"xrayNotRunning": " Xray Core không chy.",
"startDesc": "Hin th menu chính",
"helpDesc": "Tr giúp bot",
"statusDesc": "Kim tra trng thái bot",
"idDesc": "Hin th ID Telegram ca bn"
},
"messages": {
"cpuThreshold": "🔴 S dng CPU {{ .Percent }}% vưt quá ngưng {{ .Threshold }}%",
"selectUserFailed": " Li khi chn ngưi dùng!",
"userSaved": " Ngưi dùng Telegram đã đưc lưu.",
"loginSuccess": " Đăng nhp thành công vào bng điu khin.\r\n",
"loginFailed": " Đăng nhp vào bng điu khin tht bi.\r\n",
"2faFailed": "Li 2FA",
"report": "🕰 Báo cáo đnh k: {{ .RunTime }}\r\n",
"datetime": " Ngày-Gi: {{ .DateTime }}\r\n",
"hostname": "💻 Host: {{ .Hostname }}\r\n",
"version": "🚀 Phiên bn X-UI: {{ .Version }}\r\n",
"xrayVersion": "📡 Phiên bn Xray: {{ .XrayVersion }}\r\n",
"ipv6": "🌐 IPv6: {{ .IPv6 }}\r\n",
"ipv4": "🌐 IPv4: {{ .IPv4 }}\r\n",
"ip": "🌐 IP: {{ .IP }}\r\n",
"ips": "🔢 IPs:\r\n{{ .IPs }}\r\n",
"serverUpTime": " Thi gian hot đng ca máy ch: {{ .UpTime }} {{ .Unit }}\r\n",
"serverLoad": "📈 Ti máy ch: {{ .Load1 }}, {{ .Load2 }}, {{ .Load3 }}\r\n",
"serverMemory": "📋 RAM: {{ .Current }}/{{ .Total }}\r\n",
"tcpCount": "🔹 TCP: {{ .Count }}\r\n",
"udpCount": "🔸 UDP: {{ .Count }}\r\n",
"traffic": "🚦 Lưu lưng: {{ .Total }} ({{ .Upload }},{{ .Download }})\r\n",
"xrayStatus": " Trng thái: {{ .State }}\r\n",
"username": "👤 Tên ngưi dùng: {{ .Username }}\r\n",
"reason": " Lý do: {{ .Reason }}\r\n",
"time": " Thi gian: {{ .Time }}\r\n",
"inbound": "📍 Inbound: {{ .Remark }}\r\n",
"port": "🔌 Cng: {{ .Port }}\r\n",
"expire": "📅 Ngày hết hn: {{ .Time }}\r\n",
"expireIn": "📅 Hết hn sau: {{ .Time }}\r\n",
"active": "💡 Đang hot đng: {{ .Enable }}\r\n",
"enabled": "🚨 Đã bt: {{ .Enable }}\r\n",
"online": "🌐 Trng thái kết ni: {{ .Status }}\r\n",
"lastOnline": "🔙 Ln online gn nht: {{ .Time }}\r\n",
"email": "📧 Email: {{ .Email }}\r\n",
"upload": "🔼 Ti lên: {{ .Upload }}\r\n",
"download": "🔽 Ti xung: {{ .Download }}\r\n",
"total": "📊 Tng: {{ .UpDown }} / {{ .Total }}\r\n",
"TGUser": "👤 Ngưi dùng Telegram: {{ .TelegramID }}\r\n",
"exhaustedMsg": "🚨 S cn kit {{ .Type }}:\r\n",
"exhaustedCount": "🚨 S ln cn kit {{ .Type }}:\r\n",
"onlinesCount": "🌐 Khách hàng trc tuyến: {{ .Count }}\r\n",
"disabled": "🛑 Vô hiu hóa: {{ .Disabled }}\r\n",
"depleteSoon": "🔜 Sp cn kit: {{ .Deplete }}\r\n\r\n",
"backupTime": "🗄 Thi gian sao lưu: {{ .Time }}\r\n",
"refreshedOn": "\r\n📋🔄 Đã cp nht ln cui vào: {{ .Time }}\r\n\r\n",
"yes": " Có",
"no": " Không",
"received_id": "🔑📥 ID đã đưc cp nht.",
"received_password": "🔑📥 Mt khu đã đưc cp nht.",
"received_email": "📧📥 Email đã đưc cp nht.",
"received_comment": "💬📥 Bình lun đã đưc cp nht.",
"id_prompt": "🔑 ID mc đnh: {{ .ClientId }}\n\nVui lòng nhp ID ca bn.",
"pass_prompt": "🔑 Mt khu mc đnh: {{ .ClientPassword }}\n\nVui lòng nhp mt khu ca bn.",
"email_prompt": "📧 Email mc đnh: {{ .ClientEmail }}\n\nVui lòng nhp email ca bn.",
"comment_prompt": "💬 Bình lun mc đnh: {{ .ClientComment }}\n\nVui lòng nhp bình lun ca bn.",
"inbound_client_data_id": "🔄 Kết ni vào: {{ .InboundRemark }}\n\n🔑 ID: {{ .ClientId }}\n📧 Email: {{ .ClientEmail }}\n📊 Dung lưng: {{ .ClientTraffic }}\n📅 Ngày hết hn: {{ .ClientExp }}\n🌐 Gii hn IP: {{ .IpLimit }}\n💬 Ghi chú: {{ .ClientComment }}\n\nBây gi bn có th thêm khách hàng vào inbound!",
"inbound_client_data_pass": "🔄 Kết ni vào: {{ .InboundRemark }}\n\n🔑 Mt khu: {{ .ClientPass }}\n📧 Email: {{ .ClientEmail }}\n📊 Dung lưng: {{ .ClientTraffic }}\n📅 Ngày hết hn: {{ .ClientExp }}\n🌐 Gii hn IP: {{ .IpLimit }}\n💬 Ghi chú: {{ .ClientComment }}\n\nBây gi bn có th thêm khách hàng vào inbound!",
"cancel": " Quá trình đã b hy! \n\nBn có th bt đu li bt c lúc nào bng cách nhp /start. 🔄",
"error_add_client": " Li:\n\n {{ .error }}",
"using_default_value": "Đưc ri, tôi s s dng giá tr mc đnh. 😊",
"incorrect_input": "D liu bn nhp không hp l.\nCác chui phi lin mch và không có du cách.\nVí d đúng: aaaaaa\nVí d sai: aaa aaa 🚫",
"AreYouSure": "Bn có chc không? 🤔",
"SuccessResetTraffic": "📧 Email: {{ .ClientEmail }}\n🏁 Kết qu: Thành công",
"FailedResetTraffic": "📧 Email: {{ .ClientEmail }}\n🏁 Kết qu: Tht bi \n\n🛠 Li: [ {{ .ErrorMessage }} ]",
"FinishProcess": "🔚 Quá trình đt li lưu lưng đã hoàn tt cho tt c khách hàng."
},
"buttons": {
"closeKeyboard": " Đóng Bàn Phím",
"cancel": " Hy",
"cancelReset": " Hy Đt Li",
"cancelIpLimit": " Hy Gii Hn IP",
"confirmResetTraffic": " Xác Nhn Đt Li Lưu Lưng?",
"confirmClearIps": " Xác Nhn Xóa Các IP?",
"confirmRemoveTGUser": " Xác Nhn Xóa Ngưi Dùng Telegram?",
"confirmToggle": " Xác nhn Bt/Tt ngưi dùng?",
"dbBackup": "Ti bn sao lưu cơ s d liu",
"serverUsage": "S Dng Máy Ch",
"getInbounds": "Ly cng vào",
"depleteSoon": "Depleted Soon",
"clientUsage": "Ly S Dng",
"onlines": "Khách hàng trc tuyến",
"commands": "Lnh",
"refresh": "🔄 Cp Nht",
"clearIPs": " Xóa IP",
"removeTGUser": " Xóa Ngưi Dùng Telegram",
"selectTGUser": "👤 Chn Ngưi Dùng Telegram",
"selectOneTGUser": "👤 Chn mt ngưi dùng telegram:",
"resetTraffic": "📈 Đt Li Lưu Lưng",
"resetExpire": "📅 Thay đi ngày hết hn",
"ipLog": "🔢 Nht ký đa ch IP",
"ipLimit": "🔢 Gii Hn đa ch IP",
"setTGUser": "👤 Đt Ngưi Dùng Telegram",
"toggle": "🔘 Bt / Tt",
"custom": "🔢 Tùy chnh",
"confirmNumber": " Xác nhn: {{ .Num }}",
"confirmNumberAdd": " Xác nhn thêm: {{ .Num }}",
"limitTraffic": "🚧 Gii hn lưu lưng",
"getBanLogs": "Cm nht ký",
"allClients": "Tt c Khách hàng",
"addClient": "Thêm Khách Hàng",
"submitDisable": "Gi Dưi Dng Vô Hiu ",
"submitEnable": "Gi Dưi Dng Kích Hot ",
"use_default": "🏷 S Dng Mc Đnh",
"change_id": "🔑 ID",
"change_password": "🔑 Mt Khu",
"change_email": "📧 Email",
"change_comment": "💬 Bình Lun",
"change_flow": "🚦 Flow",
"ResetAllTraffics": "Đt li tt c lưu lưng",
"SortedTrafficUsageReport": "Báo cáo s dng lưu lưng đã sp xếp"
},
"answers": {
"successfulOperation": " Thành công!",
"errorOperation": " Li Trong Quá Trình Thc Hin.",
"getInboundsFailed": " Không Th Ly Đưc Inbounds",
"getClientsFailed": " Không th ly khách hàng.",
"canceled": " {{ .Email }} : Thao Tác Đã B Hy.",
"clientRefreshSuccess": " {{ .Email }} : Cp Nht Thành Công Cho Khách Hàng.",
"IpRefreshSuccess": " {{ .Email }} : Cp Nht Thành Công Cho IPs.",
"TGIdRefreshSuccess": " {{ .Email }} : Cp Nht Thành Công Cho Ngưi Dùng Telegram.",
"resetTrafficSuccess": " {{ .Email }} : Đt Li Lưu Lưng Thành Công.",
"setTrafficLimitSuccess": " {{ .Email }} : Đã lưu thành công gii hn lưu lưng.",
"expireResetSuccess": " {{ .Email }} : Đt Li Ngày Hết Hn Thành Công.",
"resetIpSuccess": " {{ .Email }} : Gii Hn IP {{ .Count }} Đã Đưc Lưu Thành Công.",
"clearIpSuccess": " {{ .Email }} : IP Đã Đưc Xóa Thành Công.",
"getIpLog": " {{ .Email }} : Ly nht ký IP Thành Công.",
"getUserInfo": " {{ .Email }} : Ly Thông Tin Ngưi Dùng Telegram Thành Công.",
"removedTGUserSuccess": " {{ .Email }} : Ngưi Dùng Telegram Đã Đưc Xóa Thành Công.",
"enableSuccess": " {{ .Email }} : Đã Bt Thành Công.",
"disableSuccess": " {{ .Email }} : Đã Tt Thành Công.",
"askToAddUserId": "Cu hình ca bn không đưc tìm thy!\r\nVui lòng yêu cu Qun tr viên s dng ID ngưi dùng telegram ca bn trong cu hình ca bn.\r\n\r\nID ngưi dùng ca bn: <code>{{ .TgUserID }}</code>",
"chooseClient": "Chn mt Khách hàng cho Inbound {{ .Inbound }}",
"chooseInbound": "Chn mt Inbound"
}
}
}