Mở hộp thoại VPN của Windows sau một lần thất bại và nó cho bạn một con số và một câu, trong đó câu thường là nửa ít hữu ích hơn. Con số cho biết giai đoạn nào của kết nối đã thất bại, và giai đoạn quyết định nên xem nhật ký nào, cài đặt nào và đội nào tiếp theo. Đi qua các giai đoạn theo thứ tự mất khoảng mười phút và ngăn chặn trình tự quen thuộc gồm cài lại bộ điều hợp, đổi giao thức và đặt lại ngăn xếp để sửa một tài khoản chưa bao giờ được phép quay số.

Đọc con số như một giai đoạn

Một kết nối gốc đi qua bốn cột mốc. Nó đến máy chủ và thiết lập liên kết, thương lượng bảo mật, xác thực người dùng và áp dụng địa chỉ hóa cùng định tuyến. Thất bại ở mỗi bước để lại bằng chứng khác nhau, và một mã thuộc về một giai đoạn không nói gì hữu ích về các giai đoạn khác.

Sai lầm cần tránh là coi mã như một mức độ nghiêm trọng. Lỗi liên kết và lỗi phân quyền đều được đọc là "không thể kết nối", và chúng không có gì khác chung ngoài điều đó. Mức độ nghiêm trọng cho biết việc gì gấp đến đâu; giai đoạn cho biết cần mở cái gì.

Code familyStageWhere the evidence lives
829, 703Link or dial completionClient event log, remote listener reachability
720PPP negotiation and miniport bindingAdapter state, bindings, client log detail
691, 649, 812Identity and authorizationGateway or authentication server decision
Connected, no trafficAddressing, routing and resolutionRoute table and resolver configuration

Giai đoạn một: liên kết và lần thử quay số

829 nghĩa là liên kết bên dưới đã rơi. Nó không nói đầu bên kia đã ngừng trả lời, một hộp trung gian đã giết phiên, hay một chính sách trên máy khách đã đóng nó. Mã hoàn tất quay số như 703 còn sớm hơn: lần thử chưa bao giờ đến mức có liên kết, điều thường chỉ vào hồ sơ, trạng thái dịch vụ hoặc chính sách cục bộ.

Get-VpnConnection -Name 'Corp' | Select-Object Name,ServerAddress,TunnelType,AuthenticationMethod,ConnectionStatus
Test-NetConnection -ComputerName vpn.example.net -Port 443
Get-WinEvent -LogName Application -MaxEvents 200 | Where-Object ProviderName -match 'RasClient' | Select-Object -First 15 TimeCreated,Id,Message

Truy vấn sự kiện là phần mà người ta bỏ qua. Một bản ghi phía máy khách có dấu thời gian và tên giao diện đáng giá hơn hộp thoại, vì nó cho biết lần thử có rời khỏi máy hay không. Không có bản ghi và không có phản hồi từ bên lắng nghe nghĩa là vấn đề khả năng tiếp cận, và không chỉnh sửa nào trên máy khách thay đổi điều đó.

Nếu cùng hồ sơ hoạt động trên mạng khác, hãy dừng ở đây. Mã đang mô tả một điều kiện đường đi chứ không phải lỗi cấu hình, và so sánh hữu ích tiếp theo là hai bản ghi bắt gói chứ không phải một lần cài lại nữa.

Giai đoạn hai: PPP và ràng buộc miniport

720 nằm giữa liên kết và người dùng. Đường hầm đã lên và sau đó lớp PPP không thể thương lượng địa chỉ hoặc giao thức điều khiển, điều thường là vấn đề ràng buộc trên máy khách chứ không phải thông tin đăng nhập bị từ chối. Sự phân biệt đó là toàn bộ giá trị của mã: nó nói rằng thông tin đăng nhập chưa bao giờ được chạm tới, nên tài khoản không phải là nghi phạm.

Get-NetAdapter -IncludeHidden | Where-Object InterfaceDescription -match 'WAN Miniport' | Select-Object Name,Status,ifIndex
Get-NetAdapterBinding | Where-Object ComponentID -match 'ms_pptp|ms_l2tp|ms_sstp|ms_agile' | Select-Object Name,ComponentID,Enabled

Đọc hai đầu ra đó cung cấp nhiều thông tin hơn là đặt lại bất cứ thứ gì. Một miniport có mặt nhưng chưa khởi động, hoặc một ràng buộc giao thức bị phần mềm khác vô hiệu hóa, tạo ra đúng thất bại của giai đoạn này. Cả hai đều sửa được mà không chạm vào phần còn lại của ngăn xếp. Ngược lại, đặt lại hoàn toàn sẽ xóa địa chỉ hóa và trạng thái lọc vốn không liên quan gì đến sự cố.

Giai đoạn ba: danh tính và phân quyền

691 nghĩa là thông tin đăng nhập đã bị từ chối. 649 nghĩa là tài khoản không được phép quay số, và 812 nghĩa là một chính sách truy cập từ xa đã từ chối kết nối. Đây là những quyết định, không phải sự cố truyền tải, và máy khách chỉ có thể báo cáo chúng.

Bằng chứng ở phía bên kia. Hãy hỏi người vận hành cổng về lần thử tại dấu thời gian đó và chính sách đã khớp; hỏi chủ thư mục xem tài khoản có quyền quay số và có nằm trong nhóm mà chính sách yêu cầu không. Đổi loại đường hầm hoặc cài lại máy khách không thể thay đổi một quyết định đã đưa ra về danh tính.

Một thói quen hữu ích ở giai đoạn này là ghi chuỗi tài khoản chính xác vào phiếu, bao gồm mọi tiền tố miền. Một số lượng đáng ngạc nhiên các trường hợp 691 là thông tin đăng nhập đã lưu cho sai miền, và điều đó hiện ra trong chuỗi tài khoản chứ không phải trong cài đặt giao thức.

Giai đoạn bốn: đã kết nối, và không gì hoạt động

Một kết nối có thể hoàn tất và vẫn vô dụng. Nó có địa chỉ, máy khách báo thành công, và mọi yêu cầu của ứng dụng đều hết thời gian. Không có gì trong hộp thoại phản ánh điều đó, và không có mã nào để tra. Tại thời điểm đó hộp thoại đã kết thúc và bằng chứng hữu ích nằm ở nơi khác.

Get-NetRoute -DestinationPrefix 10.24.0.0/16 | Select-Object DestinationPrefix,NextHop,InterfaceAlias
Resolve-DnsName files.corp.example.internal
Test-NetConnection -ComputerName 10.24.6.15 -Port 445

Nếu thiếu tuyến, máy chủ đã không đẩy nó hoặc máy khách đã bỏ nó. Nếu tuyến tồn tại và tên không phân giải được, vấn đề là phân giải tên. Nếu cả hai đều hoạt động và ứng dụng vẫn thất bại, bạn đã vượt qua đường hầm và đang ở trong cấu hình của chính ứng dụng.

Giữ các thay đổi ở một lớp cho mỗi lần thử. Mọi chỉnh sửa trước lần thử tiếp theo trở thành một phần bối cảnh của mã tiếp theo, và một mã mô tả chỉnh sửa cuối của bạn còn tệ hơn là không có mã nào.

Một lần thử, một thay đổi, một bản ghi

Dù ở giai đoạn nào, bản ghi cần có mã, thông điệp, tên hồ sơ, dấu thời gian và mạng mà bạn đang ở. Năm trường, và mỗi trường đã ở ngay trước mắt bạn trong hộp thoại hoặc nhật ký máy khách. Bộ đó đủ nhỏ để dán vào phiếu và đủ cụ thể để người khác tái tạo.

Sau đó đặt dấu thời gian đó bên cạnh bản ghi ở phía bên kia. Bảng gần đầu trang này cho biết mỗi khác biệt thuộc giai đoạn nào. Không có bản ghi thứ hai, mã chỉ thu hẹp việc tìm kiếm; với nó, giai đoạn được xác định. Chính sự so sánh biến một con số thành chẩn đoán chứ không phải phỏng đoán.

Thói quen đó bao phủ gần như mọi sự cố VPN gốc của Windows, và không nhánh nào đòi hỏi cài lại bất cứ thứ gì. Hộp thoại luôn nói cho bạn biết bạn gặp cái nào; công việc là từ chối coi tất cả chúng là cùng một vấn đề.

Bài viết liên quan