Linux系统之ping命令

    

   ping命令使用介绍及怎样使用Ping命令来测试网络连通性



   ping 命令的原理与工作机制


•ping命令一般用于检测网络通与不通,也叫时延,其值越大,速度越慢PING(PacketInternetGrope),因特网包探索器,用于测试网络连接量的程序。

•ping发送一个ICMP回声请求消息给目的地并报告是否收到所希望的ICMP回声应答。它是用来检查网络是否通畅或者网络连接速度的命令。

•原理:网络上的机器都有唯一确定的IP地址,我们给目标IP地址发送一个数据包,对方就要返回一个同样大小的数据包,根据返回的数据包我们可以确定目标主机的存在,可以初步判断目标主机的操作系统等。


ping的工作流程


•1、在同一网段内

•ping

•主机A--------------------->主机B

•ICMP请求包

•在本机(主机A)查找ARP缓存表查找主机B的IP与其对应的MAC,

•没有找到主机B的IP与其MAC的映射关系,则发送一个arp请求广播,

•主机B接收到arp请求包后,回复一个arp应答包(里面包含本机MAC),

•主机A<----------------------主机B

•ICMP应答包


•2、不在同一网段

•在主机A上运行“ping主机C(不在同一网段)”后,开始跟上面一样,到了怎样得到MAC地址时,IP协议通过计算发现C机与自己不在同一网段内,就直接将交由路由处理,也就是将路由的MAC取过来,至于怎样得到路由的MAC,跟上面一样,先在ARP缓存表找,找不到就广播包。路由得到这个数据帧后,再跟主机C进行联系,如果找不到,就向主机A返回一个超时的信息。


ping命令的使用


•ping命令的一般格式为:

•ping [-dfnqrRv] [-c发送次数] [-i间隔秒数] [-I(大写i)网络界面] [-l(小写L)前置载入] [-p范本样式] [-s数据包大小] [-t存活数值] [主机名或IP地址]

参数说明:

【-ccount】指定要被发送(或接收)的回送信号请求的数目,由Count变量指出。

【-wtimeout】这个选项仅和-c选项一起才能起作用。它使ping命令以最长的超时时间去等待应答(发送最后一个信息包后)。默认超时时间为4000ms(4s)

【-d】使用Socket的SO_DEBUG功能。

【-D】这个选项引起ICMPECHO_REPLY信息包向标准输出的十六进制转储。

【-f】指定flood-ping选项。-f标志“倾倒”或输出信息包,在它们回来时或每秒100次,选择较快一个。每一次发送ECHO_REQUEST,都打印一个句号,而每接收到一个ECHO_REPLY信号,就打印一个退格。这就提供了一种对多少信息包被丢弃的信息的快速显示。仅仅root用户可以使用这个选项。

注:这在网络上将非常困难,必须小心使用。Floodping命令仅仅root用户可以使用。-f标志与-iWait标志不兼容.

【-n】只输出数值。

【-r】忽略路由表,直接将数据包送到远端主机上。通常是查看本机的网络接口是否有问题。

【-R】记录路由过程。-R标志包括ECHO_REQUEST信息包中的RECORD_ROUTE选项,并且显示返回信息包上的路由缓冲。

【-v】详细显示指令的执行过程。

【-iwait】在每个信息包发送之间等待被Wait变量指定的时间(秒数)。缺省值是在每个信息包发送之间等待1秒。这个选项与-f标志不兼容。

【-Ia.b.c.d】指定被a.b.c.d标明的接口将被用于向外的IPv4多点广播。-I标志是大写的i。

【-lPreload】在进入正常行为模式(每秒1个)前尽快发送Preload变量指定数量的信息包。-l标志是小写的L。

【-L】对多点广播ping命令禁用本地回送。

【-pPattern】指定用多达16个“填充”字节去填充你发送的信息包。这有利于诊断网络上依赖数据的问题。例如“-pff”全部用1填充信息包。

【-q】不显示任何传送封包的信息,只显示最后的结果。

【-spacketsize】指定发送的数据字节数,预设值是56,加上8字节的ICMP头,一共是64ICMP数据字节。

【-Shostname/IPaddr】将IP地址用作发出的ping信息包中的源地址。在具有不止一个IP地址的主机上,可以使用-S标志来强制源地址为除了软件包在其上发送的接口的IP地址外的任何地址。如果IP地址不是以下机器接口地址之一,则返回错误并且不进行任何发送。

【-ttll】设置存活数值TTL的大小。

【-ointerface】指出interface将被用于向外的IPv6多点广播。接口以“en0”,“tr0”等的形式指定。

使用举例:

(1)指定要被发送(或接收)的回送信号请求的数目:

#ping -c 5172.17.0.254(请求5次)

(2)信息包被丢弃的信息的快速显示:

#ping -f 172.17.0.254

(3)在每个信息包发送之间等待被Wait变量指定的时间(秒数):

#ping -i 2172.17.0.254(间隔2s)


ping测试


•1、ping本机IP

•#ping172.17.0.11/127.0.0.1

•(测试:#ifdowneth0之后再ping试试)

•如果ping不通的话则表明网卡安装或配置有问题。将网线断开再次执行此命令,如果显示正常,则说明本机使用的IP地址可能与另一台正在使用的机器IP地址重复了。如果仍然不正常,则表明本机网卡安装或配置有问题,需继续检查相关网络配置。

•Ubuntu下配置文件位置:

•[IP]:/etc/network/interfaces

•[DNS]:/etc/resolv.conf

•2、ping网关IP

•#ping172.17.0.254

•能正常ping通,则表明局域网中的网关路由器正在正常运行。反之,则说明网关有问题。

•3、ping远程IP

•#pingwww.baidu.com

•这一命令可以检测本机能否正常访问Internet。


怎样使用Ping这命令来测试网络连通呢?


•连通问题是由许多原因引起的,如本地配置错误、远程主机协议失效等,当然还包括设备等造成的故障。首先我们讲一下使用Ping命令的步骤。

•使用Ping检查连通性有六个步骤:

•使用 ifconfig 观察本地网络设置是否正确

•Ping 127.0.0.1:为了检查本地的TCP/IP协议有没有设置好

•Ping本机IP地址:这样是为了检查本机的IP地址是否设置有误

•Ping 本网网关或本网IP地址:这是为了检查硬件设备是否有问题,也可检查本机与本地网络连接是否正常;(在非局域网中这一步骤可以忽略)

•Ping本地DNS地址:这样做是为了检查DNS是否能够将IP正确解析

•Ping远程IP地址: 这主要是检查本网或本机与外部的连接是否正常


首先你得知道几个命令:

ifconfig  查看网卡信息的命令(网卡以eth0~ethN命名,看你网卡用的是哪个)。另外,它只在root用户下可能,一般普通用户不能用。
route -n  查看路由的命令。
cat /etc/resolv.conf    查看DNS,配置DNS可在这个文件配置
命令行里有三种修改IP方法,其中一种是临时的,重启后就没有了,在此不提了。只说两种永久生效的:


1,在命令行里,通过命令调出图形界面配置,比较直观,容易配置:
命令
setup
弹出图形界面,选择network configuration ----> 回车----->两个选项,第一个是网卡,第二个是DNS,在此不多讲了。写太多了,最主要是很直观。
最后配置完了后,点TAB键或者上下左右键 选:OK---->save--->save&quit--->quit

2,命令行编写配置文件来实现,一般你的网卡是eth0.
# vi /etc/sysconfig/network-scripts/ifcfg-eth0     
DEVICE=eth0 #描述网卡对应的设备别名,例如ifcfg-eth0的文件中它为eth0   
BOOTPROTO=static #设置网卡获得ip地址的方式,可能的选项为static,dhcp或bootp,分别对应静态指定的 ip地址,通过dhcp协议获得的ip地址,通过bootp协议获得的ip地址   
BROADCAST=192.168.0.255 #对应的子网广播地址   
HWADDR=00:07:E9:05:E8:B4 #对应的网卡物理地址   
IPADDR=192.168.0.2 #如果设置网卡获得 ip地址的方式为静态指定,此字段就指定了网卡对应的ip地址   
IPV6INIT=no   
IPV6_AUTOCONF=no   
NETMASK=255.255.255.0 #网卡对应的网络掩码   
NETWORK=192.168.0.0 #网卡对应的网络地址   
ONBOOT=yes #系统启动时是否设置此网络接口,设置为yes时,系统启动时激活此设备


修改对应网卡的网关的配置文件
vi /etc/sysconfig/network 
NETWORKING=yes(表示系统是否使用网络,一般设置为yes。如果设为no,则不能使用网络,而且很多系统服务程序将无法启动)
HOSTNAME=localhost(设置本机的主机名,这里设置的主机名要和/etc/hosts中设置的主机名对应)
GATEWAY=192.168.1.1(设置本机连接的网关的IP地址。)


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值