ping命令是常用的網(wǎng)絡命令,它通常用來測試與目標主機的連通性。
10年專注成都網(wǎng)站制作,企業(yè)網(wǎng)站設計,個人網(wǎng)站制作服務,為大家分享網(wǎng)站制作知識、方案,網(wǎng)站設計流程、步驟,成功服務上千家企業(yè)。為您提供網(wǎng)站建設,網(wǎng)站制作,網(wǎng)頁設計及定制高端網(wǎng)站建設服務,專注于企業(yè)網(wǎng)站設計,高端網(wǎng)頁制作,對活動板房等多個領域,擁有豐富的網(wǎng)站設計經(jīng)驗。ping命令: -c #: ping包的個數(shù) -s #: ping包的大小 -w #: 等待時長 -W #:等待一次ping請求的時長 -f: 極限檢測。大量且快速地送網(wǎng)絡封包給一臺機器,看它的回應 -i 秒數(shù):設定間隔幾秒送一個網(wǎng)絡封包給一臺機器,預設值是一秒送一次 -t 存活數(shù)值:設置存活數(shù)值TTL的大小
實例:
[root@young ~]# ping -f -c 65535 -s 20000 192.168.1.6 #泛洪*** PING 192.168.1.6 (192.168.1.6) 20000(20028) bytes of data. [root@young ~]# ping -w 5 192.168.1.1 #指定等待時長5s PING 192.168.1.1 (192.168.1.1) 56(84) bytes of data. 64 bytes from 192.168.1.1: icmp_seq=1 ttl=64 time=1.10 ms 64 bytes from 192.168.1.1: icmp_seq=2 ttl=64 time=1.19 ms 64 bytes from 192.168.1.1: icmp_seq=3 ttl=64 time=1.30 ms 64 bytes from 192.168.1.1: icmp_seq=4 ttl=64 time=1.23 ms 64 bytes from 192.168.1.1: icmp_seq=5 ttl=64 time=0.944 ms --- 192.168.1.1 ping statistics --- 5 packets transmitted, 5 received, 0% packet loss, time 5000ms rtt min/avg/max/mdev = 0.944/1.156/1.307/0.124 ms [root@young ~]# ping -c 3 192.168.1.1 #指定次數(shù)為3 PING 192.168.1.1 (192.168.1.1) 56(84) bytes of data. 64 bytes from 192.168.1.1: icmp_seq=1 ttl=64 time=1.14 ms 64 bytes from 192.168.1.1: icmp_seq=2 ttl=64 time=0.858 ms 64 bytes from 192.168.1.1: icmp_seq=3 ttl=64 time=1.12 ms --- 192.168.1.1 ping statistics --- 3 packets transmitted, 3 received, 0% packet loss, time 2006ms rtt min/avg/max/mdev = 0.858/1.041/1.146/0.135 ms
通過traceroute我們可以知道信息從你的計算機到互聯(lián)網(wǎng)另一端的主機是走的什么路徑。當然每次數(shù)據(jù)包由某一同樣的出發(fā)點(source)到達某一同樣的目的地(destination)走的路徑可能會不一樣,但基本上來說大部分時候所走的路由是相同的。linux系統(tǒng)中,我們稱之為traceroute,在MS Windows中為tracert。 traceroute通過發(fā)送小的數(shù)據(jù)包到目的設備直到其返回,來測量其需要多長時間。一條路徑上的每個設備traceroute要測3次。輸出結果中包括每次測試的時間(ms)和設備的名稱(如有的話)及其IP地址。
說明:tracepath命令和traceroute命令功能類似,但不需要root權限。
常用選項:
-m#:設置檢測數(shù)據(jù)包的大存活數(shù)值TTL的大小。 -n: 直接使用IP地址而非主機名稱。 -p#: 設置UDP傳輸協(xié)議的通信端口 -q#: 設置每跳檢測包的發(fā)送個數(shù),默認三個 -r 忽略普通的Routing Table,直接將數(shù)據(jù)包送到遠端主機上
實例:
[root@bash young]# traceroute -m 5 -q 4 -n www.baidu.com traceroute to www.baidu.com (115.239.211.112), 5 hops max, 60 byte packets 1 192.168.1.1 6.188 ms 5.990 ms 5.868 ms 5.753 ms 2 100.65.0.1 5.638 ms 5.522 ms 6.447 ms 9.321 ms 3 60.235.65.145 9.133 ms 9.311 ms 9.179 ms 11.035 ms 4 60.235.64.81 20.402 ms 20.297 ms 20.226 ms 20.573 ms 5 202.97.40.101 27.015 ms 26.890 ms 202.97.40.149 29.884 ms 202.97.40.141 26.662 ms
Mtr是 Linux中有一個網(wǎng)絡連通性判斷工具,它結合了ping, traceroute,nslookup 的相關特性。
常用參數(shù):
-s:用來指定ping數(shù)據(jù)包的大小 --no-dns:不對IP地址做域名解析 -a:來設置發(fā)送數(shù)據(jù)包的IP地址 這個對一個主機由多個IP地址是有用的 -i:使用這個參數(shù)來設置ICMP返回之間的要求默認是1秒 -4:IPv4 -6:IPv6
實例:
[root@bash young]# mtr --no-dns 8.8.8.8 My traceroute [v0.85] bash (0.0.0.0) Mon Feb 13 22:35:30 2017 Keys: Help Display mode Restart statistics Order of fields quit Packets Pings Host Loss% Snt Last Avg Best Wrst StDev 1. 192.168.1.1 0.0% 18 3.3 1.6 0.9 3.3 0.5 2. 100.65.0.1 0.0% 18 5.1 7.0 3.6 19.5 4.5 3. 60.235.65.141 0.0% 18 6.1 6.4 5.7 8.8 0.8 4. 60.235.64.109 0.0% 18 28.1 22.1 12.5 58.5 13.4 ...
以上報告示例說明:
第一列:顯示的是IP地址和本機域名,這點和traceroute很像
第二列:snt:10 設置每秒發(fā)送數(shù)據(jù)包的數(shù)量,默認值是10 可以通過參數(shù) -c來指定。
第三列:是顯示的每個對應IP的丟包率
第四列:顯示的最近一次的返回時延
第五列:是平均值 這個應該是發(fā)送ping包的平均時延
第六列:是最好或者說時延最短的
第七列:是最差或者說時延最常的
第八列:是標準偏差
netstat命令用于顯示與IP、TCP、UDP和ICMP協(xié)議相關的統(tǒng)計數(shù)據(jù),一般用于檢驗本機各端口的網(wǎng)絡連接情況。netstat是在內核中訪問網(wǎng)絡及相關信息的程序,它能提供TCP連接,TCP和UDP監(jiān)聽,進程內存管理的相關報告。
常用選項:
-r: 顯示路由表 -n: numeric,數(shù)字格式顯示主機地址 -t: tcp協(xié)議相關的連接 -u: udp協(xié)議相關的連接 -l: 顯示處于監(jiān)聽狀態(tài)的連接;表示:被動打開等待客戶端訪問的服務; -p: 顯示連接狀態(tài)中的進程程序名和進程號; -a: 所有的連接 -ta: tcp相關的所有連接 -s: 按各個協(xié)議進行統(tǒng)計 -e: 顯示擴展信息,例如uid等 -c: 每隔一個固定時間,執(zhí)行該netstat命令
實例:
1)顯示列出所有端口 (包括監(jiān)聽和未監(jiān)聽的)
[root@bash young]# netstat -a Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 localhost:discp-client 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:mysql 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:x11 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:ssh 0.0.0.0:* LISTEN tcp 0 0 localhost:ipp 0.0.0.0:* LISTEN tcp 0 0 localhost:smtp 0.0.0.0:* LISTEN tcp 0 96 192.168.1.6:ssh 192.168.1.105:27443 ESTABLISHED tcp 0 0 192.168.1.6:59947 116.211.167.193:http TIME_WAIT ... Active UNIX domain sockets (servers and established) Proto RefCnt Flags Type State I-Node Path unix 2 [ ACC ] STREAM LISTENING 20526 private/local unix 2 [ ACC ] STREAM LISTENING 20529 private/virtual ...
說明:
從整體上看,netstat的輸出結果可以分為兩個部分:
一個是Active Internet connections,稱為有源TCP連接,其中"Recv-Q"和"Send-Q"指%0A的是接收隊列和發(fā)送隊列。這些數(shù)字一般都應該是0。如果不是則表示軟件包正在隊列中堆積。這種情況只能在非常少的情況見到。
另一個是Active UNIX domain sockets,稱為有源Unix域套接口(和網(wǎng)絡套接字一樣,但是只能用于本機通信,性能可以提高一倍)。 Proto顯示連接使用的協(xié)議,RefCnt表示連接到本套接口上的進程號,Types顯示套接口的類型,State顯示套接口當前的狀態(tài),Path表示連接到套接口的其它進程使用的路徑名。
2) 列出所有 tcp 端口 netstat -at
[root@bash young]# netstat -at Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 localhost:discp-client 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:mysql 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:x11 0.0.0.0:* LISTEN ...
3)列出所有 udp 端口 netstat -au
[root@bash young]# netstat -au Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State udp 0 0 localhost:323 0.0.0.0:* udp6 0 0 localhost:323 [::]:*
4)只顯示監(jiān)聽端口 netstat -l
[root@bash young]# netstat -l Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 localhost:discp-client 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:mysql 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:x11 0.0.0.0:* LISTEN
5)只列出所有監(jiān)聽 udp 端口 netstat -lu
[root@bash young]# netstat -lu Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State udp 0 0 localhost:323 0.0.0.0:* udp6 0 0 localhost:323 [::]:*
說明:只顯示監(jiān)聽的tcp端口為 netstat -tl
,只顯示監(jiān)聽的unix端口為 netstat -lx
6)顯示所有端口的統(tǒng)計信息 netstat -s
[root@bash young]# netstat -s Ip: 1409453 total packets received 0 forwarded 0 incoming packets discarded 1262997 incoming packets delivered 1279112 requests sent out ...
7) 顯示 TCP 或 UDP 端口的統(tǒng)計信息 netstat -st 或 -su
# netstat -st # netstat -su
8) 在 netstat 輸出中顯示 PID 和進程名稱 netstat -p
[root@bash young]# netstat -tp Active Internet connections (w/o servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 96 192.168.1.6:ssh 192.168.1.105:27443 ESTABLISHED 45793/sshd: root@pt tcp 0 0 192.168.1.6:60000 116.211.167.193:http TIME_WAIT - ...
9) 在 netstat 輸出中不顯示主機,端口和用戶名 (host, port or user)
#netstat -an
10) 持續(xù)輸出 netstat 信息
#netstat -c
ss是Socket Statistics的縮寫。顧名思義,ss命令可以用來獲取socket統(tǒng)計信息,它可以顯示和netstat類似的內容。但ss的優(yōu)勢在于它能夠顯示更多更詳細的有關TCP和連接狀態(tài)的信息,而且比netstat更快速更高效。
小貼士:為什么ss比netstat快
netstat是遍歷/proc下面每個PID目錄,ss直接讀/proc/net下面的統(tǒng)計信息。所以ss執(zhí)行的時候消耗資源以及消耗的時間都比netstat少很多
常用選項:
-t: tcp協(xié)議相關 -u: udp -p: process -l: listening -n: numeric -a: all -e: 擴展信息 -m: 內存使用信息 -o state {established|fin_wait_1|listening|...}
小貼士:ss基本用法同netstat一致下文實例只列出不同用法
實例:
1)ss列出所有http連接中的連接
[root@bash young]# ss -o state established '( dport = :http or sport = :http )' Netid Recv-Q Send-Q Local Address:Port Peer Address:Port tcp 0 0 192.168.1.6:50036 118.144.78.39:http tcp 0 0 192.168.1.6:60218 116.211.167.193:http timer:(keepalive,9.506ms,0) tcp 0 0 192.168.1.6:60214 116.211.167.193:http
說明:以上包含對外提供的80,以及訪問外部的80
2)列出本地哪個進程連接到x server
# ss -x src /tmp/.X11-unix/*
3)列出處在FIN-WAIT-1狀態(tài)的http、https連接
[root@bash young]# ss -o state fin-wait-1 '( sport = :http or sport = :https )' #注意括號里面空格必須存在否則語法報錯 Netid Recv-Q Send-Q Local Address:Port Peer Address:Port
ss常用的state狀態(tài):
established syn-sent syn-recv fin-wait-1 fin-wait-2 time-wait closed close-wait last-ack listen closing all : All of the above states connected : All the states except for listen and closed synchronized : All the connected states except for syn-sent bucket : Show states, which are maintained as minisockets, i.e. time-wait and syn-recv. big : Opposite to bucket state.
4)ss使用IP地址篩選
[root@bash young]# ss src 192.168.1.6 Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port udp ESTAB 0 0 192.168.1.6:57449 83.168.200.199:ntp udp ESTAB 0 0 192.168.1.6:36484 173.255.215.209:ntp tcp ESTAB 0 96 192.168.1.6:ssh 192.168.1.105:27443
說明:
ss src ADDRESS_PATTERN[:PORT] src:表示來源 ADDRESS_PATTERN:表示地址規(guī)則
5)ss使用端口篩選
ss dport OP PORT OP:是運算符 PORT:表示端口 dport:表示過濾目標端口、相反的有sport OP運算符如下: <= or le : 小于等于 >= or ge : 大于等于 == or eq : 等于 != or ne : 不等于端口 < or lt : 小于這個端口 > or gt : 大于端口
OP實例:
ss sport = :http 也可以是 ss sport = :80 ss dport = :http ss dport \> :1024 #注意字符轉義 ss sport \> :1024 ss sport \< :32000 ss sport eq :22 ss dport != :22 ss state connected sport = :http ss \( sport = 另外有需要云服務器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。
當前標題:常用網(wǎng)絡命令(二)-創(chuàng)新互聯(lián)
轉載注明:http://muchs.cn/article10/ejsgo.html成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供微信小程序、營銷型網(wǎng)站建設、網(wǎng)站收錄、服務器托管、小程序開發(fā)、移動網(wǎng)站建設
聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)