Hoe repareer je & lsquo; Een bestaande verbinding werd gedwongen verbroken door de externe host & rsquo; Fout?

Een externe computer is een computer die niet fysiek aanwezig is; het is alleen toegankelijk via een soort computernetwerk. De externe host is de computer die als host fungeert voor het netwerk dat als host fungeert voor de externe computer en de externe client is de gebruiker van de externe client op het netwerk. Deze functie heeft veel processen gerevolutioneerd en heeft ook in de toekomst een grote reikwijdte.

Echter, vrij recentelijk zijn er veel meldingen binnengekomen van een " een bestaande verbinding werd gedwongen verbroken door de externe host " fout tijdens een poging om verbinding te maken met de externe host. Deze fout treedt op bij een socketverbinding tussen een client en een server. In dit artikel zullen we enkele haalbare oplossingen bieden om deze fout volledig te verhelpen en u ook informeren over de redenen die deze fout veroorzaken.

Wat zijn de oorzaken van de fout 'Een bestaande verbinding is gedwongen verbroken door de externe host' in Windows?

Nadat we talloze rapporten van meerdere gebruikers hadden ontvangen, besloten we het probleem te onderzoeken en een reeks oplossingen te bedenken om het op te lossen. We hebben ook gekeken naar de redenen waardoor het wordt geactiveerd en hebben ze hieronder vermeld.

  • TLS 1.1 / 1.0-gebruik: Als de toepassing wordt uitgevoerd op TLS 1.1 of TLS 1.0, kan deze fout worden veroorzaakt doordat ze worden afgeschreven. TLS 1.2 is de beste keuze bij het selecteren van het protocol dat de applicatie gebruikt.
  • Cryptografie uitgeschakeld: Als cryptografie is uitgeschakeld voor uw computer, wordt het gebruik van TLS 1.2 voorkomen en valt terug op TLS 1.0, wat de fout kan veroorzaken.
  • Socketimplementatie: in sommige gevallen veroorzaakt een bepaald type socketimplementatie de fout. Er is een bug bij sommige implementaties door de “.NET” -toepassing en het kan deze fout veroorzaken.
  • Ontbrekende code: bij sommige mensen die het Entity Framework gebruikten, werd opgemerkt dat een bepaalde regel code ontbrak waardoor de fout werd geactiveerd.
  • Verouderd “.NET” Framework: in bepaalde gevallen kan deze fout worden geactiveerd als het “.NET” Framework is uitgeschakeld. Voor bepaalde taken moet het ".NET" -raamwerk worden bijgewerkt naar de nieuwste versie om correct te kunnen werken.

Nu u een basiskennis heeft van de aard van het probleem, gaan we verder met de oplossingen. Zorg ervoor dat u deze implementeert in de specifieke volgorde waarin ze worden gepresenteerd om conflicten te voorkomen.

Oplossing 1: cryptografie inschakelen

Als cryptografie is uitgeschakeld voor uw machine, is het gebruik van TLS 1.2 verboden. Daarom zullen we in deze stap cryptografie inschakelen. Daarom:

  1. Druk op " Windows " + " R " om de prompt Uitvoeren te openen.
  2. Typ "regedit" en druk op " Enter ".
  3. Navigeer naar het volgende adres
    HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ .NETFramework \ v4.0.3031

    Navigeer naar dit adres als er geen waarde " SchUseStrongCrypto " in het rechterdeelvenster staat.

    HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ Microsoft \ .NETFramework \ v4.0.30319
  4. Dubbelklik in het rechterdeelvenster op de optie " SchUseStrongCrypto " en voer " 1 " in als waardegegevens .
  5. Klik op " OK " om uw wijzigingen op te slaan en controleer of het probleem zich blijft voordoen.

Oplossing 2: TLS 1.2-gebruik afdwingen

Als de toepassing is geconfigureerd om TLS 1.1 of TLS 1.0 te gebruiken in plaats van TLS 1.2, kan deze fout worden geactiveerd. Daarom zullen we in deze stap onze computer configureren om TLS 1.2 te gebruiken. Daarom:

  1. Navigeer naar de root van de site en klik met de rechtermuisknop op het bestand "global.asax" .
  2. Selecteer " Bekijk code " in de lijst.
  3. Er zou een " Application_Start " -methode moeten zijn, voeg de volgende regel code toe aan die methode
    if (ServicePointManager. SecurityProtocol. HasFlag (SecurityProtocolType. Tls12) == false) SecurityProtocolType. Tls12;              
  4. Sla uw wijzigingen op en controleer of het probleem zich blijft voordoen.

Oplossing 3: Socket-implementatie wijzigen

Als een bepaalde socketimplementatie een bug of glitch bevat, kan dit ervoor zorgen dat bepaalde elementen van de applicatie niet correct werken, waardoor deze fout kan worden geactiveerd. Daarom zullen we het in deze stap configureren om een ​​andere implementatie te gebruiken. Daarom:

  1. Zorg ervoor dat u een “ StateObjec t” class heeft met “ public byte [] buffer = new byte [1024], public Socket socket; “.
  2. Roep de functie " Ontvang (Socket s) " op en roep de volgende code in " void ReceiveCallback (IAsyncResult ar) "
     SocketError errorCode ; int nBytesRec = socket . EndReceive ( ar , out errorCode ); if ( errorCode != SocketError . Success ) { nBytesRec = 0 ; } 
  3. Controleer of het probleem zich blijft voordoen na het implementeren van deze code.

Oplossing 4: opdrachtregels toevoegen (alleen voor Entity Framework)

Als u het Entity Framework gebruikt, is het mogelijk dat een bepaalde regel code ontbreekt. Daarom zullen we in deze stap die regel code toevoegen om dit probleem op te lossen. Daarom:

  1. Open uw “ .edmx ” -bestand en open het “ .context.tt ” -bestand eronder.
  2. Open het " .context.cs " -bestand en voeg de volgende regel code toe aan uw constructor
     public DBEntities () : base ( "name=DBEntities" ) { this . Configuration . ProxyCreationEnabled = false ; // ADD THIS LINE ! } 
  3. Controleer of het probleem zich blijft voordoen nadat u deze regel code hebt toegevoegd.

Oplossing 5: .NET Framework bijwerken

De laatste versie van het “.NET” Framework is vereist om alles soepel te laten functioneren. Daarom zullen we in deze stap de nieuwste versie van de site downloaden en deze installeren. Daarom:

  1. Navigeer naar deze link om de installatie te downloaden.
  2. Voer het “ .exe ” -bestand uit om het installatieproces te starten.
  3. Volg de instructies op het scherm om de applicatie op uw computer te installeren.
  4. Controleer of het probleem zich blijft voordoen nadat de installatie is voltooid.

Aanbevolen

Oplossing: Minecraft reageert niet
Wat is de registratietoepassing voor een digitale tv-tuner en moet deze worden verwijderd?
Wat is FileRepMalware en moet u het verwijderen?