按:本文轉(zhuǎn)載自韋東山視頻明星學(xué)員-- 程序手藝人(微信號(hào):Craftsman_Mike)
這里涉及我們經(jīng)常用的PING,ifconfig 命令解析,還有3期無線網(wǎng)卡用到的iw,實(shí)用性很強(qiáng),感謝作者的創(chuàng)作。
涉及到網(wǎng)絡(luò)相關(guān)的命令很多,一些常用命令如下:
Ping
Ping是linux系統(tǒng)常用的網(wǎng)絡(luò)命令,它通常用來測(cè)試與目標(biāo)主機(jī)的連通性,我們經(jīng)常會(huì)說“ping一下某機(jī)器,看是不是開著。它是通過發(fā)送ICMP ECHO_REQUEST數(shù)據(jù)包到網(wǎng)絡(luò)主機(jī),并顯示響應(yīng)情況,這樣我們就可以根據(jù)它輸出的信息來確定目標(biāo)主機(jī)是否可訪問(但這不是絕對(duì)的)。
有些服務(wù)器為了防止通過ping探測(cè)到,通過防火墻設(shè)置了禁止ping或者在內(nèi)核參數(shù)中禁止ping,這樣就不能通過ping確定該主機(jī)是否還處于開啟狀態(tài)。

ping 通的情況下:
- icmp_seq:ping序列,從1開始;
- ttl:剩余的生存時(shí)間,意思是ping的數(shù)據(jù)包能在網(wǎng)絡(luò)上存在多少時(shí)間。
- time: 響應(yīng)時(shí)間,數(shù)值越小,連通速度越快;
- 虛線下第一行 : 發(fā)出去的包數(shù),返回的包數(shù)/丟包率/耗費(fèi)時(shí)間;
- 虛線下第二行 : 最小/最大/平均響應(yīng)時(shí)間和本機(jī)硬件耗費(fèi)時(shí)間;
ifconfig
ifconfig命令被用于配置和顯示Linux內(nèi)核中網(wǎng)絡(luò)接口的網(wǎng)絡(luò)參數(shù)。用ifconfig命令配置的網(wǎng)卡信息,在網(wǎng)卡重啟后機(jī)器重啟后,配置就不存在。要想將上述的配置信息永遠(yuǎn)的存的電腦里,那就要修改網(wǎng)卡的配置文件了。
顯示網(wǎng)絡(luò)設(shè)備信息(激活狀態(tài)的):

- virbr0 : 表示第一塊虛擬網(wǎng)卡,其中HWaddr表示網(wǎng)卡的物理地址,可以看到這個(gè)網(wǎng)卡的物理地址是 52:54:00:ee:d9:43。
- inet addr : 表示網(wǎng)卡的IP地址,網(wǎng)卡的IP地址是192.168.122.1,廣播地址:192.168.122.255, 掩碼地址:255.255.255.0
- lo : 表示主機(jī)的回環(huán)地址,一般是用來測(cè)試一個(gè)網(wǎng)絡(luò)程序,但又不想讓局域網(wǎng)或外網(wǎng)的用戶能夠查看,只能在此臺(tái)主機(jī)上運(yùn)行和查看所用的網(wǎng)絡(luò)接口
- 第一行 : 連接類型:Ethernet 以太網(wǎng), HWaddr 硬件mac地址。
- 第二行 : 網(wǎng)卡的IP地址、子網(wǎng)、掩碼。
- 第三行 : UP 代表網(wǎng)卡開啟狀態(tài),RUNNING 代表網(wǎng)卡的網(wǎng)線被接上,MULTICAST 支持組播,MTU:1500 最大傳輸單元。
- 第四、五行:接收、發(fā)送數(shù)據(jù)包情況統(tǒng)計(jì)。
- 第七行:接收、發(fā)送數(shù)據(jù)字節(jié)數(shù)統(tǒng)計(jì)信息。
iwconfig
iwconfig是Linux Wireless Extensions(LWE)的用戶層配置工具之一。LWE是Linux下對(duì)無線網(wǎng)絡(luò)配置的工具,包括內(nèi)核的支持、用戶層配置工具和驅(qū)動(dòng)接口的支持三部分。目前很多無線網(wǎng)卡都支持LWE,而且主流的Linux發(fā)布版本,比如Redhat Linux、Ubuntu Linux都已經(jīng)自帶這個(gè)配置工具。

- ESSID:設(shè)置無線網(wǎng)卡的Extension Service Set ID。
- Mode:設(shè)置無線網(wǎng)卡的工作模式,可以是Master Managed Monitor Auto等模式
- Frequency:設(shè)置無線網(wǎng)卡的工作頻率或者頻道,頻率單位為Hz,可以在數(shù)字后面附帶k, M, G來改變數(shù)量級(jí),比如 2.4G。
- Access Point :連接到指定的AP或者無線網(wǎng)絡(luò),后面的參數(shù)可以是AP的MAC地址,也可以是iwlist scan出來的標(biāo)識(shí)符。
- Bit:如果無線網(wǎng)卡支持多速率,則可以通過該命令設(shè)置工作的速率。
- Tx-power:如果無線網(wǎng)卡支持多發(fā)射功率設(shè)定,則使用該參數(shù)設(shè)定發(fā)射,單位為dBm
- Signal level : 信號(hào)強(qiáng)度
iperf
iperf是一款基于TCP/IP和UDP/IP的網(wǎng)絡(luò)性能測(cè)試工具,它可以用來測(cè)量網(wǎng)絡(luò)帶寬和網(wǎng)絡(luò)質(zhì)量,還可以提供網(wǎng)絡(luò)延遲抖動(dòng)、數(shù)據(jù)包丟失率、最大傳輸單元等統(tǒng)計(jì)信息。網(wǎng)絡(luò)管理員可以根據(jù)這些信息了解并判斷網(wǎng)絡(luò)性能問題,從而定位網(wǎng)絡(luò)瓶頸,解決網(wǎng)絡(luò)故障。
要使用iperf,首先要啟用一個(gè)服務(wù)端,這里假定服務(wù)端的IP地址為192.168.12.168,在此服務(wù)器上運(yùn)行“iperf3 -s”即可開啟iperf的服務(wù)器模式。在默認(rèn)情況下,iperf3將在服務(wù)端打開一個(gè)5201監(jiān)聽端口,此時(shí)就可以將另一臺(tái)服務(wù)器作為客戶端執(zhí)行iperf功能測(cè)試了。
方法1 : 測(cè)試TCP吞吐量
為了確定網(wǎng)卡的最大吞吐量,可以在任意客戶端運(yùn)行iperf命令,它將嘗試從客戶端盡可能快地向服務(wù)端發(fā)送數(shù)據(jù)請(qǐng)求,并且會(huì)輸出發(fā)送的數(shù)據(jù)量和網(wǎng)卡平均帶寬值。下圖是一個(gè)最簡(jiǎn)單的帶寬測(cè)試命令。

在輸出的最后,iperf還給出了總的數(shù)據(jù)發(fā)送、接收量,并給出了帶寬速率平均值,通過這些值,基本可以判斷網(wǎng)絡(luò)帶寬是否正常,網(wǎng)絡(luò)傳輸狀態(tài)是否穩(wěn)定。
方法2: 測(cè)試UDP丟包和延遲
iperf也可以用于UDP數(shù)據(jù)包吞吐量、丟包率和延遲指標(biāo),但是由于UDP協(xié)議是一個(gè)非面向連接的輕量級(jí)傳輸協(xié)議,并且不提供可靠的數(shù)據(jù)傳輸服務(wù),因此對(duì)UDP應(yīng)用的關(guān)注點(diǎn)不是傳輸數(shù)據(jù)有多快,而是它的丟包率和延時(shí)指標(biāo)。
通過iperf的“-u”參數(shù)即可測(cè)試UDP應(yīng)用的傳輸性能,下圖測(cè)試的是在客戶端傳輸100MB的UDP數(shù)據(jù)包的輸出結(jié)果.

重點(diǎn)關(guān)注虛線下的一段內(nèi)容,在這段輸出中,“Jitter”列表示抖動(dòng)時(shí)間,或者稱為傳輸延遲,“Lost/Total”列表示丟失的數(shù)據(jù)報(bào)和總的數(shù)據(jù)報(bào)數(shù)量,后面的0.33%是平均丟包的比率,“Datagrams”列顯示的是總共傳輸數(shù)據(jù)報(bào)的數(shù)量
iw
iw 是一種新的基于 nl80211 的用于無線設(shè)備的CLI配置實(shí)用程序。它支持最近已添加到內(nèi)核所有新的驅(qū)動(dòng)程序。采用無線擴(kuò)展接口的舊工具iwconfig已被廢棄,強(qiáng)烈建議切換到 iw 和 nl80211。
常用操作:
- iw list 獲得所有設(shè)備的功能
- iw dev wlan0 scan 掃描
- iw event 監(jiān)聽事件
- iw dev wlan0 link 獲取鏈路狀態(tài)
- iw dev wlan1 station dump 獲取station 的統(tǒng)計(jì)信息
- iw dev wlan1 station get 獲得station對(duì)應(yīng)的peer統(tǒng)計(jì)信息