發(fā)覺(jué)linux下的ping命令花樣還挺多的,下面是幾個(gè)例子
1、ping ,最粗糙的用法,此時(shí)主機(jī)將不停地向目的地址發(fā)送ICMP echo request數(shù)據(jù)包,直至你按下Ctrl+c
發(fā)送給一個(gè)單播地址的包傳遞到由該地址標(biāo)識(shí)的接口上。一、centos 修改ip地址 修改對(duì)應(yīng)網(wǎng)卡的ip地址的配置文件 復(fù)制代碼 代碼如下: # vi /etc/sysconfig/network-scripts/ifcfg-eth0 修改以下內(nèi)容 復(fù)制代碼 代碼如下: device=eth0 #描述網(wǎng)卡對(duì)應(yīng)的設(shè)備別名,例如ifcfg-eth0的文件中它為eth0 bootproto=static #設(shè)置網(wǎng)卡獲得ip地址的方式,可能的選項(xiàng)為static,dhcp或bootp,分別對(duì)應(yīng)靜態(tài)指定的 ip地址,通過(guò)dhcp協(xié)議獲得的ip地址,通過(guò)boot。使用該選項(xiàng)指定的網(wǎng)卡作為多網(wǎng)卡綁定的從網(wǎng)卡,虛擬出的網(wǎng)卡的名字由--device指定。
3、ping -c 3 ,-c 選項(xiàng)可以指定發(fā)送多少個(gè)ICMP包,可以看到主機(jī)接收到了3個(gè)ICMP echo reply包,這是對(duì)我發(fā)的3個(gè)echo request的回應(yīng)
4、ping -t 20 ,-t 選項(xiàng)可以設(shè)置承載ICMP報(bào)文的IP數(shù)據(jù)包的TTL值
從wireshark的抓包,可以看到ttl設(shè)為了20
5、ping -s 10 ,-s 選項(xiàng)可以設(shè)置ICMP數(shù)據(jù)部分的大小,可以看到數(shù)據(jù)部分10個(gè)字節(jié),加上8字節(jié)的ICMP頭,則ICMP包大小為18字節(jié),再加上20字節(jié)的IP頭,IP包大小為38字節(jié)
一個(gè)tcp頭部,在不包含選項(xiàng)數(shù)據(jù)的情況下通常占用20個(gè)字節(jié)(nt | rt:options 理解為選項(xiàng)數(shù)據(jù),需回譯). 第一行包含0到3編號(hào)的字節(jié), 第二行包含編號(hào)4-7的字節(jié).。bisizeimage 由biwidth和biheight以及bibitcount字段共同決定,可以根據(jù)可執(zhí)行文件的大小適當(dāng)?shù)奶顚,但是要保證biwidth*biheight*bibitcount / 8稍大于可執(zhí)行文件的大小,在計(jì)算bisizeimage還要注意位圖文件的數(shù)據(jù)每行按4字節(jié)對(duì)齊,適當(dāng)?shù)倪x擇biwidth和biheight,使計(jì)算出來(lái)的bisizeimage稍大于可執(zhí)行文件的大小,多出來(lái)的部分可以用隨機(jī)數(shù)字填充。流程為:設(shè)置命名空間 >> 超時(shí)設(shè)置 >> 生成guid >> 填充header >> 設(shè)置搜索范圍 >> 發(fā)送報(bào)文 >> 接收并解析報(bào)文 。
從wireshark的抓包可以看到,數(shù)據(jù)部分的內(nèi)容即為beef,并且被用來(lái)反復(fù)填充
以上6個(gè)是比較簡(jiǎn)單的選項(xiàng),當(dāng)然還有其他選項(xiàng),選項(xiàng)基本上可以根據(jù)自己的需求疊加使用。
想要進(jìn)一步了解linux下的ping命令,獲取更詳細(xì)的使用方法,可以man ping,另外ping6命令的使用與此類似,基本上將以上的ping改成ping6就可以了,當(dāng)然這時(shí)候地址也得是IPv6的