在 PowerShell 中实现您要求的多个网络修复功能,可以通过运行多个脚本和命令来完成。这些操作可以帮助修复网络连接问题、更新问题、SSL 问题等。以下是实现这些功能的 PowerShell 脚本:

Reset Internet Protocols (TCP/IP)
Repair Winsock (Reset Catalog)
RenewInternet Connections
Flush DNS Resolver Cache (Domain Name System)
Flush ARP Cache (Address Resolution Protocol)
Repair Internet Explorer 11
Clear Windows Update History
Repair Windows/Automatic Updates
Repair SSL/HTTPS/ Cryptography
Reset Proxy Server Configuration
Reset Windows Firewall Configuration
Restore the default hosts file
Renew Wins Client Registrations
Make Network Computers Visible in File Explorer

Powershell 脚本代码,涵盖了所有指定的网络修复功能。此脚本包括了:

  • 重置互联网协议(TCP/IP)
  • 修复 Winsock(重置目录)
  • 更新互联网连接
  • 刷新 DNS 解析器缓存
  • 刷新 ARP 缓存
  • 修复 Internet Explorer 11
  • 清除 Windows 更新历史
  • 修复 Windows/自动更新
  • 修复 SSL/HTTPS/加密
  • 重置代理服务器配置
  • 重置 Windows 防火墙配置
  • 恢复默认的 hosts 文件
  • 更新 Wins 客户端注册
  • 使网络计算机在文件资源管理器中可见
powershellCopy Code
# Reset TCP/IP Stack
Write-Host "Resetting TCP/IP stack..."
netsh int ip reset

# Repair Winsock (Reset Catalog)
Write-Host "Resetting Winsock..."
netsh winsock reset

# Renew Internet Connections (Release and Renew IP Address)
Write-Host "Renewing IP address..."
ipconfig /release
ipconfig /renew

# Flush DNS Resolver Cache
Write-Host "Flushing DNS resolver cache..."
ipconfig /flushdns

# Flush ARP Cache
Write-Host "Flushing ARP cache..."
netsh interface ip delete arpcache

# Repair Internet Explorer 11 (Reset settings)
Write-Host "Resetting Internet Explorer settings..."
Invoke-Expression -Command "C:\Program Files\Internet Explorer\iexplore.exe -reset"

# Clear Windows Update History
Write-Host "Clearing Windows Update history..."
Remove-Item -Path "$env:windir\SoftwareDistribution\Datastore\*" -Recurse -Force
Remove-Item -Path "$env:windir\SoftwareDistribution\Download\*" -Recurse -Force

# Repair Windows Update Service (Start/Stop Windows Update)
Write-Host "Repairing Windows Update service..."
Stop-Service -Name wuauserv
Start-Service -Name wuauserv

# Repair SSL/HTTPS/Cryptography Services
Write-Host "Repairing SSL and Cryptography services..."
Stop-Service -Name CryptSvc
Start-Service -Name CryptSvc

# Reset Proxy Server Configuration
Write-Host "Resetting proxy server settings..."
netsh winhttp reset proxy

# Reset Windows Firewall Configuration
Write-Host "Resetting Windows Firewall..."
netsh advfirewall reset

# Restore Default Hosts File
Write-Host "Restoring default hosts file..."
$defaultHostsContent = @"
# Copyright (c) 1993-2009 Microsoft Corp.
#
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
#
# This file contains the mappings of IP addresses to host names. Each
# entry should be kept on an individual line. The IP address should be
# placed in the first column followed by the corresponding host name.
# The IP address and the host name should be separated by at least one
# space or tab. Example:
#
#      102.54.94.97     rhino.acme.com          # source server
#       38.25.63.10     x.acme.com              # x client host

# localhost name resolution is handled within DNS itself.
127.0.0.1       localhost
::1             localhost
"@
$defaultHostsPath = "C:\Windows\System32\drivers\etc\hosts"
Set-Content -Path $defaultHostsPath -Value $defaultHostsContent -Force

# Renew Wins Client Registrations
Write-Host "Renewing Wins Client registrations..."
ipconfig /registerdns

# Make Network Computers Visible in File Explorer
Write-Host "Making network computers visible in File Explorer..."
Set-Service -Name "FDResPub" -StartupType Automatic
Start-Service -Name "FDResPub"

Write-Host "All network-related repairs are complete!"

解释和步骤:

  1. 重置 TCP/IP 协议栈netsh int ip reset 用于重置计算机的 TCP/IP 协议栈,修复大多数网络连接问题。
  2. 重置 Winsocknetsh winsock reset 用于重置 Winsock 目录,这通常用于解决由于软件安装或网络问题导致的连接问题。
  3. 更新互联网连接ipconfig /release 和 ipconfig /renew 用于释放并重新获取 IP 地址。
  4. 刷新 DNS 缓存ipconfig /flushdns 用于清除本地的 DNS 解析器缓存。
  5. 刷新 ARP 缓存netsh interface ip delete arpcache 用于清除 ARP 缓存,帮助解决某些网络连接问题。
  6. 修复 Internet Explorer 设置:这会重置 IE 设置,恢复默认配置。
  7. 清除 Windows 更新历史:删除软件分发文件夹下的文件,清除 Windows 更新的缓存和历史记录。
  8. 修复 Windows 更新服务:重启 Windows 更新服务。
  9. 修复 SSL/HTTPS/加密服务:重启相关服务(如 CryptSvc)以修复 SSL/TLS 问题。
  10. 重置代理设置netsh winhttp reset proxy 用于重置 Windows HTTP 代理配置。
  11. 重置 Windows 防火墙netsh advfirewall reset 用于重置 Windows 防火墙设置。
  12. 恢复默认的 hosts 文件:恢复默认的 hosts 文件内容,解决因修改而引发的 DNS 或访问问题。
  13. 更新 Wins 客户端注册ipconfig /registerdns 用于更新计算机的 DNS 注册。
  14. 使网络计算机在文件资源管理器中可见:启动并设置 "FDResPub" 服务为自动启动,以便在网络上显示共享的计算机。

使用方法:

  1. 将以上脚本保存为 .ps1 文件(例如:repair_network.ps1)。
  2. 打开 PowerShell 以管理员身份运行(右键点击 PowerShell 图标,选择 "以管理员身份运行")。
  3. 运行脚本文件:在 PowerShell 中输入 .\repair_network.ps1,按回车执行。

注意事项:

  • 运行此脚本时,请确保您以管理员权限运行 PowerShell。

 

 

 

 

Reset Internet Protocols (TCP/IP)
Repair Winsock (Reset Catalog)
Renew Internet Connections
Flush DNS Resolver Cache (Domain Name System)
Flush ARP Cache (Address Resolution Protocol)
Repair Internet Explorer 11
Clear Windows Update History
Repair Windows / Automatic Updates
Repair SSL/ HTTPS / Cryptography
Reset Proxy Server Configuration
Reset Windows Firewall Configuration
Restore the default hosts file
Renew Wins Client Registrations
Make Network Computers Visible in File Explorer   

 

 

在 PowerShell 中实现您要求的多个网络修复功能,可以通过运行多个脚本和命令来完成。这些操作可以帮助修复网络连接问题、更新问题、SSL 问题等。以下是实现这些功能的 PowerShell 脚本:

1. 重置 Internet 协议(TCP/IP)

powershellCopy Code
Write-Host "Resetting TCP/IP stack..."
Reset-NetAdapterAdvancedProperty -Name "*"
netsh int ip reset

2. 修复 Winsock (重置目录)

powershellCopy Code
Write-Host "Resetting Winsock..."
netsh winsock reset

3. 更新 Internet 连接

powershellCopy Code
Write-Host "Renewing IP address..."
ipconfig /release
ipconfig /renew

4. 刷新 DNS 解析器缓存

powershellCopy Code
Write-Host "Flushing DNS resolver cache..."
ipconfig /flushdns

5. 刷新 ARP 缓存

powershellCopy Code
Write-Host "Flushing ARP cache..."
netsh interface ip delete arpcache

6. 修复 Internet Explorer 11 设置

powershellCopy Code
Write-Host "Resetting Internet Explorer settings..."
Invoke-Expression -Command "C:\Program Files\Internet Explorer\iexplore.exe -reset"

7. 清除 Windows 更新历史

powershellCopy Code
Write-Host "Clearing Windows Update history..."
Remove-Item -Path "$env:windir\SoftwareDistribution\Datastore\*" -Recurse -Force
Remove-Item -Path "$env:windir\SoftwareDistribution\Download\*" -Recurse -Force

8. 修复 Windows 自动更新

powershellCopy Code
Write-Host "Repairing Windows Update service..."
Stop-Service -Name wuauserv
Start-Service -Name wuauserv

9. 修复 SSL / HTTPS / 加密问题

powershellCopy Code
Write-Host "Repairing SSL and Cryptography services..."
Stop-Service -Name CryptSvc
Start-Service -Name CryptSvc

10. 重置代理服务器配置

powershellCopy Code
Write-Host "Resetting proxy server settings..."
netsh winhttp reset proxy

11. 重置 Windows 防火墙配置

powershellCopy Code
Write-Host "Resetting Windows Firewall..."
netsh advfirewall reset

12. 恢复默认的 hosts 文件

powershellCopy Code
Write-Host "Restoring default hosts file..."
$defaultHostsContent = @"
# Copyright (c) 1993-2009 Microsoft Corp.
#
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
#
# This file contains the mappings of IP addresses to host names. Each
# entry should be kept on an individual line. The IP address should be
# placed in the first column followed by the corresponding host name.
# The IP address and the host name should be separated by at least one
# space or tab. Example:
#
#      102.54.94.97     rhino.acme.com          # source server
#       38.25.63.10     x.acme.com              # x client host

# localhost name resolution is handled within DNS itself.
127.0.0.1       localhost
::1             localhost
"@
$defaultHostsPath = "C:\Windows\System32\drivers\etc\hosts"
Set-Content -Path $defaultHostsPath -Value $defaultHostsContent -Force

13. 更新 Wins 客户端注册

powershellCopy Code
Write-Host "Renewing Wins Client registrations..."
ipconfig /registerdns

14. 使网络计算机在文件资源管理器中可见

powershellCopy Code
Write-Host "Making network computers visible in File Explorer..."
Set-Service -Name "FDResPub" -StartupType Automatic
Start-Service -Name "FDResPub"

综合脚本

将这些命令组合成一个 PowerShell 脚本,您可以运行以下脚本一次性修复所有问题:

powershellCopy Code
# Reset TCP/IP Stack
Write-Host "Resetting TCP/IP stack..."
Reset-NetAdapterAdvancedProperty -Name "*"
netsh int ip reset

# Repair Winsock
Write-Host "Resetting Winsock..."
netsh winsock reset

# Renew Internet Connections
Write-Host "Renewing IP address..."
ipconfig /release
ipconfig /renew

# Flush DNS Resolver Cache
Write-Host "Flushing DNS resolver cache..."
ipconfig /flushdns

# Flush ARP Cache
Write-Host "Flushing ARP cache..."
netsh interface ip delete arpcache

# Repair Internet Explorer 11
Write-Host "Resetting Internet Explorer settings..."
Invoke-Expression -Command "C:\Program Files\Internet Explorer\iexplore.exe -reset"

# Clear Windows Update History
Write-Host "Clearing Windows Update history..."
Remove-Item -Path "$env:windir\SoftwareDistribution\Datastore\*" -Recurse -Force
Remove-Item -Path "$env:windir\SoftwareDistribution\Download\*" -Recurse -Force

# Repair Windows/Automatic Updates
Write-Host "Repairing Windows Update service..."
Stop-Service -Name wuauserv
Start-Service -Name wuauserv

# Repair SSL/HTTPS/Cryptography
Write-Host "Repairing SSL and Cryptography services..."
Stop-Service -Name CryptSvc
Start-Service -Name CryptSvc

# Reset Proxy Server Configuration
Write-Host "Resetting proxy server settings..."
netsh winhttp reset proxy

# Reset Windows Firewall Configuration
Write-Host "Resetting Windows Firewall..."
netsh advfirewall reset

# Restore Default Hosts File
Write-Host "Restoring default hosts file..."
$defaultHostsContent = @"
# Copyright (c) 1993-2009 Microsoft Corp.
#
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
#
# This file contains the mappings of IP addresses to host names. Each
# entry should be kept on an individual line. The IP address should be
# placed in the first column followed by the corresponding host name.
# The IP address and the host name should be separated by at least one
# space or tab. Example:
#
#      102.54.94.97     rhino.acme.com          # source server
#       38.25.63.10     x.acme.com              # x client host

# localhost name resolution is handled within DNS itself.
127.0.0.1       localhost
::1             localhost
"@
$defaultHostsPath = "C:\Windows\System32\drivers\etc\hosts"
Set-Content -Path $defaultHostsPath -Value $defaultHostsContent -Force

# Renew Wins Client Registrations
Write-Host "Renewing Wins Client registrations..."
ipconfig /registerdns

# Make Network Computers Visible in File Explorer
Write-Host "Making network computers visible in File Explorer..."
Set-Service -Name "FDResPub" -StartupType Automatic
Start-Service -Name "FDResPub"

Write-Host "All network-related repairs are complete!"

使用方式:

  1. 将上述脚本内容复制并保存为 .ps1 文件(例如 repair_network.ps1)。
  2. 以管理员权限运行 PowerShell。
  3. 执行该脚本,等待操作完成。

这个脚本将按顺序执行所有修复任务,帮助您恢复和修复网络、更新、SSL、代理等相关设置。如果您在运行时遇到任何问题,可以根据输出消息进行诊断。

posted @ 2024-12-12 12:29  suv789  阅读(23)  评论(0编辑  收藏  举报