ping
Linux 中 ping 默认会无限次的执行,需要通过指定参数来进行控制:
- -c count:指定 ping 的次数
- -q:忽略过程,直接显示结果
- -s num:指定ping数据包的大小,单位字节
- -i time:指定ping之间的间隔时间,默认1s
- -f:全力发送数据包,一般用来测试丢包率 ```bash [root@iZwz9de6ypp03mqjv3cshhZ]~# ping -c 2 www.baidu.com PING www.a.shifen.com (14.215.177.38) 56(84) bytes of data. 64 bytes from 14.215.177.38 (14.215.177.38): icmp_seq=1 ttl=52 time=5.92 ms 64 bytes from 14.215.177.38 (14.215.177.38): icmp_seq=2 ttl=52 time=5.98 ms
—- www.a.shifen.com ping statistics —- 2 packets transmitted, 2 received, 0% packet loss, time 1001ms rtt min/avg/max/mdev = 5.925/5.954/5.983/0.029 ms
[root@iZwz9de6ypp03mqjv3cshhZ]~# ping -f -c 1000 www.baidu.com PING www.a.shifen.com (14.215.177.39) 56(84) bytes of data.
—- www.a.shifen.com ping statistics —- 1000 packets transmitted, 1000 received, 0% packet loss, time 7902ms rtt min/avg/max/mdev = 7.827/7.873/15.811/0.264 ms, ipg/ewma 7.910/7.854 ms
<a name="tfLtz"></a>
#### DNS相关命令
DNS:Domain Name System,DNS资源是一个五元组:
- {DomainName,TimeToLive,Class,Type,Value}
- {域名,生存期限,类别,类型,值}
- 域名:要查询的那个域名
- 生存期限:此域名在DNS服务器缓存中应保存的时长
- 类别:通常为IN(Internet),此外还有CH(Chaos)和HS(Hesiod)两类,目前几乎被淘汰了
- 类型:指出这条记录的类型,包括8种,即
- SOA:Start of Authority,授权起始
- A:IP地址,表示从域名解析到IP地址
- MX:邮件交换,用来表示当前域名对应的邮件服务器
- NS:Name Server,域名服务器,表示给定域名下所包含的DNS服务器信息
- CNAME:别名
- PTR:指针,用于反向解析
- HINFO:主机描述信息,包括CPU和OS等信息
- TXT:其他一些文本信息
- 值:针对不同类型,会有不同的值
SOA 类型:Start of Authority,授权起始,可以获取针对一个域名最基本的设置信息,如下:
- Mail:管理员邮箱
- Serial:版本序列号,格式一般为年月日次
- Refresh Slave:表示 Slave 的 DNS 服务器多久需要向 Master 的 DNS 服务器请求更新一次数据
- Retry:在发起 Refresh 时,如果 Slave 链接不到 Master,需要间隔多久再次进行连接尝试
- Expire:在发起 Refresh 时,如果 Slave 始终无法连接到 Master,那么多久后放弃尝试
- Minimum:即TTL,表示外部DNS服务器如果要缓存本DNS服务器的授权数据,保存时间是多久
1、安装 bind-utils 软件包:
- 该软件包包含了操作和管理DNS的一系列工具,如host、dig、nslookup等命令
- 使用如下命令:yum install bind-utils
2、nslookup 命令,支持两种模式:
- 交互模式:用户只需执行一次 nslookup,即可多次向域名服务器发起请求
- server 8.8.8.8:在交互模式下指定DNS服务器
- set all:查看当前DNS配置
- set debug:进入调试模式,输出更多信息
- set type=MX:设置信息查询的类型
- 非交互模式:查询是一次性的,nslookup name -type=ns
```bash
# 单独输入nslookup进入交互模式
[root@iZwz9de6ypp03mqjv3cshhZ]~# nslookup
>
# 指定要请求的DNS服务器,使用“nslookup - 域名服务器IP”即可
# 或者在交互状态使用:server 域名服务器IP,如 server 8.8.8.8
[root@iZwz9de6ypp03mqjv3cshhZ]~# nslookup - 114.114.114.114
> www.baidu.com
Server: 114.114.114.114
Address: 114.114.114.114#53
Non-authoritative answer:
www.baidu.com canonical name = www.a.shifen.com.
Name: www.a.shifen.com
Address: 180.101.49.12
Name: www.a.shifen.com
Address: 180.101.49.11
# 一次查询,非交互模式
# Non-authoritative answer:指的该查询是从缓存中获取的,属于非权威的
[root@iZwz9de6ypp03mqjv3cshhZ]~# nslookup www.baidu.com - 114.114.114.114
Server: 114.114.114.114
Address: 114.114.114.114#53 #DNS服务器的IP
Non-authoritative answer:
www.baidu.com canonical name = www.a.shifen.com. #canonical name:cname,即别名
Name: www.a.shifen.com
Address: 180.101.49.12
Name: www.a.shifen.com
Address: 180.101.49.11
dig 命令:
- dig @dnsServer name -t querytype,如dig @114.114.114.114 www.baidu.com ns
- dnsServer,指DNS服务器
- name:要查询的域名
- -t querytype:查询的类型
- dig -f file:从文件中读取内容批量查询
- dig -t type:指定查询类型
- dig -x 117.123.22.22:通过IP反查域名
- dig +trace 域名:追踪DNS的查询结果
- dig +short :精简输出
iproute
netstat 被 ss 和 ip 所替代,因为 net-tools 软件包不再更新,现在使用的是 iproute2 软件包
安装 ss :yum install iproute iproute-doc
1、查看当前服务器的网络连接统计:ss -s
2、查看所有打开的网络端口:ss -l,增加 -p 参数可以看到具体的程序
3、查询这台服务器上的所有socket连接:ss -a
- ss -ta:只查看TCP sockets
- ss -ua:只查看UDP sockets
- ss -wa:只查看RAW sockets
- ss -xa:只查看Unix sockets
4、查看服务器的网络接口信息:ip addr show
5、查看路由表:ip route show