netsh & winsock & 對前端的影響

netsh 與 winsock 一個是window的腳本工具,另外一個則是window是網絡編程中要用到的網絡接口,而非要說跟我小小的前端有什麼影響,那還真有...,固然這個影響是很很差的,好比nodeJS報「socket 系統調用失敗」的錯誤,再好比sublime安裝install package controll 失敗,安裝emmet是沒法鏈接到PyV8,再好比一些聯網的應用軟件沒法鏈接網絡等等。前端


首先關於 sublime 更多的問題故障處理,我推薦這篇文章:http://blog.csdn.net/freshlover/article/details/44261229/
若是你也遇到了相似的問題,可是經過以上連接提供的教程沒法解決所遇到的奇葩問題,在這裏我強烈建議你看看我總結的這篇教程,固然在個人這篇文章中理論知識佔了 99%,實際有用的就只有 1%,嘎嘎,在看我來,可以知道背後的大體原理仍是更重要的,並且還挺有意思!
最後,若是你真的沒有耐心看下去的話,想直接嘗試是否能解決你的問題,請直接在 「命令行工具」(管理員模式) 下輸入如下命令,進行驗證是否可以解決:node

netsh winsock reset

而後從新啓動計算機便可。shell


什麼是 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。socket

注意:工具

1. 上述命令中的「本地鏈接」爲網卡鏈接的名稱,能夠在「控制面板」中雙擊「網絡鏈接」圖標查看到相應網卡的名稱。若是你有多塊網卡,只要修改上面的「本地鏈接」的名字及IP、子網掩碼和網關便可。
2. 以上命令最後1爲設置的躍點數,該值較爲專業,用戶能夠設置爲1,沒必要理會。

實例二:固定/動態IP隨時換

先在桌面上創建一個static.cmd文件,而後在其中輸入相應代碼:.net

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通。
  • 有些桌面程序可使用網絡服務,可是瀏覽器沒法打開網頁

更多相關的問題我會繼續跟蹤收錄

相關文章
相關標籤/搜索