linux下ping命令使用詳解
linux下ping命令使用詳解
ping發(fā)送一個(gè)ICMP回聲請(qǐng)求消息給目的地并報(bào)告是否收到所希望的ICMP回聲應(yīng)答。它是用來(lái)檢查網(wǎng)絡(luò)是否通暢或者網(wǎng)絡(luò)連接速度的命令。接下來(lái)是小編為大家收集的linux下ping命令使用詳解,歡迎大家閱讀:
linux下ping命令使用詳解
•ping命令一般用于檢測(cè)網(wǎng)絡(luò)通與不通,也叫時(shí)延,其值越大,速度越慢PING(PacketInternetGrope),因特網(wǎng)包探索器,用于測(cè)試網(wǎng)絡(luò)連接量的程序。
•ping發(fā)送一個(gè)ICMP回聲請(qǐng)求消息給目的地并報(bào)告是否收到所希望的ICMP回聲應(yīng)答。它是用來(lái)檢查網(wǎng)絡(luò)是否通暢或者網(wǎng)絡(luò)連接速度的命令。
•原理:網(wǎng)絡(luò)上的機(jī)器都有唯一確定的IP地址,我們給目標(biāo)IP地址發(fā)送一個(gè)數(shù)據(jù)包,對(duì)方就要返回一個(gè)同樣大小的數(shù)據(jù)包,根據(jù)返回的數(shù)據(jù)包我們可以確定目標(biāo)主機(jī)的存在,可以初步判斷目標(biāo)主機(jī)的操作系統(tǒng)等。
二、ping的工作流程
•1、在同一網(wǎng)段內(nèi)
•ping
•主機(jī)A--------------------->主機(jī)B
•ICMP請(qǐng)求包
•在本機(jī)(主機(jī)A)查找ARP緩存表查找主機(jī)B的IP與其對(duì)應(yīng)的MAC,
•沒(méi)有找到主機(jī)B的IP與其MAC的映射關(guān)系,則發(fā)送一個(gè)arp請(qǐng)求廣播,
•主機(jī)B接收到arp請(qǐng)求包后,回復(fù)一個(gè)arp應(yīng)答包(里面包含本機(jī)MAC),
•主機(jī)A<----------------------主機(jī)B
•ICMP應(yīng)答包
•2、不在同一網(wǎng)段
•在主機(jī)A上運(yùn)行“ping主機(jī)C(不在同一網(wǎng)段)”后,開(kāi)始跟上面一樣,到了怎樣得到MAC地址時(shí),IP協(xié)議通過(guò)計(jì)算發(fā)現(xiàn)C機(jī)與自己不在同一網(wǎng)段內(nèi),就直接將交由路由處理,也就是將路由的MAC取過(guò)來(lái),至于怎樣得到路由的MAC,跟上面一樣,先在ARP緩存表找,找不到就廣播包。路由得到這個(gè)數(shù)據(jù)幀后,再跟主機(jī)C進(jìn)行聯(lián)系,如果找不到,就向主機(jī)A返回一個(gè)超時(shí)的信息。
三、ping命令的使用
•ping命令的一般格式為:
•ping[-dfnqrRv][-c發(fā)送次數(shù)][-i間隔秒數(shù)][-I(大寫i)網(wǎng)絡(luò)界面][-l(小寫L)前置載入][-p范本樣式][-s數(shù)據(jù)包大小][-t存活數(shù)值][主機(jī)名或IP地址]
參數(shù)說(shuō)明:
【-ccount】指定要被發(fā)送(或接收)的回送信號(hào)請(qǐng)求的數(shù)目,由Count變量指出。
【-wtimeout】這個(gè)選項(xiàng)僅和-c選項(xiàng)一起才能起作用。它使ping命令以最長(zhǎng)的超時(shí)時(shí)間去等待應(yīng)答(發(fā)送最后一個(gè)信息包后)。默認(rèn)超時(shí)時(shí)間為4000ms(4s)
【-d】使用Socket的SO_DEBUG功能。
【-D】這個(gè)選項(xiàng)引起ICMPECHO_REPLY信息包向標(biāo)準(zhǔn)輸出的十六進(jìn)制轉(zhuǎn)儲(chǔ)。
【-f】指定flood-ping選項(xiàng)。-f標(biāo)志“傾倒”或輸出信息包,在它們回來(lái)時(shí)或每秒100次,選擇較快一個(gè)。每一次發(fā)送ECHO_REQUEST,都打印一個(gè)句號(hào),而每接收到一個(gè)ECHO_REPLY信號(hào),就打印一個(gè)退格。這就提供了一種對(duì)多少信息包被丟棄的信息的快速顯示。僅僅root用戶可以使用這個(gè)選項(xiàng)。
注:這在網(wǎng)絡(luò)上將非常困難,必須小心使用。Floodping命令僅僅root用戶可以使用。-f標(biāo)志與-iWait標(biāo)志不兼容.
【-n】只輸出數(shù)值。
-r】忽略路由表,直接將數(shù)據(jù)包送到遠(yuǎn)端主機(jī)上。通常是查看本機(jī)的網(wǎng)絡(luò)接口是否有問(wèn)題。
【-R】記錄路由過(guò)程。-R標(biāo)志包括ECHO_REQUEST信息包中的RECORD_ROUTE選項(xiàng),并且顯示返回信息包上的路由緩沖。
【-v】詳細(xì)顯示指令的執(zhí)行過(guò)程。
【-iwait】在每個(gè)信息包發(fā)送之間等待被Wait變量指定的時(shí)間(秒數(shù))。缺省值是在每個(gè)信息包發(fā)送之間等待1秒。這個(gè)選項(xiàng)與-f標(biāo)志不兼容。
【-Ia.b.c.d】指定被a.b.c.d標(biāo)明的接口將被用于向外的IPv4多點(diǎn)廣播。-I標(biāo)志是大寫的i。
【-lPreload】在進(jìn)入正常行為模式(每秒1個(gè))前盡快發(fā)送Preload變量指定數(shù)量的信息包。-l標(biāo)志是小寫的L。
【-L】對(duì)多點(diǎn)廣播ping命令禁用本地回送。
【-pPattern】指定用多達(dá)16個(gè)“填充”字節(jié)去填充你發(fā)送的信息包。這有利于診斷網(wǎng)絡(luò)上依賴數(shù)據(jù)的問(wèn)題。例如“-pff”全部用1填充信息包。
【-q】不顯示任何傳送封包的信息,只顯示最后的結(jié)果。
【-spacketsize】指定發(fā)送的數(shù)據(jù)字節(jié)數(shù),預(yù)設(shè)值是56,加上8字節(jié)的ICMP頭,一共是64ICMP數(shù)據(jù)字節(jié)。
【-Shostname/IPaddr】將IP地址用作發(fā)出的ping信息包中的源地址。在具有不止一個(gè)IP地址的主機(jī)上,可以使用-S標(biāo)志來(lái)強(qiáng)制源地址為除了軟件包在其上發(fā)送的接口的IP地址外的任何地址。如果IP地址不是以下機(jī)器接口地址之一,則返回錯(cuò)誤并且不進(jìn)行任何發(fā)送。
【-ttll】設(shè)置存活數(shù)值TTL的大小。
【-ointerface】指出interface將被用于向外的IPv6多點(diǎn)廣播。接口以“en0”,“tr0”等的形式指定。
使用舉例:
(1)指定要被發(fā)送(或接收)的回送信號(hào)請(qǐng)求的數(shù)目:
#ping-c5172.17.0.254(請(qǐng)求5次)
(2)信息包被丟棄的信息的快速顯示:
#ping-f172.17.0.254
(3)在每個(gè)信息包發(fā)送之間等待被Wait變量指定的時(shí)間(秒數(shù)):
#ping-i2172.17.0.254(間隔2s)
四、ping測(cè)試
•1、ping本機(jī)IP
•#ping172.17.0.11/127.0.0.1
•(測(cè)試:#ifdowneth0之后再ping試試)
•如果ping不通的話則表明網(wǎng)卡安裝或配置有問(wèn)題。將網(wǎng)線斷開(kāi)再次執(zhí)行此命令,如果顯示正常,則說(shuō)明本機(jī)使用的IP地址可能與另一臺(tái)正在使用的機(jī)器IP地址重復(fù)了。如果仍然不正常,則表明本機(jī)網(wǎng)卡安裝或配置有問(wèn)題,需繼續(xù)檢查相關(guān)網(wǎng)絡(luò)配置。
•Ubuntu下配置文件位置:
•[IP]:/etc/network/interfaces
•[DNS]:/etc/resolv.conf
•2、ping網(wǎng)關(guān)IP
•#ping172.17.0.254
•能正常ping通,則表明局域網(wǎng)中的網(wǎng)關(guān)路由器正在正常運(yùn)行。反之,則說(shuō)明網(wǎng)關(guān)有問(wèn)題。
•3、ping遠(yuǎn)程IP
•#pingwww.baidu.com
•這一命令可以檢測(cè)本機(jī)能否正常訪問(wèn)Internet。
五、怎樣使用Ping這命令來(lái)測(cè)試網(wǎng)絡(luò)連通呢?
•連通問(wèn)題是由許多原因引起的,如本地配置錯(cuò)誤、遠(yuǎn)程主機(jī)協(xié)議失效等,當(dāng)然還包括設(shè)備等造成的故障。首先我們講一下使用Ping命令的步驟。
•使用Ping檢查連通性有六個(gè)步驟:
•1.使用ifconfig觀察本地網(wǎng)絡(luò)設(shè)置是否正確;
•2.Ping127.0.0.1,127.0.0.1回送地址Ping回送地址是為了檢查本地的TCP/IP協(xié)議有沒(méi)有設(shè)置好;
•3.Ping本機(jī)IP地址,這樣是為了檢查本機(jī)的IP地址是否設(shè)置有誤;
•4.Ping本網(wǎng)網(wǎng)關(guān)或本網(wǎng)IP地址,這樣的是為了檢查硬件設(shè)備是否有問(wèn)題,也可以檢查本機(jī)與本地網(wǎng)絡(luò)連接是否正常;(在非局域網(wǎng)中這一步驟可以忽略)
•5.Ping本地DNS地址,這樣做是為了檢查DNS是否能夠?qū)P正確解析。
•6.Ping遠(yuǎn)程IP地址,這主要是檢查本網(wǎng)或本機(jī)與外部的連接是否正常。
看了“linux下ping命令使用詳解”還想看: