Linux网络——查看网络连接情况的命令

Linux网络——查看网络连接情况的命令

摘要:本文主要学习了Linux中用来查看网络连接情况的命令。

hostname命令

hostname命令用于显示和设置系统的主机名称,设置只是临时生效,永久生效需要更改配置文件。

基本语法

修改主机名:

1 hostname 主机名

查看系统信息:

1 hostname [选项]

选项说明

1 -a:显示主机别名。
2 -d:显示DNS域名。
3 -f:显示FQDN名称。
4 -i:显示主机的ip地址。
5 -s:显示短主机名称,在第一个点处截断。
6 -y:显示NIS域名。

使用举例

1 [root@localhost ~]# hostname
2 localhost.localdomain
3 [root@localhost ~]# hostname -a
4 localhost.localdomain localhost4 localhost4.localdomain4 localhost.localdomain localhost6 localhost6.localdomain6
5 [root@localhost ~]#

ping命令

ping命令会向目标主机发送ICMP请求包,常用来测试当前主机与目标主机网络连接状况。

基本语法

1 ping [选项]

选项说明

1 -b:允许ping网关地址。
2 -c 数量:设置发包的个数。
3 -f:压力测试网络,向目标主机大量发送请求包。
4 -i 秒数:发送每个数据包之间等待的间隔(单位秒)。默认设置是等待一秒,极限模式下不等待。只有超级用户可以设置间隔值小于0.2秒。
5 -n:使用IP地址,不进行IP和主机名称的反查。
6 -q:静默输出。除启动和完成时的摘要行外,不显示任何内容。
7 -s 字节数:指定要发送的数据字节数。默认56。
8 -t 值:设置IP生存时间值(TTL)。

使用举例

 1 [root@localhost ~]# ping -c 5 www.baidu.com
 2 PING www.baidu.com (182.61.200.6) 56(84) bytes of data.
 3 64 bytes from 182.61.200.6: icmp_seq=1 ttl=128 time=10.5 ms
 4 64 bytes from 182.61.200.6: icmp_seq=2 ttl=128 time=10.6 ms
 5 64 bytes from 182.61.200.6: icmp_seq=3 ttl=128 time=10.4 ms
 6 64 bytes from 182.61.200.6: icmp_seq=4 ttl=128 time=9.05 ms
 7 64 bytes from 182.61.200.6: icmp_seq=5 ttl=128 time=8.37 ms
 8 
 9 --- www.baidu.com ping statistics ---
10 5 packets transmitted, 5 received, 0% packet loss, time 4010ms
11 rtt min/avg/max/mdev = 8.375/9.828/10.691/0.943 ms
12 [root@localhost ~]#

nslookup命令

nslookup是一个能够查询互联网域名服务器信息的程序。

它有两种工作模式,即“交互模式”和“非交互模式”。在“交互模式”下,用户可以向域名服务器查询各类主机或域名的信息,或者输出域名中的主机列表。而在“非交互模式”下,用户可以针对一个主机或域名获取所需信息。

基本语法

在非交互模式下,可以使用选项查询指定主机或域名的信息,也可以指定DNS服务器查询:

1 nslookup [选项] 域名或IP地址 DNS服务器

进入交互模式后,可以通过设置选项来查询各类主机或域名的信息:

1 nslookup

进入交互模式后退出:

1 exit

选项说明

交互模式下使用 set 选项 设置,非交互模式下使用 -选项 设置,两个模式共用的选项:

 1 [no]vc:是否使用虚电路向服务器发送请求。默认novc。
 2 [no]debug:是否进入调试模式,查询过程中会显示完整的响应包以及其中的交互包。默认nodebug。
 3 [no]d2:是否开启高级调试模式,每个数据包的所有字段均打印。默认nod2。
 4 [no]search:是否将domain设置的域追加到查询字串的尾部来尝试查询。默认search。
 5 [no]recurse:如果没有该信息,则告知DNS名称服务器查询其他服务器。默认norecurse。
 6 timeout=0:设置每次查询的超时时限。默认是0。
 7 retry=3:设置查询重试的次数。默认是3。
 8 port=53:设置端口号。DNS默认的服务端口是53。
 9 querytype=A:用于更改信息查询类型。默认是A。
10 常用的值如下:
11     A:查看主机的IPv4地址。
12     AAAA:查看主机的IPv6地址。
13     ANY:查看关于主机域的所有信息。
14     ISDN:查看域名对应的ISDN号码。
15     CNAME:查看与别名对应的正式名字。
16     HINFO:查看主机的CPU与操作系统类型。
17     MINFO:查看邮箱信息。
18     MX:查看邮件交换信息。
19     NS:查看主机域的域名服务器。
20     PTR:查看与给定IP地址匹配的主机名。
21     RP:查看域负责人记录。
22     SOA:查看域内的SOA地址。
23     TXT:查看域名对应的文本信息。
24     UINFO:查看用户信息。
25 class=IN:更改查询类,不同的类设定了不同的协议族。默认使用IN。
26 srchlist=localdomain:更改默认的DNS域名和搜索列表,最多可以指定六个用正斜杠“/”分隔的名称。
27 domain=域名:用于设置默认的域,对于所有不包含“.”的查询请求,都会自动在尾部追查此域。

非交互模式下使用举例

查询域名的DNS信息:

 1 [root@localhost ~]# nslookup www.baidu.com
 2 Server:        192.168.35.2
 3 Address:    192.168.35.2#53
 4 
 5 Non-authoritative answer:
 6 www.baidu.com    canonical name = www.a.shifen.com.
 7 Name:    www.a.shifen.com
 8 Address: 182.61.200.6
 9 Name:    www.a.shifen.com
10 Address: 182.61.200.7
11 
12 [root@localhost ~]#

查询域名并指定DNS服务器的DNS信息:

 1 [root@localhost ~]# nslookup www.baidu.com 8.8.8.8
 2 Server:        8.8.8.8
 3 Address:    8.8.8.8#53
 4 
 5 Non-authoritative answer:
 6 www.baidu.com    canonical name = www.a.shifen.com.
 7 www.a.shifen.com    canonical name = www.wshifen.com.
 8 Name:    www.wshifen.com
 9 Address: 103.235.46.39
10 
11 [root@localhost ~]#

查询指定域名的DNS信息:

 1 [root@localhost ~]# nslookup -domain=baidu.com image
 2 Server:        192.168.35.2
 3 Address:    192.168.35.2#53
 4 
 5 Non-authoritative answer:
 6 image.baidu.com    canonical name = image.n.shifen.com.
 7 Name:    image.n.shifen.com
 8 Address: 182.61.200.226
 9 Name:    image.n.shifen.com
10 Address: 182.61.62.30
11 
12 [root@localhost ~]#

查询指定域名和信息查询类型的DNS信息:

 1 [root@localhost ~]# nslookup -domain=baidu.com -querytype=txt image
 2 Server:        192.168.35.2
 3 Address:    192.168.35.2#53
 4 
 5 Non-authoritative answer:
 6 image.baidu.com    canonical name = image.n.shifen.com.
 7 
 8 Authoritative answers can be found from:
 9 n.shifen.com
10     origin = ns1.n.shifen.com
11     mail addr = baidu_dns_master.baidu.com
12     serial = 1908010001
13     refresh = 5
14     retry = 5
15     expire = 2592000
16     minimum = 3600
17 
18 [root@localhost ~]#

交互模式下使用举例

进入交互模式:

1 [root@localhost ~]# nslookup
2 > 

退出交互模式:

> exit

[root@localhost ~]# 

查询域名的DNS信息:

 1 > www.baidu.com
 2 Server:        192.168.35.2
 3 Address:    192.168.35.2#53
 4 
 5 Non-authoritative answer:
 6 www.baidu.com    canonical name = www.a.shifen.com.
 7 Name:    www.a.shifen.com
 8 Address: 182.61.200.7
 9 Name:    www.a.shifen.com
10 Address: 182.61.200.6
11 > 

查询指定域名的DNS信息:

 1 > set domain=baidu.com
 2 > image
 3 Server:        192.168.35.2
 4 Address:    192.168.35.2#53
 5 
 6 Non-authoritative answer:
 7 image.baidu.com    canonical name = image.n.shifen.com.
 8 Name:    image.n.shifen.com
 9 Address: 182.61.62.30
10 Name:    image.n.shifen.com
11 Address: 182.61.200.226
12 > 

traceroute命令

traceroute命令可以用来查看数据包在主机到目的主机之间传输时,经过路由器的信息。

基本语法

1 traceroute [选项] 主机名或者IP地址 数据包大小

选项说明

 1 -d:使用Socket层级的排错功能。
 2 -F:设置勿离断位。
 3 -I:使用ICMP回应取代UDP资料信息。
 4 -n:直接使用IP地址而非主机名称。
 5 -r:忽略普通的Routing Table,直接将数据包送到远端主机上。
 6 -v:详细显示指令的执行过程。
 7 -x:开启或关闭数据包的正确性检验。
 8 -f 数值:设置第一个检测数据包的存活数值TTL的大小。
 9 -g 网关:设置来源路由网关,最多可设置8个。
10 -i 网络接口:使用指定的网络接口发送数据包。
11 -m 数值:设置检测数据包的最大存活数值TTL的大小。
12 -p 端口号:设置UDP传输协议的通信端口。
13 -s 地址:设置本地主机送出数据包的IP地址。
14 -w 秒数:设置等待远端主机回报的时间。

使用举例

 1 [root@localhost ~]# traceroute -m 3 www.baidu.com
 2 traceroute to www.baidu.com (182.61.200.7), 3 hops max, 60 byte packets
 3  1  192.168.35.2 (192.168.35.2)  0.203 ms  0.090 ms  0.042 ms
 4  2  * * *
 5  3  * * *
 6 [root@localhost ~]# traceroute -n -m 3 www.baidu.com
 7 traceroute to www.baidu.com (182.61.200.6), 3 hops max, 60 byte packets
 8  1  192.168.35.2  0.193 ms  0.159 ms  0.238 ms
 9  2  * * *
10  3  * * *
11 [root@localhost ~]# traceroute -n -m 3 -q 5 www.baidu.com
12 traceroute to www.baidu.com (182.61.200.6), 3 hops max, 60 byte packets
13  1  192.168.35.2  0.111 ms  0.054 ms  0.078 ms  0.067 ms  0.076 ms
14  2  * * * * *
15  3  * * * * *
16 [root@localhost ~]# 

nc命令

nc既是一个端口扫描工具,也是一款安全工具,还能是一款监测工具,甚至可以做为一个简单的TCP代理。

安装

在CentOS 7的最小化安装中,nc并不会默认被安装。需要用下列命令手工安装:

 1 [root@localhost ~]# yum install -y nc
 2 ...
 3 =================================================================================================================================================
 4  Package                            架构                            版本                                     源                             大小
 5 =================================================================================================================================================
 6 正在安装:
 7  nmap-ncat                          x86_64                          2:6.40-16.el7                            base                          206 k
 8 ...
 9 完毕!
10 [root@localhost ~]# 

可以看到,在系统中实际上安装的是nmap-ncat命令。

基本语法

1 nc 选项 主机 端口号

选项说明

1 -v:显示指令执行过程。
2 -z:在扫描通信端口时使用,表示扫描时不发送任何数据。
3 -w 超时秒数:设置等待连线的时间。

使用举例

1 [root@localhost ~]# nc -vzw 2 www.baidu.com 80
2 Ncat: Version 7.50 ( https://nmap.org/ncat )
3 Ncat: Connected to 182.61.200.6:80.
4 Ncat: 0 bytes sent, 0 bytes received in 0.03 seconds.
5 [root@localhost ~]# 

你可能感兴趣的:(Linux网络——查看网络连接情况的命令)