以下大部分参考来自: http://man.linuxde.net
host :常用的分析域名查询工具,可以用来测试域名系统工作是否正常
~$ host www.baidu.com
www.baidu.com is an alias for www.a.shifen.com.
www.a.shifen.com has address 111.13.100.91
~$ host -a www.baidu.com
Trying "www.baidu.com"
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 31492
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 5, ADDITIONAL: 5
;; QUESTION SECTION:
;www.baidu.com. IN ANY
;; ANSWER SECTION:
www.baidu.com. 5 IN CNAME www.a.shifen.com.
;; AUTHORITY SECTION:
baidu.com. 5 IN NS ns4.baidu.com.
baidu.com. 5 IN NS dns.baidu.com.
baidu.com. 5 IN NS ns3.baidu.com.
baidu.com. 5 IN NS ns2.baidu.com.
baidu.com. 5 IN NS ns7.baidu.com.
;; ADDITIONAL SECTION:
dns.baidu.com. 5 IN A 202.108.22.220
ns2.baidu.com. 5 IN A 61.135.165.235
ns3.baidu.com. 5 IN A 220.181.37.10
ns4.baidu.com. 5 IN A 220.181.38.10
ns7.baidu.com. 5 IN A 119.75.219.82
Received 228 bytes from 127.0.1.1#53 in 143 ms
nslookup : 也是用来查询DNS信息的一个命令,主要有两种模式:交互模式和非交互模式
~$ nslookup www.baidu.com
Server: 127.0.1.1
Address: 127.0.1.1#53
Non-authoritative answer:
www.baidu.com canonical name = www.a.shifen.com.
Name: www.a.shifen.com
Address: 111.13.100.91
ping : 用来测试主机之间网络的连通性。执行ping指令会使用ICMP传输协议,发出要求回应的信息,若远端主机的网络功能没有问题,就会回应该信息,因而得知该主机运作正常。
~$ ping www.baidu.com
PING www.a.shifen.com (111.13.100.91) 56(84) bytes of data.
64 bytes from 111.13.100.91: icmp_seq=1 ttl=128 time=47.0 ms
64 bytes from 111.13.100.91: icmp_seq=2 ttl=128 time=46.2 ms
64 bytes from 111.13.100.91: icmp_seq=3 ttl=128 time=46.3 ms
64 bytes from 111.13.100.91: icmp_seq=4 ttl=128 time=47.8 ms
64 bytes from 111.13.100.91: icmp_seq=5 ttl=128 time=46.5 ms
^C
--- www.a.shifen.com ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4007ms
rtt min/avg/max/mdev = 46.245/46.789/47.816/0.642 ms
ifconfig : 被用于配置和显示Linux内核中网络接口的网络参数。用ifconfig命令配置的网卡信息,在网卡重启后机器重启后,配置就不存在。要想将上述的配置信息永远的存的电脑里,那就要修改网卡的配置文件了。
~$ ifconfig
eth0 Link encap:以太网 硬件地址 00:0c:29:67:81:cb
inet 地址:192.168.159.129 广播:192.168.159.255 掩码:255.255.255.0
inet6 地址: fe80::20c:29ff:fe67:81cb/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 跃点数:1
接收数据包:780 错误:0 丢弃:0 过载:0 帧数:0
发送数据包:740 错误:0 丢弃:0 过载:0 载波:0
碰撞:0 发送队列长度:1000
接收字节:498030 (498.0 KB) 发送字节:75741 (75.7 KB)
中断:19 基本地址:0x2000
lo Link encap:本地环回
inet 地址:127.0.0.1 掩码:255.0.0.0
inet6 地址: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 跃点数:1
接收数据包:194 错误:0 丢弃:0 过载:0 帧数:0
发送数据包:194 错误:0 丢弃:0 过载:0 载波:0
碰撞:0 发送队列长度:0
接收字节:26707 (26.7 KB) 发送字节:26707 (26.7 KB)
eth0表示第一块网卡,其中硬件地址表示网卡的物理地址,可以看到目前这个网卡的物理地址(MAC地址)是00:0c:29:67:81:cb 。inet 地址用来表示网卡的IP地址,此网卡的IP地址是192.168.159.129,广播地址:192.168.159.255 ,掩码地址:255.255.255.0。
lo是表示主机的回坏地址,这个一般是用来测试一个网络程序,但又不想让局域网或外网的用户能够查看,只能在此台主机上运行和查看所用的网络接口。比如把 httpd服务器的指定到回坏地址,在浏览器输入127.0.0.1就能看到你所架WEB网站了。但只是您能看得到,局域网的其它主机或用户无从知道。
在window里这个命令对应的是ipconfig,它有五个参数
/? 显示帮助信息
/all 显示现时所有网络连接的设置
/release 释放某一个网络上的IP位置
/renew 更新某一个网络上的IP位置
/flushdns 把DNS解析器的暂存内容全数删除
curl : 是一个利用URL规则在命令行下工作的文件传输工具。它支持文件的上传和下载,所以是综合传输工具,但按传统,习惯称curl为下载工具。作为一款强力工具,curl支持包括HTTP、HTTPS、ftp等众多协议,还支持POST、cookies、认证、从指定偏移处下载部分文件、用户代理字符串、限速、文件大小、进度条等特征。做网页处理流程和数据检索自动化,curl可以祝一臂之力。
// -I 参数用来打印http回应包header(头部)的信息
~$ curl -I www.baidu.com
HTTP/1.1 200 OK
Server: bfe/1.0.8.18
Date: Sat, 01 Oct 2016 08:13:39 GMT
Content-Type: text/html
Content-Length: 277
Last-Modified: Mon, 13 Jun 2016 02:50:05 GMT
Connection: Keep-Alive
ETag: "575e1f5d-115"
Cache-Control: private, no-cache, no-store, proxy-revalidate, no-transform
Pragma: no-cache
Accept-Ranges: bytes
traceroute:用于追踪数据包在网络上的传输时的全部路径,在局域网中的不同网段之间,我们可以通过traceroute 来排查问题所在,是主机的问题还是网关的问题。如果我们通过远程来访问某台服务器遇到问题时,我们用到traceroute 追踪数据包所经过的网关,提交IDC服务商,也有助于解决问题;但目前看来在国内解决这样的问题是比较困难的,就是我们发现问题所在,IDC服务商也不可能帮助我们解决。(……2333)
下面出现*号的原因:可能是防火墙封掉了ICMP的返回信息,所以我们得不到什么相关的数据包返回数据
记录按序列号从1开始,每个纪录就是一跳 ,每跳表示一个网关
~$ traceroute www.baidu.com
traceroute to www.baidu.com (111.13.100.91), 30 hops max, 60 byte packets
1 192.168.159.2 (192.168.159.2) 0.142 ms 0.098 ms 0.091 ms
2 * * *
3 * * *
4 * * *
5 * * *
6 * * *
7 * * *
8 * * *
9 * * *
10 * * *
11 * * *
12 * * *
13 * * *
14 * * *
15 * * *
16 * * *
17 * * *
18 * * *
19 * * *
20 * * *
21 * * *
22 * * *
23 * * *
24 * * *
25 * * *
26 * * *
27 * * *
28 * * *
29 * * *
30 * * *
netstat:用来打印Linux中网络系统的状态信息,可让你得知整个Linux系统的网络情况,特别比如你想知道关于socket或是tcp,udp的一些网络信息就可以使用这个命令:
//#列出所有tcp端口的信息
~$ netstat -at
激活Internet连接 (服务器和已建立连接的)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 ruanruan-virtual:domain *:* LISTEN
tcp 0 0 localhost:ipp *:* LISTEN
tcp 0 0 *:telnet *:* LISTEN
tcp6 0 0 ip6-localhost:ipp [::]:* LISTEN
tcp6 1 0 ip6-localhost:53614 ip6-localhost:ipp CLOSE_WAIT