Not
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Den här artikeln visar hur du konfigurerar KDNET-nätverkskärnfelsökning manuellt med hjälp av felsökningsverktyg för Windows. Du konfigurerar både värd- och måldatorer för att aktivera nätverksfelsökning.
Viktig
Manuell felsökning av nätverk är komplex och felbenägen. I de flesta scenarier använder du den automatiska installationen i stället:Konfigurera KDNET-nätverkskärnfelsökning automatiskt. KDNET-verktyget rekommenderas starkt.
Det här lär du dig:
- Så här konfigurerar du värd- och måldatorer för nätverksfelsökning
- Så här upprättar och felsöker du debuggningsanslutningar
- När du ska använda IPv6 vs IPv4 för felsökning
Den dator som kör felsökningsprogrammet kallas värddatoroch datorn som debuggas kallas måldator. Värddatorn måste köra Windows 7 eller senare och måldatorn måste köra Windows 8 eller senare.
Felsökning över ett nätverk har följande fördelar jämfört med felsökning av andra typer av anslutningar.
- Värd- och måldatorerna kan finnas var som helst i det lokala nätverket.
- Det är enkelt att felsöka många måldatorer från en värddator.
- Med tanke på två datorer är det troligt att båda har Ethernet-kort. Det är mindre troligt att båda har serieportar eller 1394 portar.
- Nätverksfelsökningen går snabbare än felsökning av seriell port.
Nätverkskort som stöds
Värddator: Alla nätverkskort fungerar.
Måldator: Måste använda ett nätverkskort som stöds. Kontrollera din Windows-version:
- Adaptrar som stöds för Windows 11
- Adapter som stöds för Windows 10
- Adaptrar som stöds för Windows 8.1
Installera felsökningsverktyg för Windows
Bekräfta att felsökningsverktygen för Windows är installerade på värdsystemet. Information om hur du laddar ned och installerar felsökningsverktygen finns i Felsökningsverktyg för Windows.
Fastställa IP-adressen för värddatorn
Använd någon av följande procedurer för att fastställa IP-adressen för värddatorn.
Öppna en kommandotolk på värddatorn och ange följande kommando:
ipconfigAnteckna IPv4-adressen för det nätverkskort som du tänker använda för felsökning.
På måldatorn öppnar du en kommandotolk och anger följande kommando, där YourIPAddress är IP-adressen för värddatorn:
ping -4 <YourIPAddress>
Välj en port för nätverksfelsökning
Rekommenderat portintervall: 50000-50039
Du kan använda valfri port från 49152-65535, men det rekommenderade intervallet ger bästa möjliga kompatibilitet. Felsökningsprogrammet använder den här porten exklusivt, så se till att inga andra program använder den.
Viktiga överväganden
- Företagsbrandväggar kan begränsa portintervall. Kontakta nätverksadministratören.
- Varje måldator behöver en unik port (till exempel: 50000, 50001, 50002).
- Olika värddatorer kan återanvända samma portintervall.
Not
Företagets nätverksprincip kan begränsa tillgängliga portar. Kontakta nätverksadministratörerna om du stöter på anslutningsproblem.
Om du ansluter flera måldatorer till en enda värddator måste varje anslutning ha ett unikt portnummer. Om du till exempel ansluter 100 måldatorer till en enda värddator kan du tilldela port 50000 till den första anslutningen, port 50001 till den andra anslutningen och så vidare.
Not
En annan värddator kan använda samma portintervall (50000 till 50099) för att ansluta till ytterligare 100 måldatorer.
Konfigurera måldatorn
Kontrollera att måldatorn har ett nätverkskort som stöds. Mer information finns i:
Anslut nätverkskortet som stöds till en nätverkshubb eller växla med hjälp av en lämplig nätverkskabel.
Viktig
Innan du använder BCDEdit för att ändra startinformationen kan du tillfälligt behöva pausa Windows-säkerhetsfunktioner, till exempel BitLocker och Säker start, på testdatorn. Återaktivera dessa säkerhetsfunktioner när testningen är klar och hantera testdatorn på rätt sätt när säkerhetsfunktionerna är inaktiverade.
I en kommandotolk med administratörsrättigheter anger du följande kommandon. Ersätt w.x.y.z med värddatorns IP-adress och n med det valda portnumret:
bcdedit /debug on bcdedit /dbgsettings net hostip:w.x.y.z port:nTill exempel:
bcdedit /debug on bcdedit /dbgsettings net hostip:192.168.1.100 port:50000BCDEdit visar en automatiskt genererad nyckel. Kopiera nyckeln och lagra den på en flyttbar lagringsenhet, till exempel ett USB-minne. Du behöver nyckeln när du startar en felsökningssession på värddatorn.
Använd Enhetshanteraren för att fastställa PCI-buss-, enhets- och funktionsnummer för det kort som du vill använda för felsökning. Dessa värden visas i Enhetshanteraren under Plats på fliken Allmänt. I en upphöjd kommandotolk anger du sedan följande kommando, där b, doch f är bussnummer, enhetsnummer och funktionsnummer för adaptern:
bcdedit /set "{dbgsettings}" busparams b.d.fMåldatorn startas om efter att ett kernelfelsökare har anslutits.
Not
Om du tänker installera Hyper-V-rollen på måldatorn kan du se Konfigurera nätverksfelsökning för en virtuell datorvärd.
Försiktighet
Om måldatorn finns i en dockningsstation och du aktiverar nätverksfelsökning för ett nätverkskort som ingår i dockningsstationen ska du inte ta bort datorn från dockningsstationen. Om du behöver ta bort måldatorn från dockningsstationen inaktiverar du kernelfelsökning först. Om du vill inaktivera kernelfelsökning på måldatorn öppnar du en kommandotolk som administratör och anger kommandot bcdedit /debug off. Starta om måldatorn.
Starta felsökningssessionen
Innan du börjar: Kontrollera att värddatorns nätverkskort är anslutet till en nätverkshubb eller växel.
Alternativ 1: Använd WinDbg (GUI)
- Öppna WinDbg på värddatorn.
- Välj Fil>Kärnfelsök.
- Öppna fliken Net .
- Ange portnummer och nyckel.
- Välj OK.
Alternativ 2: Använd WinDbg (kommandorad)
Du kan också starta en session med WinDbg genom att öppna en kommandotolk och ange följande kommando, där n är ditt portnummer och MyKey är nyckeln som BCDEdit genererade automatiskt när du konfigurerade måldatorn:
windbg -k net:port=<n>,key=<MyKey>
Om du uppmanas att tillåta WinDbg att komma åt porten via brandväggen tillåter du att WinDbg får åtkomst till porten för alla tre av de olika nätverkstyperna.
Använd KD
Öppna en kommandotolk på värddatorn. Ange följande kommando, där n är ditt portnummer och MyKey är nyckeln som BCDEdit genererade automatiskt när du konfigurerade måldatorn:
kd -k net:port=<n>,key=<MyKey>
Om du uppmanas att tillåta WinDbg att komma åt porten via brandväggen kan du tillåta WinDbg att komma åt porten för alla tre av de olika nätverkstyperna.
Starta om måldatorn
Starta om måldatorn när felsökningsprogrammet ansluter och väntar. Ett sätt att starta om datorn är att använda det här kommandot från en administratörs kommandotolk:
shutdown -r -t 0
När enheten startas om ansluter felsökningsprogrammet i värdsystemet.
När du har anslutit till målet på värddatorn, välj brytpunkt i ditt felsökningsprogram för att börja felsöka.
Tillåt felsökningsprogrammet via brandväggen
När du först försöker upprätta en nätverksfelsökningsanslutning kan du uppmanas att tillåta felsökningsprogrammet (WinDbg eller KD) åtkomst via brandväggen. Klientversioner av Windows visar kommandotolken, men serverversioner av Windows visar inte kommandotolken. Svara på uppmaningen genom att markera rutorna för alla tre nätverkstyperna: domän, privat och offentlig.
Om du inte får kommandotolken eller om du inte kryssade i rutorna när uppmaningen var tillgänglig använder du Kontrollpanelen för att tillåta åtkomst via brandväggen på värddatorn där felsökningsprogrammet körs. Öppna Kontrollpanelen > System och säkerhet och välj Tillåt en app via Windows-brandväggen.
(WinDbg) I listan över program letar du upp WinDbg-motorprocess (TCP) (alla).
(Klassisk WinDbg) I listan över program letar du upp Windows GUI-felsökningsprogrammet och Windows Kernel-felsökningsprogrammet.
Använd kryssrutorna för att tillåta dessa program via brandväggen. Starta om felsökningsprogrammet (WinDbg eller KD).
Krypteringsnyckel
För att hålla måldatorerna säkra måste paket som skickas mellan värd- och måldatorerna krypteras. Använd en automatiskt genererad krypteringsnyckel (tillhandahålls av BCDEdit när du konfigurerar måldatorn). En automatiskt genererad krypteringsnyckel är säkrare och ger ett unikt värde som du använder för att upprätta anslutningen till ett specifikt mål.
Nätverksfelsökning använder en 256-bitarsnyckel som anges som fyra 64-bitarsvärden, i bas 36, avgränsade med perioder. Varje 64-bitarsvärde anges med upp till 13 tecken. Giltiga tecken är bokstäverna en genom z och siffrorna 0 till och med 9. Specialtecken tillåts inte.
Om du vill ange din egen nyckel öppnar du en upphöjd kommandotolk på måldatorn. Ange följande kommando, där w.x.y.z är IP-adressen för värddatorn, n är ditt portnummer och Nyckel är din nyckel:
bcdedit /dbgsettings net hostip:w.x.y.z port:n key:Key
Måldatorn måste startas om när du ändrar dbgsettings.
Felsökningstips
Tillåt debuggningsprogrammet genom brandväggarna
När du först försöker upprätta en nätverksfelsökningsanslutning kan du uppmanas att tillåta felsökningsprogrammet (WinDbg eller KD) åtkomst via brandväggen. Klientversioner av Windows visar kommandotolken, men serverversioner av Windows visar inte kommandotolken. Svara på uppmaningen genom att markera rutorna för alla tre nätverkstyperna: domän, privat och offentlig.
Om du inte får kommandotolken eller om du inte kryssade i rutorna när uppmaningen var tillgänglig måste du använda Kontrollpanelen för att tillåta åtkomst via brandväggen. Öppna Kontrollpanelen > System och säkerhet och välj Tillåt en app via Windows-brandväggen.
(WinDbg) I listan över program letar du upp WinDbg-motorprocess (TCP) (alla).
(WinDbg (klassisk)) I listan över program letar du upp Windows GUI-symbolfelsökaren och Windows Kernel-felsökaren.
Använd kryssrutorna för att tillåta dessa program via brandväggen. Rulla nedåt och välj OK för att spara brandväggsändringarna. Starta om felsökningsprogrammet.
Portnumret måste vara inom det intervall som tillåts av nätverksprincipen
Företagets nätverksprincip kan begränsa antalet portnummer som du kan använda för nätverksfelsökning. Om du vill ta reda på om företagets princip begränsar portintervallet för nätverksfelsökning kontrollerar du med nätverksadministratören. Öppna en kommandotolk som administratör på måldatorn och ange kommandot bcdedit /dbgsettings. Utdata ser ut ungefär så här:
C:\> bcdedit /dbgsettings
key XXXXXX.XXXXX.XXXXX.XXXXX
debugtype NET
hostip 169.168.1.1
port 50085
dhcp Yes
The operation completed successfully.
I föregående utdata är värdet för porten 50085. Om portvärdet ligger utanför det intervall som nätverksadministratören tillåter anger du följande kommando. Värdet w.x.y.z är värddatorns IP-adress och DittDebugPort är ett portnummer i det tillåtna spannet.
bcdedit /dbgsettings net hostip:w.x.y.z port:YourDebugPort
När du har ändrat inställningarna för måldatorns felsökning kör du felsökaren igen på värddatorn med den nya portinställningen och startar sedan om måldatorn.
Använda ping för att testa anslutningen
Om felsökaren inte ansluter använder du ping-kommandot på måldatorn för att verifiera anslutningen.
C:\>Ping <HostComputerIPAddress>
Not
Den här metoden kanske inte fungerar om värddatorn inte är konfigurerad för att identifieras i nätverket eftersom brandväggen kan blockera ping-begäranden. Om brandväggen blockerar pingförfrågningar får du inga svar när du pingar datorvärden.
Så här hämtar felsökningsprogrammet en IP-adress för måldatorn
KDNET på måldatorn försöker använda DHCP (Dynamic Host Configuration Protocol) för att hämta en dirigerbar IP-adress för nätverkskortet som används för felsökning. Om KDNET hämtar en DHCP-tilldelad adress kan värddatorer var som helst i nätverket felsöka måldatorn. Om KDNET inte kan hämta en DHCP-tilldelad adress används APIPA (Automatic Private IP Address) för att hämta en lokal länk-IP-adress. IP-adresser för lokallänkar kan inte dirigeras, så en värd och en målvärd kan inte använda en lokallänks-IP-adress för att kommunicera genom en router. I så fall fungerar nätverksfelsökning om du ansluter värd- och måldatorerna till samma nätverkshubb eller växel.
Ange alltid busparams när du ställer in KDNET på en fysisk maskin med ett PCI-baserat nätverkskort
Om du konfigurerar KDNET på en fysisk dator med ett PCI- eller PCIe-baserat nätverkskort anger du alltid busparams för det nätverkskort som du vill använda för KDNET. Om du vill ange bussparametrarna öppnar du Enhetshanteraren och letar upp det nätverkskort som du vill använda för felsökning. Öppna egenskapssidan för nätverkskortet och anteckna bussnummer, enhetsnummer och funktionsnummer som visas under Plats på fliken Allmänt . I en upphöjd kommandotolk anger du följande kommando, där b, d och f är buss-, enhets- och funktionsnummer i decimalformat:
bcdedit /set "{dbgsettings}" busparams b.d.f
När felsökningsprogrammet körs på värddatorn och väntar på att ansluta startar du om måldatorn med hjälp av följande kommando:
shutdown -r -t 0
Ta bort BCDEdit-poster manuellt
Du behöver vanligtvis inte ta bort BCDEdit-poster manuellt. Du kan dock använda den här proceduren för att felsöka ovanliga situationer.
Du behöver inte ta bort poster manuellt när du använder kdnet-verktyget. Mer information finns i Konfigurera KDNET-nätverkskärnfelsökning automatiskt.
När du använder bcdedit –deletevaluemåste du ange ett giltigt bcd-elementnamn. Mer information finns i BCDEdit /deletevalue.
Om du vill ta bort bcdedit-poster manuellt utför du följande steg:
Öppna en kommandotolk som administratör på måldatorn.
Ange till exempel följande kommando för att ta bort BCDEdit-felsökningsposten för värdens IP-adress:
bcdedit -deletevalue {dbgsettings} hostip
När du tar bort värd-ip-adressen måste du ange target= på kommandoraden för felsökningsprogrammet.
Som ett annat exempel tar du bort portposten med hjälp av följande kommando:
bcdedit -deletevalue {dbgsettings} port
När du tar bort portinmatningen använder KDNET den ICANN-registrerade standardfelsökningsporten nummer 5364.
Konfigurera Hyper-V
Om du vill installera Hyper-V roll på måldatorn kan du läsa Konfigurera nätverksfelsökning för en virtuell datorvärd.
Information om hur du felsöker en Hyper-V virtuell dator (VM) finns i Konfigurera nätverksfelsökning av en virtuell dator – KDNET.
Aktivera KDNET på en Hyper-V värd som kör virtuella datorer med extern nätverksanslutning
Ibland uppstår en situation som gör att nätverk på virtuella datorer slutar fungera:
Du aktiverar Hyper-V på datorn, skapar en extern nätverksväxel som pekar på ett fysiskt nätverkskort på datorn och konfigurerar virtuella datorer att använda den externa växeln för sina nätverk.
Du aktiverar KDNET på Hyper-V värdoperativsystem med samma fysiska nätverkskort som den externa nätverksväxlingen pekar på. Du startar om värden.
Alla virtuella datorer som använder den tidigare konfigurerade externa växeln förlorar sin nätverksanslutning efter omstarten.
Det här stoppet är avsiktligt. KDNET tar exklusiv kontroll över det nätverkskort som det är konfigurerat att använda. Operativsystemet läser inte in den interna NDIS-miniporten för det nätverkskortet. Den externa nätverksväxeln kan inte längre kommunicera med den interna NDIS-miniportdrivrutinen och slutar fungera. Utför följande steg för att kringgå den här situationen:
Öppna Virtual Switch Manager från Hyper-V Manager och välj din befintliga virtuella växel. Ändra det externa nätverkskortet till Microsoft Kernel Debug Network Adapter genom att välja det i listrutan och sedan välja OK i dialogrutan Hanteraren för virtuell växel.
När du har uppdaterat nätverkskortet för virtuell växel stänger du av och startar om dina virtuella datorer.
När du inaktiverar KDNET-felsökning följer du samma procedur för att återaktivera den externa växeln till den interna NDIS-miniporten för nätverkskortet. I annat fall går anslutningen till den virtuella datorn förlorad när du startar om datorn efter att felsökningen har inaktiverats.
IPv6
Windows version 1809 lägger till stöd för IPv6.
Utför följande steg för att använda IPv6 med felsökningsprogrammet:
Pinga ditt <felsökvärdnamn> och notera IPv6-adressen som rapporteras i svaret från utdata. Använd den här IPv6-adressen i stället för
x:y:z:p:d:q:r:n.Använd BCDEdit för att ta bort befintliga IP-adressvärden i dbgsettings.
bcdedit -deletevalue {dbgsettings} hostipStäll in hostens IPv6-adress. Strängen
hostipv6=s:t:u:v:w:x:y:zfår inte innehålla några blanksteg. <YourPort> är det nätverksportnummer som ska användas för den här måldatorn. <YourKey> är säkerhetsnyckeln i fyra delar. <b.d.f> är platsnumren för bussenhetens funktion för det nätverkskort som du vill använda för KDNET.bcdedit /dbgsettings net hostipv6:s:t:u:v:w:x:y:z port:<YourPort> key:<YourKey> busparams:<b.d.f>Skriv det här kommandot för att bekräfta att dbgsettings har angetts korrekt.
C:\> bcdedit /dbgsettings busparams 0.25.0 key 2steg4fzbj2sz.23418vzkd4ko3.1g34ou07z4pev.1sp3yo9yz874p debugtype NET hostipv6 2001:db8:0:0:ff00:0:42:8329 port 50010 dhcp Yes The operation completed successfully.På värddatorn använder du följande kommando för att starta felsökningsprogrammet:
Windbg -k net:port=<yournetworkportnumber>,key=<key_output_from_kdnet>,target=::<YourIPv6Address>Starta om måldatorn när felsökningsprogrammet körs på värddatorn och väntar på att ansluta.
Felsökningsprogrammet ansluter till värdfelsökaren tidigt under starten. Du kan se att KDNET använder en IPv6-anslutning eftersom IP-adresserna som rapporteras i det anslutna meddelandet är IPv6-adresser i stället för IPv4-adresser.
Anteckningar
- Varje bcd-inställning för felsökningsprogram som gör att du kan ange
hostiphar ett motsvarandehostipv6element. Det finns tre par.
| IPv4 | IPv6 | Användning |
|---|---|---|
| värd-IP-adress | hostipv6 | För start- och kernelfelsökning |
| targethostip | targethostipv6 | Specifikt för kernel-felsökning |
| hypervisorhostip | hypervisorhostipv6 | För Hyper-V felsökning |
Om du anger formatadressen
hostipv6för någon av dessa typer av felsökning får du IPv6.Om du anger formatadressen
hostipför någon av dessa typer av felsökning får du IPv4.Målet stöder bara IPv4 eller IPv6, inte båda samtidigt. Den version av IP-protokollet som används styrs av måldatorns dbgsettings. Om du anger
hostipanvänder målet IPv4. Om du angerhostipv6använder målet IPv6.Värdfelsökaren väljer normalt automatiskt användningen av IPv4 eller IPv6. Som standard lyssnar felsökningsprogrammet på både en IPv4-socket och en IPv6-socket och ansluter automatiskt på någon av dem till måldatorn.
Om du vill framtvinga användningen av IPv6 i felsökningsprogrammet på värddatorn, men önskar att felsökningsprogrammet ska lyssna efter en anslutning från måldatorn, kan du lägga till
target=::till kommandoraden för felsökningsprogrammet.::är en IPv6-adress på 0.Om du vill tvinga IPv4-felsökning i felsökningsprogrammet på värden, men du vill att felsökaren ska lyssna efter en anslutning från målet, kan du lägga till
target=0.0.0.0till kommandoraden för felsökningsprogrammet.0.0.0.0är en IPv4-adress på 0.Om du anger
target=på kommandoraden för felsökningsprogrammet och använder ett datornamn konverterar felsökningsprogrammet datornamnet till en IPv4-adress och en IPv6-adress. Felsökningsprogrammet försöker sedan ansluta på båda.När du anger
target=på kommandoraden för felsökningsprogrammet och använder en IP-adress, om IP-adressen innehåller några : tecken, förutsätter felsökningsprogrammet att det är en IPv6-adress och tvingar användningen av IPv6 för den anslutningen. Om IP-adressen innehåller någon . tecken förutsätter felsökningsprogrammet att det är en IPv4-adress och tvingar användningen av IPv4 för den anslutningen.Om du konfigurerar IPv6 på målet och framtvingar användning av IPv4 på kommandoraden för felsökningsprogrammet får du ingen anslutning.
Om du konfigurerar IPv4 på målet och framtvingar användning av IPv6 på kommandoraden för felsökningsprogrammet får du inte heller någon anslutning.