Xử lý sự cố TCP/IP: Phương pháp cấu trúc - Phần 4: Sử dụng Netdiag.exe

Phần 1: Giới thiệu
Phần 2: Xử lý sự cố bảng định tuyến
Phần 3: Sửa các kết nối mạng

Trong bài viết trước chúng ta đã kiểm tra làm thế nào để sửa các kết nối mạng bằng tính năng Repair của kết nối mạng Windows. Tính năng repair này làm việc bằng cách thực hiện một loạt các kiểm tra để thử và khôi phục kết nối mạng bị gây ra bởi lỗi cấu hình mạng trên máy khách (các vấn đề xảy ra với thiết lập DHCP hoặc resolver cache) hoặc máy chủ (tên đăng ký với máy chủ WINS hoặc DNS). Mặc dù vậy, tính năng Repair có một số hạn chế:

• Các kết quả của quá trình Repair không thể lưu nhằm cho mục đích xem lại hoặc báo cáo.

• Trên nhiều máy tính, quá trình Repair phải được thực hiện tách biệt với mỗi một kết nối mạng.

• Số lượng các kiểm tra được thực hiện bởi quá trình Repair bị hạn chế.

Những giới hạn đó có thể được khắc phục bằng sử dụng Netdiag.exe, một công cụ xử lý sự cố kết nối mạng trong thành phần các công cụ hỗ trợ cho Windows. Netdiag thực hiện một loạt các kiểm tra mở rộng hơn và nhiều kiểm tra hơn quá trình Repair thực hiện. Bạn cũng có thể gửi các kết quả đầu ra Netdiag.exe đến file văn bản để có thể ghi lại các kiểm tra đã thực hiện và kết quả của nó.

Cài đặt Netdiag

Bạn có thể cài đặt Netdiag thông qua công cụ hỗ trợ của Windows (Windows Support Tools), các công cụ này được cài đặt bằng cách kích đúp vào \Support\Tools\SUPTOOLS.MSI. Mặc định Support Tools cài đặt vào %SystermDrive%\Program Files\Support Tools nhưng nó cũng dễ dàng được cài đặt vào %SystemDrive%\Tools vì các công cụ cần chạy từ dòng lệnh và điều này làm cho đơn giản hơn bằng cách nhập vào đường dẫn công cụ này để chạy chúng. Nếu bạn chỉ muốn cài đặt Netdiag mà không muốn các công cụ hỗ trợ khác thì có thể kích đúp vào file \Support\Tools\Support.cab sau đó kích đúp vào Netdiag.exe để cài đặt công cụ.

Tìm hiểu về Netdiag

Netdiag thực hiện một loạt các kiểm tra trên adapter hệ thống nội bộ. Khi các kiểm tra này được thực hiện, Netdiag thực hiện một loạt kiểm tra kết nối toàn cục để nhận dạng và giải quyết các vấn đề kết nối có thể bị gây ra bởi vấn đề bên ngoài hệ thống nội bộ.

Đầu tiên Netdiag thực hiện kiểm tra dưới đây trên các adapter mạng của hệ thống cục bộ.

• Ndis
• Ipconfig
• Autonet
• DefGw
• NbtNm
• WINS

Khi các kiểm tra này được thực hiện xong Netdiag sẽ thực hiện kiểm tra kết nối toàn cục dưới đây:

• Member
• NetBTTransports
• Autonet
• IpLoopBk
• DefGw
• NbtNm
• Winsock
• DNS
• Browser
• DsGetDc
• DcKust
• Trust
• Kerberos
• Ldap
• Bindings
• WAN
• Modem
• IPSec

Chi tiết các vấn đề liên quan đến các kiểm tra trên được cung cấp trong bảng dưới đây:

Tên kiểm traMô tả
AutonetKiểm tra nếu APIPA đang được sử dụng bởi các adpapter mạng.
BindingsLiệt kê các nối kết mạng gồm tên giao diện, tên module chữ thường và chữ hoa chỉ thị nối kết nào hiện đã được kích hoạt và báo cáo về nối kết.
BrowserLiệt kê tất cả các giao thức mạng giới hạn trong dịch vụ Browser và Redirector.
DcListThu danh sách các bộ điều khiển tên miền.
DefGw

Thẩm định kết nối với mỗi cổng mặc định đã cấu hình

DNSThẩm định sự phù hợp của máy chủ DNS đã cấu hình và thẩm định các đăng kí DNS của máy khách.
DsGetDcThu được tên của bộ điều khiển miền từ dịch vụ thư mục sau đó thu được tên của PDC Emulator. Thẩm định xem tên miền GUID được lưu trong Local Security Authority (LSA) giống như tên miền GUID được lưu trong DC.
IpConfigLiệt kê các thiết lập TCP/IP đối với mỗi adapter mạng.
IpLoopBkPing địa chỉ quay vòng 127.0.0.1 cho mỗi adapter.
IPSecKiểm tra xem Ipsec có được kích hoạt hay không và sau đó liệt kê tất cả các chính sách Ipsec tích cực cho máy tính.
IPXLiệt kê thống kê cho IPX (nếu được cài đặt)
KerberosThẩm định xem gói xác nhận Kerberos có được cập nhật hay không.
LdapLiên lạc với tất cả các bộ điều khiển miền và xác định giao thức thẩm định LSAP nào hiện đang được sử dụng.
MemberKiểm tra để xác nhận các chi tiết của miền chính, gồm computer role, domain name và domain GUID. Kiểm tra xem dịch vụ NetLogon được bắt đầu hay chưa, bổ sung thêm tên miền chính vào danh sách tên miền và truy vấn bộ nhận dạng bảo mật tên miền chính (SID).
ModemCung cấp thông tin cấu hình cho mỗi modem trên hệ thống.
NbtNmThực hiện các hành động giống như lệnh nbtstat –n như thẩm định tên dịch vụ máy trạm Workstation Service <00> giống như tên máy tính và thẩm định rằng tên Messenger =Service <03> và tên Server Service <20> được thể hiện trên tất cả các giao diện và không có tên nào trong số đó bị xung đột.
NdisLiệt kê các chi tiết liên quan đến cấu hình của mỗi adapter mạng gồm có tên, cấu hình, phương tiện, GUID và các thống kê.
NetBTTransportsLiệt kê tất cả các giao thức truyền tải giới hạn với NetBIOS trên TCP/IP (NetBT).
NetstatLiệt kê các kết nối TCP/IP hiện hành và các thống kê giao thức.
NetwareTruy vấn máy chủ Netware gần nhất (nếu được sử dụng) cho thông tin đăng nhập hiện hành.
RouteLiệt kê tất cả các route tĩnh trong bảng định tuyến và chỉ thị xem chúng có liên tục hay không.
TrustKiểm tra các mối quan hệ tin cậy của miền và thẩm định tên miền chính SID là đúng.
WANTóm tắt các thiết lập và trạng thái cho mỗi cổng COM hiện đang sử dụng.
WINSThẩm định khả năng phù hợp của máy chủ WINS đã được cấu hình và thẩm định các đăng kí khách WINS.
WinsockHiển thị các giao thức và cổng phù hợp với dịch vụ WinSock

Ngoài việc thực hiện các kiểm tra trên, Netdiag.exe cũng báo cáo thông tin liên quan đến hệ thống như liệt kê dưới đây:

• Tên NetBIOS của hệ thống
• Tên DNS của hệ thống
• Thông tin chung hệ thống
• Các hotfix đã cài đặt

Chạy Netdiag

Cách đơn giản nhất để chạy Netdiag là không cần đến bất kỳ tham số nào, cách này sẽ kiểm tra adapter mạng cục bộ trên hệ thống và sau đó thực hiện một loạt các kiểm tra kết nối toàn cục. Đầu ra trong quá trình chạy lệnh này trên máy chủ thành viên Windows Server 2003 được cho dưới đây (sanh sách hotfix đã được cắt ngắn):

C:\tools\netdiag
...................................

Computer Name: SRV
DNS Host Name: SRV.contoso.com
System info : Microsoft Windows Server 2003 R2 (Build 3790)
Processor : x86 Family 15 Model 4 Stepping 1, GenuineIntel
List of installed hotfixes :
KB890046
KB893756
KB896358

KB925486
Q147222

Netcard queries test . . . . . . . : Passed

Per interface results:

Adapter : Local Area Connection

Netcard queries test . . . : Passed

Host Name. . . . . . . . . : SRV
IP Address . . . . . . . . : 172.16.11.31
Subnet Mask. . . . . . . . : 255.255.255.0
Default Gateway. . . . . . : 172.16.11.1
Dns Servers. . . . . . . . : 172.16.11.32

AutoConfiguration results. . . . . . : Passed

Default gateway test . . . : Passed

NetBT name test. . . . . . : Passed
[WARNING] At least one of the <00> 'WorkStation Service', <03> 'Messenger Service', <20> 'WINS' names is missing.

WINS service test. . . . . : Skipped
There are no WINS servers configured for this interface.

Global results:

Domain membership test . . . . . . : Passed

NetBT transports test. . . . . . . : Passed
List of NetBt transports currently configured:
NetBT_Tcpip_{64B5D4FF-0014-4CC2-BB8D-9FB0C67CB75E}
1 NetBt transport currently configured.

Autonet address test . . . . . . . : Passed

IP loopback ping test. . . . . . . : Passed

Default gateway test . . . . . . . : Passed

NetBT name test. . . . . . . . . . : Passed
[WARNING] You don't have a single interface with the <00> 'WorkStation Service', <03> 'Messenger Service', <20> 'WINS' names defined.

Winsock test . . . . . . . . . . . : Passed

DNS test . . . . . . . . . . . . . : Passed

Redir and Browser test . . . . . . : Passed
List of NetBt transports currently bound to the Redir
NetBT_Tcpip_{64B5D4FF-0014-4CC2-BB8D-9FB0C67CB75E}
The redir is bound to 1 NetBt transport.

List of NetBt transports currently bound to the browser
NetBT_Tcpip_{64B5D4FF-0014-4CC2-BB8D-9FB0C67CB75E}
The browser is bound to 1 NetBt transport.

DC discovery test. . . . . . . . . : Passed

DC list test . . . . . . . . . . . : Passed

Trust relationship test. . . . . . : Passed
Secure channel for domain 'CONTOSO' is to '\\DC-1A.contoso.com'.

Kerberos test. . . . . . . . . . . : Passed

LDAP test. . . . . . . . . . . . . : Passed

Bindings test. . . . . . . . . . . : Passed

WAN configuration test . . . . . . : Skipped
No active remote access connections.

Modem diagnostics test . . . . . . : Passed

IP Security test . . . . . . . . . : Skipped

Note: run "netsh ipsec dynamic show /?" for more detailed information

The command completed successfully

Lưu ý rằng chạy kiểm tra NbtNm sẽ cho bạn các kết quả dưới đây:

NetBT name test. . . . . . : Passed
[WARNING] At least one of the <00> 'WorkStation Service', <03> 'Messenger Service', <20> 'WINS' names is missing.

Cảnh báo này không thực sự là vấn đề vì mặc định dịch vụ Messenger không chạy trên Windows Server 2003, vì vậy không có tên <20> nào được đăng kí cho nó.

Có một vài cách bạn có thể chạy Netdiag như:

Netdiag /q thực hiện các kiểm tra trong chế độ tĩnh lặng và chỉ báo cáo các lỗi.

Netdiag /v thực hiện kiểm tra trong chế độ cụ thể và cung cấp thêm các chi tiết khác.

Netdiag /test:test_name(s) thực hiện kiểm tra chuẩn và sau đó chúng thực hiện các kiểm tra được chỉ định.

Netdiag /skip:test_name(s) thực hiên kiểm tra chuẩn theo các kiểm tra toàn cục ngoại trừ những kiểm tra được chỉ định (Mặc dù vậy một số kiểm tra nào đó không thể được bỏ qua như Member, Ndis và NetBTTransports)

Netdiag /fix thực hiện tất cả các kiểm tra toàn cục và chuẩn, cố gắng sửa bất kỳ vấn đề gì mà nó tìm thấy.

Ví dụ, chạy kiểm tra Netdiag /q trên hệ thống trên cho ra các kết quả dưới đây:

C:\tools\netdiag /q
...................................

Computer Name: SRV
DNS Host Name: SRV.contoso.com
System info : Microsoft Windows Server 2003 R2 (Build 3790)
Processor : x86 Family 15 Model 4 Stepping 1, GenuineIntel
List of installed hotfixes :
KB890046
KB893756
KB896358

KB925486
Q147222

Per interface results:

Adapter : Local Area Connection

Host Name. . . . . . . . . : SRV
IP Address . . . . . . . . : 172.16.11.31
Subnet Mask. . . . . . . . : 255.255.255.0
Default Gateway. . . . . . : 172.16.11.1
Dns Servers. . . . . . . . : 172.16.11.32

WINS service test. . . . . : Skipped

Global results:
[WARNING] You don't have a single interface with the <00> 'WorkStation Service', <03> 'Messenger Service', <20> 'WINS' names defined.

IP Security test . . . . . . . . . : Skipped

The command completed successfully

Các ví dụ khác về Netdiag

Cách tốt nhất để học cách thông dịch đầu ra Netdiag là cố gắng chạy nó dưới các kịch bản kiểm tra khác nhau. Dưới đây là một vài ví dụ trong các kịch bản khác nhau và cho ra các kết quả đầu ra từ công cụ này. Các kịch bản này được thực hiện bằng cách chạy Netdiag trên máy chủ thành viên trong một miền Windows Server 2003, kết quả đầu ra được cắt ngắn chỉ làm nổi bật các thông báo lỗi được báo cáo bởi công cụ.

1. Các kết quả đầu ra khi chạy netdiag /q với bộ điều khiển miền offline:

Global results:
[WARNING] You don't have a single interface with the <00> 'WorkStation Service', <03> 'Messenger Service', <20> 'WINS' names defined.

Redir and Browser test . . . . . . : Failed
[FATAL] Cannot send mailslot message to '\\CONTOSO*\MAILSLOT\NET\NETLOGON' via redir. [ERROR_BAD_NETPATH]

DC discovery test. . . . . . . . . : Failed
[FATAL] Cannot find DC in domain 'CONTOSO'. [ERROR_NO_SUCH_DOMAIN]

DC list test . . . . . . . . . . . : Failed
'CONTOSO': Cannot find DC to get DC list from [test skipped].

Trust relationship test. . . . . . : Failed
[FATAL] Secure channel to domain 'CONTOSO' is broken. [RPC_S_SERVER_UNAVAILABLE]

Kerberos test. . . . . . . . . . . : Skipped
'CONTOSO': Cannot find DC to get DC list from [test skipped].

LDAP test. . . . . . . . . . . . . : Failed
Cannot find DC to run LDAP tests on. The error occurred was: The specified domain either does not exist or could not be contacted.

[WARNING] Cannot find DC in domain 'CONTOSO'. [ERROR_NO_SUCH_DOMAIN]

2. Kết quả đầu ra khi chạy netdiag /q với cổng mặc định sai được cấu hình trên hệ thống:

Default gateway test . . . . . . . : Failed

[FATAL] NO GATEWAYS ARE REACHABLE.
You have no connectivity to other network segments.
If you configured the IP protocol manually then
you need to add at least one valid gateway.
[WARNING] You don't have a single interface with the <00> 'WorkStation Service', <03> 'Messenger Service', <20> 'WINS' names defined.

DC list test . . . . . . . . . . . : Failed
Failed to enumerate DCs by using the browser. [ERROR_REQ_NOT_ACCEP]

3. Kết quả đầu ra khi chạy netdiag /q với dịch vụ Computer Browser không chạy trên hệ thống:

Global results:
[WARNING] You don't have a single interface with the <00> 'WorkStation Service', <03> 'Messenger Service', <20> 'WINS' names defined.

DC list test . . . . . . . . . . . : Failed
Failed to enumerate DCs by using the browser. [NERR_ServiceNotInstalled]

4. Kết quả đầu ra khi chạy netdiag /q với tài khoản máy tính cho hệ thống bị vô hiệu hóa trong Active Directory khi khởi động

Global results:
[WARNING] You don't have a single interface with the <00> 'WorkStation Servi
ce', <03> 'Messenger Service', <20> 'WINS' names defined.

Trust relationship test. . . . . . : Failed
Cannot test secure channel for domain 'CONTOSO' to DC 'DC-1A'. [ERROR_NO_LOG
ON_SERVERS]

Kerberos test. . . . . . . . . . . : Failed
[FATAL] Cannot get ticket cache from Kerberos.
The error occurred was: (null)

Kết luận

Netdiag.exe là một công cụ hữu dụng cho việc xử lý sự cố các vấn đề kết nối mạng trên Windows. Chúng tôi khuyên độc giả của bài viết này hãy thử và tìm thêm các kịch bản tương tự như một số ví dụ trên để có thể tăng hiểu biết về các tính năng của công cụ này và cách sử dụng nó như thế nào.

(Còn nữa)

Thứ Sáu, 15/06/2007 10:48
41 👨 3.434
0 Bình luận
Sắp xếp theo