ping www.baidu.com,從命令執行開始,到結果返回總共需要經過以下幾步:
1、DNS解析:www.baidu.com解析成具體的IP地址,因為數據包在網絡上傳輸時只認IP地址。
2、查找路由表:IP地址以后,接下來就是要查找路由,路由的作用是決定數據包的下一跳地址。
3、查找ARP表:下一跳IP地址以后,是不是說數據包就能發出去了呢。 也不能,因為數據包最終在傳輸的過程
中,并不認IP地址,而只認mac地址。(注意這里的ARP請求只有在ARP表中查找不到的情況下才會發送,并且查
詢完以后會進行緩存。在有效其內不再重新發送ARP請求,以提高效率。)
4、數據包發送:有了MAC以后,數據包便從網卡發送出去,先到達交換機,然后再通過交換機轉發給網關。
5、路由轉發(重復以上過程)
訪問百度說明 在同一個頁面中,請求比較多的話,可以打開HTTP KeepAlive, 復用連接,避免3次握手帶來的開銷。HTTP2.0 進一步優化,通過多路復用技術,允許同時通過單一的 HTTP/2 連接發起多重的請求-響應消息。也就是可以在在一次傳輸中發送多個css,js,圖片等資源,可以重復利用,非每次請求都3次4揮。
注意:善用自帶說明文檔及參數
命令+/? 幫助文檔
windows查看配置:systeminfo
ipconfig和netstat命令后面不接IP地址、主機名,其余3個命令ping,tracert,arp后面都要接主機地址。
網絡基本功系列:細說網絡那些事兒
1、ping
用來檢測一幀數據從當前主機傳送到目的主機所需要的時間。來確定兩臺計算機之間的網絡是否連通。預測故障和確定故障源是非常有效。ping命令主要基于ICMP
ping回答了兩個基本的問題:是否有連接?連接的質量如何?
常用參數:
-t 使當前主機不斷地向目的主機發送數據,直到使用Ctrl-C中斷;
-n count 指定要做多少次ping,其中count為正整數值;
ping www.baidu.com -4 count
2、ipconfig(ifconfig)
使用不帶參數的ipconfig命令可以得到以下信息:IP地址、子網掩碼、默認網關。而使用ipconfig /all,則可以得到更多的信息:主機名、DNS服務器、節點類型、網絡適配 器的物理地址、主機的IP地址、子網掩碼以及默認網關等。
ipconfig/all 查看本地網絡配置是否正確
MAC地址也叫物理地址、硬件地址或鏈路地址,由網絡設備制造商生產時寫在硬件內部。MAC地址的長度為48位(6 個字節),通常表示為12個16進制數,每2個16進制數之間用冒號隔開,如"08:00:20:0A:8C:6D"就是一個MAC地 址,其中前6位16進制數08:00:20代表網絡硬件制造商的編號,它由IEEE(電氣與電子工程師協會)分配,而后3 位16進制數0A:8C:6D代表該制造商所制造的某個網絡產品(如網卡)的系列號。 只要你不去更改自己的MAC地址,那么你的MAC地址在世界是惟一的(可能不唯一)。
3、tracert
tracert 是一個簡單的網絡診斷工具,可以列出分組經過的路由節點(通過tracert命令,就能知道本機與目標主機之間經過多臺主機,即經過多少路由。),以及它在IP 網絡中每一跳的延遲。(這里的延遲是指:分組從信息源發送到目的地所需的時間,延遲也分為許多的種類——傳播延遲、傳輸延遲、處理延遲、排隊延遲等,是大多數網站性能的瓶頸之一)
判定數據包到達目的主機所經過的路徑、顯示數據包經過的中繼節點 清單和到達時間。
許多中間組件(路由器或網橋)的大型網絡中解決問題時,TRACERT 非常有用。
tracert -? #幫助命令 tracert IP 地址 [-d] tracert www.baidu.com
4、netstat(看端口占用)
了解網絡的整體使用情況。它可以顯示當前正在活動的網絡連接的詳細信息,如采用的協議類型(看tcp,udp)、當前主機與遠端相連主機(一個或多個)的IP地址以及 它們之間的連接狀態等。
netstat監控TCP/IP網絡的非常有用的工具,它可以顯示路由表、實際的網絡連接以及每一個網絡接口設備的狀態信息。
狀態列表
LISTEN :在監聽狀態中。
ESTABLISHED :已建立聯機的聯機情況。
TIME_WAIT :該聯機在目前已經是等待的狀態。
小于1024 的端口通常運行一些網絡服務,大于1024 的端口用來與遠程機器建立連接。
對本機的開放端口和連接信息一覽無余。
netstat -an #常用
netstat -a # 列出所有端口 netstat -n #顯示所有已建立的有效連接。 netstat -at # 列出所有TCP端口 netstat -au # 列出所有UDP端口 重點提一下"-a"和"-n"選項。"-a"選項意在顯示所有連接,當不附加"-n"選項時,它顯示的是本地計算機的 netbIOS名字+端口號。而加了"-n"選項后,它顯示的是本地IP地址+端口號。
5、arp(地址解析協議)
根據IP地址獲取物理地址的一個TCP/IP協議。主機發送信息時將包含目標IP地址的ARP請求廣播到網絡上的所有主機,并接收返回(響應)消息,以此確定目標的物理地址;收到返回消息后將該IP地址和物理地址存入本機ARP緩存中并保留一定時間,下次請求時直接查詢ARP緩存以節約資源。用來顯示及修改特定IP地址的網卡地址
arp /? #幫助菜單 arp -a #查看當前電腦上的ARP映射表。可以看到當前的ARP的映射關系是動態的還是靜態的。 arp -d #清除信息
arp -a 查看所有ip及物理地址
arp -a 顯示的是你電腦的本地arp表,就是只要你的電腦通過tcp/ip協議訪問過的同一局域網的所有機器都會顯示在里面。
防止ARP攻擊的方法:使用arp -s命令綁定IP地址和MAC地址之后再用ARP -a就會顯示static了。
防止別人用P2P阻斷你方法很簡單在組策略里面用IP安全策略阻止所有來自對方電腦的數據包,這樣你們之間沒辦法通信他就不能控制你的
流量了。
arp -s IP MAC
6、nslookup(感覺沒有用?)
可以指定查詢的類型,可以查到DNS記錄的生存時間還可以指定使用哪個DNS服務器進行解釋。在已安裝TCP/IP協議的電腦上面均可以使用這個命令。主要用來診斷域名系統 (DNS) 基礎結構的信息。Nslookup(name server lookup)( 域名查詢):是一個用于查詢 Internet域名信息或診斷DNS 服務器問題的工具.
nslookup www.baidu.com
7、route(查看Windows路由表)
到目的地有多重方法,路由表就是看不同路的
route add命令詳解
路由表分為五列。第一列是網絡目的地址。列出了路由器連接的所有的網段。網絡掩碼列提供這個網段本身的子網掩碼,而不是連接到這個網段的網卡的子網掩碼。這基本上能夠讓路由器確定目的網絡的地址類。 第三列是網關。一旦路由器確定它要把這個數據包轉發到哪一個目的網絡,路由器就要查看網關列表。網關表告訴路由器這個數據包應該轉發到哪一個IP地址才能達到目的網絡。 接口列告訴路由器哪一個網卡連接到了合適的目的網絡。從技術上說,接口列僅告訴路由器分配給網卡的IP地址。那個網卡把路由器連接到目的網絡。然而,路由器很聰明,知道這個地址綁定到哪一個物理網卡。 最后一列是測量。測量本身是一種科學。但是,我將設法簡單向你解釋一下它們做什么。我聽說過的一個最佳的解釋測量的方法是用機場的詞匯對此進行解釋。設想一下,我需要從北卡羅來納州的加洛特市飛往佛羅里達州的邁阿密。由于加洛特機場非常大,我要去邁阿密海灘可以有很多選擇。我可以乘坐西北航空公司的班機。那個班機能把我帶到密執安州的底特律,然后從底特律飛往邁阿密。我還可以乘坐大陸航空公司的班機飛往休斯頓,然后飛往邁阿密。另一個選擇是乘坐美國航空公司的飛機直接飛往邁阿密。我應該選擇哪一條線路呢? 看默認路由,也就是 0.0.0.0/0 這條路由,總共有兩個接口,分別是 10.1.88.95 和 192.168.10.45,網關分別是 10.1.1.254 和 192.168.10.1。那么會走哪一條呢?看后面的躍點數,最小的那個,就是優先的。
網卡優先級設置
windows下可以設置網絡服務訪問順序,在網絡連接-》更改適配器-》菜單欄高級-》高級設置-》適配器和綁定
9、net view
net view命令,來查看局域網中的計算機名稱;(非用戶名),可惜,只能看PC
想要某臺計算機名稱的IP地址,可以直接輸入命令“ping -4 計算機名”,ping命令將顯示IP地址和包時間
ping -4 YJ-PC #ping -4 用戶名
這個方法非常實用,需要共享的時候不知道IP就一個命令搞定了。
問:在win7系統中,想要查看本機所有ICMP連接情況,但是忘記了那個DOS命令是什么?求解答?
答:DOS命令是:netstat -s -p icmp。小編認為,總是忘記怎么查看ICMP連接的命令,應該先了解一下ICMP 是什么意思,這樣容易記住這個命令。
ICMP是什么
ICMP是(Internet Control Message Protocol)Internet控制報文協議。對于網絡安全具有及其重要的意義,其本身的特點決定了它非常容易被用于攻擊網絡上的路由器和主機。
ICMP是TCP/IP協議族的一個子協議,屬于網絡層協議。
ICMP的功能:
1、偵測遠端主機是否存在
2、建立及維護路由資料
3、重導資料傳送路徑(ICMP重定向)
4、資料流量控制。ICMP在溝通之中,主要是透過不同的類別(Type)與代碼(Code) 讓機器來識別不同的連線狀況。
加速器:
寬帶帶寬理解為高速路寬度,不會改變距離,高速各種車,網游加速器專用車道(公交專用類似),路由器無線改有線
國內來說,延遲與距離的關系不大,尤其是光纖大規模普及后,光信號要比電信號快的多。其實延遲高低主要與網絡設備的負
載有關。我們的數據要跨越很多個網絡節點,每個數據包都要經過一次次轉發,才最終到達游戲服務器。由于國內運營商都在
超賣帶寬,網絡設備壓力很大,當上網高峰時,網絡設備不堪重負,延遲就會上升,丟包的幾率也會上升。
Linus命令:
telnet命令用于登錄遠程主機,對遠程主機進行管理。telnet因為采用明文傳送報文,安全性不好
netstat -a //列出所有端口 netstat -at //列出所有tcp端口 netstat -au //列出所有udp端口