netsh 与 winsock 一个是window的脚本工具,另一个则是window是网络编程中要用到的网络接口,而非要说跟我小小的前端有什么影响,那还真有...,当然这个影响是很不好的,比如nodeJS报“socket 系统调用失败”的错误,再比如sublime安装install package controll 失败,安装emmet是无法连接到PyV8,再比如一些联网的应用软件无法连接网络等等。


首先关于 sublime 更多的问题故障处理,我推荐这篇文章:http://blog.csdn.net/freshlover/article/details/44261229/。

如果你也遇到了类似的问题,但是通过以上链接提供的教程无法解决所遇到的奇葩问题,在这里我强烈建议你看看我总结的这篇教程,当然在我的这篇文章中理论知识占了 99%,实际有用的就只有 1%,嘎嘎,在看我来,能够知道背后的大致原理还是更重要的,而且还挺有意思!

最后,如果你真的没有耐心看下去的话,想直接尝试是否能解决你的问题,请直接在 “命令行工具”(管理员模式) 下输入以下命令,进行验证是否能够解决:

netsh winsock reset

然后重新启动计算机即可。


什么是 netsh ?

netsh 是微软提供的一个功能强大的网络配置脚本(network shell)工具。其本质是一个命令行脚本工具,它允许用户从本地或远程显示或修改当前正在运行的计算机的网络配置,并且还可以将当前计算机网络配置进行备份与恢复,更实用的是我们可以将用一个文件将netsh的相关命令保存下来,并命名为.cmd格式的文件,这样即可直接执行。

netsh 的作用?##

很多时候,我们可能需要在不同的网络中工作,一遍又一遍地重复修改IP地址是一件比较麻烦的事。另外,系统崩溃了,重新配置网卡等相关参数也比较烦人(尤其是无线网卡)。事实上,巧妙地利用Windows 2000/XP/2003系统内置的netsh命令,不但可以快速切换IP地址,还可以在静态和动态IP地址设置中随时切换,也可实现随时备份和恢复网络设置等等。

关于 netsh 的实例##

实例一:随时随地切换IP地址

打开“记事本”,新建一个文件,然后在其中输入如下代码:

netsh interface ip set address “本地连接” static 192.168.0.10 255.255.255.0 192.168.0.1 1

然后将文件命名为home.cmd,将它保存在桌面上。

同样,建立一个office.cmd的文件,在其中输入:

netsh interface ip set address “本地连接” static 192.168.1.11 255.255.248.0 192.168.0.1 1

以后在家只要双击home.cmd即可快速将IP地址切换为192.168.0.10,子网掩码:255.255.255.0,网关:192.168.0.1,而到公司后双击office.cmd即可将IP切换至192.168.1.11,子网掩码:255.255.248.0,网关:192.168.1.1。

注意:

1. 上述命令中的“本地连接”为网卡连接的名称,可以在“控制面板”中双击“网络连接”图标查看到相应网卡的名称。如果你有多块网卡,只要修改上面的“本地连接”的名字及IP、子网掩码和网关即可。
2. 以上命令最后1为设置的跃点数,该值较为专业,用户可以设置为1,不必理会。

实例二:固定/动态IP随时换

先在桌面上建立一个static.cmd文件,然后在其中输入相应代码:

netsh interface ip set address “本地连接” static 192.168.0.12 255.255.255.0 192.168.0.1 1

同时建立一个dhcp.cmd文件,在其中输入如下代码:

netsh interface ip set address “本地连接” dhcp
ipconfig /release
ipconfig /renew

以后双击桌面上的static.cmd,会将“本地连接”的IP地址修改为192.168.0.12,子网掩码:255.255.255.0,网关:192.168.0.1。而双击dhcp.cmd文件,会让“本地连接”马上设置为动态IP方式,且会立即从DHCP服务器获得最新IP地址。

实例三:备份/恢复网络设置

netsh dump >d:/netbck.txt

可以将当前的网络状态备份在一个文件中。

netsh exec d:/netbck.txt

可以利用备份快速恢复网络设置

什么是winsock ?

winsock 就是 Windows Sockets。它是Windows下得到广泛应用的、开放的、支持多种协议的网络编程接口。

winsock 作用在应用层上,可以理解成window系统中只要需要联网的设备或应用软件都需要通过调用该接口来实现,因此一旦winsock发生了问题,必然会导致使用某些协议的应用软件无法正常联网,最典型的例子就是QQ可以登录但是浏览器不能打开网页,或者是浏览器可以打开网页以及百度首页但是 cmd的ping命令无法ping通。

如何解决 winsock 异常带来的网络连接问题?##

很简单,在cmd(管理员)下执行以下命令即可:

netsh winsock reset

然后重新启动计算机即可。

那么这条命令背后原因是什么呢?

netsh winsock reset 是把它恢复到默认状态。作用是重置 Winsock 目录。如果一台机器上的Winsock协议配置有问题的话将会导致网络连接等问题,
可通过使用netsh winsock reset命令来重置Winsock目录尝试恢复。这个命令可以重新初始化网络环境,以解决由于软件冲突、病毒原因造成的参数错误问题。
例如电脑突然出现成功连接网络但不能上网、网络受限,打开网页出现显示问题,无法自动获取IP地址或指定IP地址仍无数据包传输,
使用蓝牙适配器传输文件时提示“使用了与请求的协议不兼容的地址”等等网络协议应用相关故障。

如果把 winsock 比作一棵小树的话,那么 netsh 就可以理解成一把园艺剪刀用于修剪这个树。

可以间接修复的问题有哪些?

使用 netsh winsock reset (可能)可以修复的问题有:

  • nodeJS报 sockt 系统调用失败的问题
  • sublime 无法安装 install package control
  • sublime 启动 install package 报错。
  • sublime 安装插件 emmet 无法连接验证 PyV8等。
  • 在有网络的情况下 ping 命令无法ping通。
  • 有些桌面程序可以使用网络服务,但是浏览器无法打开网页

更多相关的问题我会继续跟踪收录

netsh & winsock & 对前端的影响的更多相关文章

  1. WIN7只能上QQ打不开网页,使用CMD输入netsh winsock reset

    此类问题可以用腾讯电脑管家电脑诊所一键修复,请点击上方的[立即修复]即可. 附:手动修复步骤(来源:腾讯电脑管家电脑诊所,自动修复请点击上方的[立即修复])方案一:手动设置DNS(说明:如果您使用DN ...

  2. netsh winsock reset 11003

    netsh winsock reset 11003 http://files.cnblogs.com/xsmhero/winsock.zip

  3. netsh winsock reset

    最近要在虚拟机上安装 git ,然后托管一个项目,搞得我是焦头烂额.今天下午我卸载了vmware workstation ,但是奇怪的事就发生了,我的google chrome 浏览器没法浏览网页了. ...

  4. NETSH WINSOCK RESET这条命令的含义和作用?

    简单来说netsh winsock reset命令含义是重置 Winsock 文件夹.假设一台机器上的Winsock协议配置有问题的话将会导致网络连接等问题,就须要用netsh winsock res ...

  5. NETSH WINSOCK RESET这个命令的意义和效果?

    简要地netsh winsock reset命令含义复位 Winsock 文件夹.一机多用的假设Winsock协议配置问题,那么问题会导致网络连接,我们需要使用netsh winsock reset命 ...

  6. ASP.NET程序运行出现WebDev.WebServer40.exe已停止工作解决方法(netsh winsock reset)

    问题描述:在开发系统时候运行程序突然报出"WebDev.WebServer40.exe已停止工作"的错误,程序调试运行,发现程序在打开数据库时候报错,也就是Connection.O ...

  7. 用NETSH WINSOCK RESET命令修复网络

    之前遇到一种情况,QQ可以正常使用,浏览器无法访问网页.在CMD下ping 主机也提示超时. 最后通过NETSH WINSOCK RESET命令重置WINSOCK目录,成功修复了网络连接. Netsh ...

  8. netsh winsock reset命令

    公司一台电脑无法浏览网页,其他基本正常,鼓捣了一个多小时,依然无法解决.. 一开始按照正常思路,感觉是dns的问题,查看了下DNS,真是自定义的,于是改成自动获取,无效 重启了网卡,无效 重启电脑,无 ...

  9. netsh winsock reset命令,作用是重置 Winsock 目录

    Win xp重置 编辑 要为 Windows XP 重置 Winsock,请按照下列步骤操作: 1.单击“开始”,运行中输入cmd. 2.然后输入命令 netsh winsock reset. 3.重 ...

随机推荐

  1. GPU加速有坑?

    大多数人都知道有动画的地方可以使用GPU来加速页面渲染. 例如,做优化的时候,将使用left和top属性的动画修改成使用transform属性的CSS动画.或者听到别人教你使用transform:tr ...

  2. c#控制台实现post网站登录

    如题,首先我写了一个web页面来实现post登陆,只做演示,代码如下 public void ProcessRequest(HttpContext context) { context.Respons ...

  3. ## Python中的Package和Jupyter中import包问题

    前言 关于python包的一些知识 Java中的package概念 我们知道在java中的import package概念, java中的包就是一个目录,里面包含着子目录,子目录套着子目录,当需要引入 ...

  4. JavaEE开发之SpringMVC中的路由配置及参数传递详解

    在之前我们使用Swift的Perfect框架来开发服务端程序时,聊到了Perfect中的路由配置.而在SpringMVC中的路由配置与其也是大同小异的.说到路由,其实就是将URL映射到Java的具体类 ...

  5. 解决Json传输中文乱码问题

    1.如果是通过URL传递:----需要编码两次 var searchText = this.searchText(); searchText = encodeURI(searchText); sear ...

  6. golang kafka

    golang kafka – hello world https://github.com/Shopify/sarama https://shopify.github.io/sarama/   con ...

  7. Linux 系统管理04--账号管理

    Linux系统管理04--账号管理 一.用户账号管理 1.用户账号概述 (1)用户账号的常见分类: 1>超级用户:root uid=0 gid=0 权限最大. 2>普通用户:uid> ...

  8. uiautomator+cucumber实现自动化测试

    前提 由于公司业务要求,所以自动化测试要达到以下几点: 跨应用的测试 测试用例可读性强 测试报告可读性强 对失败的用例有截图保存并在报告中体现 基于以上几点,在对自动化测试框架选型的时候就选择了uia ...

  9. OpenCV 玩九宫格数独(二):knn 数字识别

    欢迎大家关注腾讯云技术社区-博客园官方主页,我们将持续在博客园为大家推荐技术精品文章哦~ 作者:刘潇龙 前言 首先需要说明,这里所说的数字识别不是手写数字识别! 但凡对机器学习有所了解的人,相信看到数 ...

  10. Arraylist动态扩容详解

    ArrayList 概述 ArrayList是基于数组实现的,是一个动态数组,其容量能自动增长. ArrayList不是线程安全的,只能用在单线程环境下. 实现了Serializable接口,因此它支 ...