【我的Linux,我做主!】dig及网络常见命令详解

目录:
(一)ping命令
(二)traceroute和mt
(三)nslookup和dig
(四)telnet命令


(一)ping命令
(1.1)我们希望查询本地主机到目标地址的主机的网络是否是通畅的,我们可以使用ping命令,其中数据包大小为64bytes,183.232.231.174表示的是目标地址的IP地址,icmp_seq=5表示的是icmp包的顺序,ttl=128表示的是生存的周期,time表示的是响应的时间。
【我的Linux,我做主!】dig及网络常见命令详解
(1.2)if要指定网卡eno16777728来进行ping命令的操作,可以指定大写字母I进行连接请求。
# ping -I eno16777728 www.baidu.com
【我的Linux,我做主!】dig及网络常见命令详解
(1.3)指定包大小,再判断延时更准确。MTU:Maximum Transmission Unit的缩写,意思是网络上传送的最大数据包。MTU的单位是字节,大部分网络设备的MTU都是1500,把本机的MTU设成比网关的MTU小或相同,就可以减少丢包。如果本机的MTU比网关的MTU大,大的数据包就会被拆开来传送,这样会产生很多数据包碎片,增加丢包率。如果检测到网关的MTU值是1500,从1400到1472之间多试几次,就能找到合适的数据包长度了,把数据包长度加上数据包头28字节,就得到MTU的值。例如我们指定s的值为1453的时候发现此时是可以正常的ping通的。
# ping -s 1453 www.baidu.com
【我的Linux,我做主!】dig及网络常见命令详解


(二)traceroute和mtr
(2.1)traceroute和mtr这两个命令都可以用于目标地址的追踪,其中traceroute命令比较老一些。其中traceroute -n表示的是不解析IP地址的域名,使用traceroute -n这样的方式解析的过程会非常的快,因为有些对应的IP地址并没有deposit域名不进行逆向解析,不像常见的正向解析由域名查询IP地址,逆向解析的响应一般比较久。
# traceroute -n www.baidu.com
【我的Linux,我做主!】dig及网络常见命令详解
(2.2)使用traceroute -i命令表示指定网卡接口,进行目标地址的路由追踪。
# traceroute -n -i eno16777728 www.baidu.com
【我的Linux,我做主!】dig及网络常见命令详解
(2.3)mtr命令是进化版的目标地址的追踪命令,其中“-s”设置包大小,“--address”指定从哪个IP发送请求。mtr命令是一个实时显示的宽屏界面,我们可以按键盘“h”查看帮助信息。
# mtr -s 100 --address 192.168.26.101 www.baidu.com
【我的Linux,我做主!】dig及网络常见命令详解
(2.4)mtr命令会进入到一个终端刷新屏的界面,按键盘“n”可以去除系统的逆向解析,这样系统刷新效率会的更高,速度会更快,按键盘“r”表示重置统计信息,mtr的优势在于它的丢包率的统计比traceroute更加精确,例如我们有时候在进行系统管理,判断从当前的链路到我们服务网站的丢包情况就可以使用mtr去进行追踪,看某一跳的路由的丢包率,从而帮助我们排查某个节点到我们目标节点之网络状况,方便我们判断故障节点,并联系到对应的网络运营商解决故障节点,其中“Loss%”表示的是丢包率,“Snt”表示的是发包量,“Last”表示最后一个包的延时,“Avg”表示所有包的平均延时,“Best”表示延时最小的包,“Wrst”表示延时最大的包,“StDev”表示标准偏差。
【我的Linux,我做主!】dig及网络常见命令详解
(2.5)相关参数:
# mtr -h---提供帮助命令
# mtr -v---显示mtr的版本信息
# mtr -r 221.183.41.101---将查询目标地址的结果以报告模式显示
【我的Linux,我做主!】dig及网络常见命令详解
(2.6)相关参数:其中snt设置每秒发送数据包的数量,默认值是10,可以通过参数-c来指定。
# mtr -r -c 15 221.183.41.101
【我的Linux,我做主!】dig及网络常见命令详解
(2.7)相关参数:
# mtr -s---用来指定ping数据包的大小
# mtr -n---表示no-dns不对IP地址做域名解析
# mtr -a---表示设置发送数据包的IP地址,这个对一个主机有多个IP地址是有用的
# mtr -i---使用这个参数来设置ICMP返回之间的要求默认是1秒
# mtr www.baidu.com --report---结果显示,并不动态显示
# mtr -4 IPV4 www.baidu.com---使用IPv4
# mtr -6 IPv6---使用IPv6


(三)nslookup和dig
(3.1)nslookup和dig这两个命令都是用于域名正向解析。首先看nslookup,其中我们查询的www.baidu.com 的IP地址为183.232.231.172和183.232.231.174,其中我当前主机的DNS服务器为192.168.26.2。如果我们希望指定我们主机的DNS域名解析的地址,则可以在主机名后加上网络中相应的DNS服务器地址即可。
# nslookup www.baidu.com ---查询www.baidu.com 主机的域名解析信息
# nslookup www.baidu.com 8.8.8.8---设置当前主机的DNS域名解析的服务器为8.8.8.8
【我的Linux,我做主!】dig及网络常见命令详解
(3.2)如果我们希望查询mx记录,则可以使用-type指明类型指明为mx
# nslookup -type=mx baidu.com---查询mx记录
【我的Linux,我做主!】dig及网络常见命令详解
(3.3)如果需要的查询的域名下面所有的记录,则需指明-type的类型为any
# nslookup -type=any baidu.com
【我的Linux,我做主!】dig及网络常见命令详解
(3.4)我们来了解一下什么是IP反向解析。我们经常使用到的DNS服务器里面有两个区域,即“正向查找区域”和“反向查找区域”,正向查找区域就是我们通常所说的域名解析,反向查找区域即是这里所说的IP反向解析,它的作用就是通过查询IP地址的PTR记录来得到该IP地址指向的域名,当然要成功得到域名就必须要有该IP地址的PTR记录。PTR记录是邮件交换记录的一种,邮件交换记录中有A记录和PTR记录,A记录解析名字到地址,而PTR记录解析地址到名字。地址是指一个客户端的IP地址,名字是指一个客户的完全合格域名。通过对PTR记录的查询,达到反查的目的。反向域名解析系统(Reverse DNS)的功能确保适当的邮件交换记录是生效的。反向域名解析与通常的正向域名解析相反,提供IP地址到域名的对应。IP反向解析主要应用到邮件服务器中来阻拦垃圾邮件,特别是在国外。多数垃圾邮件发送者使用动态分配或者没有注册域名的IP地址来发送垃圾邮件,以逃避追踪,使用了域名反向解析后,就可以大大降低垃圾邮件的数量。比如你用[email protected]这个邮箱给我的邮箱[email protected]发送了一封邮件。qq邮件服务器接到这封信会查看这封信的信头文件,这封信的信头文件会显示这封信是由哪个IP地址发出来的。然后根据这个IP地址进行反向解析,如果反向解析到这个IP地址所对应的域名时name.com那么就接受这封邮件,如果反向解析发现这个IP没有对应到name.com,那么就会拒绝这封邮件。由于在域名系统中,一个IP地址可以对应多个域名,因此从IP出发去找域名,理论上应该遍历整个域名树,但这在Internet上是不现实的。为了完成逆向域名解析,系统提供一个特别的域,该特别的域称为逆向解析域in-addr.arpa。这样欲解析的IP地址就会被表达成一种像域名一样的可显示串形式,后缀以逆向解析域的域名in-addr-arpa结尾。例如一个IP地址:221.183.48.45,则其逆向域名表达式为:45.48.183.221.in-addr.arpa。两种表达方式中IP地址部分顺序恰好相反,因为域名结构是自底向上(从子域到域),而IP地址结构是自顶向下(从网络到主机)的。实质上逆向域名解析是将IP地址表达成一个域名,以地址作为索引的域名空间,这样逆向解析的很大部分可以纳入正向解析中。我们使用nslookup -qt=ptr进行查询,从返回的信息中可以看到反向解析的结果。逆向解析
# nslookup baidu.com---正向解析,由域名解析IP地址
# nslookup -qt=ptr 192.168.26.88---反向解析,由IP地址解析主机名
【我的Linux,我做主!】dig及网络常见命令详解
【我的Linux,我做主!】dig及网络常见命令详解
(3.5)接着我们来了解dig命令,dig翻译的意思为“挖掘”。我们查询baidu.com域名,可以查询到A记录。
# dig baidu.com---查询baidu.com域名的相关信息
【我的Linux,我做主!】dig及网络常见命令详解
(3.6)查询mx记录,我们可以使用“dig -t mx”命令,查询邮件主机名的信息(图2-13)。使用“dig -t any”命令可以查询所有类型主机名的信息(图2-14)。
# dig -t mx baidu.com---查询baidu.com域的所有邮件主机名信息
# dig -t any baidu.com---查询baidu.com域的所有类型主机名的信息
【我的Linux,我做主!】dig及网络常见命令详解
【我的Linux,我做主!】dig及网络常见命令详解
(3.7)我们可以使用“dig +trace”然后添加一个域名,会将整个域名解析的包的过程给我们显示出来,当我们在我们服务器上做了一个域名解析记录的修改完成之后,我们想查看一下修改是否生效了,如果此时我们发现没有生效,但是发现我们在保管的域名服务器的域名确实是已经设置好了,但是我们本地的DNS解析没有生效,此时我们就可以使用dig +trace命令去追踪一下具体在那一跳出现了错误,看看是否是因为缓存或者其他的原因导致我们的域名解析没有生效,可以帮助我们去排查没有生效的原因。
# dig +trace baidu.com---将整个域名解析的包的过程给我们显示出来
【我的Linux,我做主!】dig及网络常见命令详解
(3.8)我们还可以在系统中指定通过哪一台DNS服务器进行域名解析的操作。
# dig @223.5.5.5 baidu.com---指定使用223.5.5.5的服务器进行DNS域名解析
【我的Linux,我做主!】dig及网络常见命令详解


(四)telnet命令
(4.1)有时候我们如果想要测试连接到的目标主机是否能够正常的连接,此时我们可以使用telnet命令,然后我们在键盘上按“Ctrl+]”可以进入到telnet命令的界面,此时表明主机的80端口是可以正常的连接的。最后我们可以使用quit命令退出即可。测试端口是否工作
# yum install telnet -y---安装telnet软件包
# telnet www.baidu.com 80---连接www.baidu.com 主机的80端口
【我的Linux,我做主!】dig及网络常见命令详解

—————— 本文至此结束,感谢阅读 ——————

猜你喜欢

转载自blog.51cto.com/13613726/2461847