Ai thực sự áp dụng cài đặt DNS của OpenConnect trên Windows?
Windows lưu trạng thái bộ phân giải ở ba nơi. Hãy tìm trình trợ giúp sở hữu kết nối trước khi tự sửa DNS của bộ điều hợp hoặc thêm quy tắc không gian tên.
Dựng đường hầm không giống như cài đặt các giá trị DNS của nó. OpenConnect thương lượng, và một trình trợ giúp phía Windows áp dụng. Khoảng cách giữa hai bước đó giải thích phần lớn lỗi tên riêng trên máy khách này, và trình trợ giúp gần như không bao giờ là trang cài đặt VPN của Windows.
Tách những gì cổng đã đề nghị khỏi những gì Windows đã cài
Máy khách chuyển dữ liệu kết nối cho một giao diện tập lệnh, và các biến thể Unix và Windows là những chương trình riêng biệt. Trên Windows, phần thực thi thường là một trình trợ giúp JavaScript đọc các biến như máy chủ DNS nội bộ và miền nội bộ trước khi chạm vào bất kỳ bộ điều hợp nào. Không có gì trong chính đường hầm ghi trạng thái bộ phân giải.
Sự tách biệt đó quan trọng vì một giá trị có thể tồn tại trong quá trình thương lượng mà không bao giờ đến được bộ điều hợp. Một trình trợ giúp bị thiếu, thất bại giữa chừng hoặc là bản sao cũ được đóng gói trong vỏ GUI sẽ để Windows đúng như cũ. Phiên như đã kết nối, tên riêng vẫn được phân giải qua nhà cung cấp cục bộ, và không có gì trong cửa sổ máy khách gợi ý sự khác biệt. Đọc chính đầu ra của trình trợ giúp là cách duy nhất đáng tin cậy để biết giai đoạn nào đã hỏng.
| Stage | What exists there | Where you see it |
|---|---|---|
| Negotiated | Internal DNS address and domain pushed by the gateway | Client log or helper input |
| Installed | Adapter DNS entry, connection suffix, or namespace rule | Adapter and policy queries |
| Selected | Resolver Windows uses for one specific query | The failing application |
Vỏ GUI có thể mang bản sao riêng của máy khách và trình trợ giúp, nên một openconnect.exe thứ hai ở nơi khác trên đĩa không chứng minh được gì. Hãy tìm tệp thực thi đã khởi động phiên trước khi đánh giá cấu hình của nó.
Đọc trạng thái bộ phân giải mà không thay đổi nó
Ba truy vấn chỉ đọc bao quát sự nhầm lẫn thường gặp, và mỗi truy vấn trả lời một câu hỏi khác nhau:
Get-DnsClientServerAddress -AddressFamily IPv4
Get-DnsClient | Select-Object InterfaceAlias, ConnectionSpecificSuffix
Get-DnsClientNrptPolicy -Effective
Máy chủ ở cấp bộ điều hợp là thứ mà hầu hết mọi người hiểu là DNS VPN. Hậu tố dành riêng cho kết nối quyết định liệu một tên ngắn có được mở rộng hay không. Danh sách chính sách không gian tên áp dụng cho các tên khớp bất kể thứ tự bộ điều hợp, và kết quả trống ở đó không phải lỗi khi trình trợ giúp chưa từng định tạo một cái. Đọc cả ba trước khi sửa chính là điều ngăn một bản sửa chỉ di chuyển triệu chứng sang nơi khác.
Bắt đầu với tên đủ điều kiện hoàn toàn. Nếu FQDN phân giải được mà tên ngắn thì không, khoảng trống là hậu tố hoặc danh sách tìm kiếm, không phải địa chỉ máy chủ.
Ở bước thứ hai, hãy hỏi trực tiếp máy chủ dự định bằng bất kỳ công cụ phân giải nào đã cài đặt. Một câu trả lời trực tiếp chứng minh máy chủ có thể truy cập và có thẩm quyền cho vùng. Nó không chứng minh gì về việc một ứng dụng hỏi máy chủ nào theo mặc định.
Gọi tên thành phần sở hữu kết nối
Hai cách sắp xếp là phổ biến. Một máy khách khởi chạy từ terminal truyền đường dẫn tập lệnh của nó một cách rõ ràng, nên chủ sở hữu hiện ra trong lệnh đã chạy. Một ứng dụng đóng gói sẽ khởi chạy máy khách thay bạn và giữ trình trợ giúp trong thư mục riêng của nó, nghĩa là nhà cung cấp quyết định khi nào nó thay đổi.
So sánh phiên bản trình trợ giúp giữa các bản cài trước khi thay đổi bất cứ thứ gì. Chạy một trình trợ giúp lấy từ gương với quyền cao hơn chỉ vì tên tệp trông quen thuộc sẽ biến một khoảng trống DNS thành sự cố bảo mật.
Khi đã biết chủ sở hữu, mục tiêu sửa chữa trở nên rõ ràng: một đường dẫn tập lệnh được hỗ trợ trong trình khởi chạy, một bản cập nhật gói, hoặc một hồ sơ đã sửa trên cổng. Không cái nào yêu cầu sửa thuộc tính bộ điều hợp bằng tay.
Sửa chủ sở hữu, không sửa bộ điều hợp
DNS đặt bằng tay trên bộ điều hợp thường tồn tại sau khi ngắt kết nối, đó là lý do nó có vẻ hoạt động rồi gây rắc rối trên mạng tiếp theo. Một bộ phân giải công cộng gắn vào mọi giao diện sẽ che giấu vấn đề không gian tên riêng thay vì giải quyết nó. Khi trình trợ giúp chưa bao giờ nhận được giá trị DNS, hồ sơ cổng là nơi cần xem. Khi nó đã nhận được một giá trị mà bộ điều hợp vẫn hiển thị máy chủ cũ, trình trợ giúp đã thất bại khi kết nối và nhật ký máy khách thường ghi lại điều đó gần các dòng thiết lập đường hầm.
Xây dựng lại trạng thái qua đường dẫn được hỗ trợ, sau đó xác minh một chu trình đầy đủ: kết nối, phân giải FQDN riêng, mở dịch vụ, ngắt kết nối và xác nhận bộ điều hợp quay lại với các máy chủ trước đó.
Kiểm tra ứng dụng thực sự thất bại
Trình duyệt có cài đặt DNS mã hóa riêng sẽ bỏ qua mọi thứ ở trên và tiếp tục trả lời từ một bộ phân giải công cộng. Một ứng dụng giữ câu trả lời phủ định được lưu trong bộ nhớ đệm từ trước khi đường hầm được dựng cũng hành xử như vậy. Hãy so sánh nó với một truy vấn hệ thống đơn giản trên cùng máy trước khi thay đổi địa chỉ bộ phân giải lần nữa.
Nếu truy vấn hệ thống đúng mà ứng dụng sai, lỗi còn lại nằm trong cấu hình DNS của ứng dụng đó, không phải trong đường dẫn VPN.