kk Blog —— 通用基础


date [-d @int|str] [+%s|"+%F %T"]
netstat -ltunp
sar -n DEV 1

libvirtd 虚拟网卡 virbr0 192.168.122.1

dnsmasq不会自动停

1
2
3
4
service libvirtd stop
systemctl stop libvirtd.service

service libvirtd status

还是有dnsmasq进程,手动kill


https://blog.csdn.net/cqszpx/article/details/126730428

在CentOS 7的安装过程中如果有选择相关虚拟化的的服务安装系统后,启动网卡时会发现有一个以网桥连接的私网地址的virbr0网卡,这个是因为在虚拟化中有使用到libvirtd服务生成的,如果不需要可以关闭后去掉:

一、查看IP及网桥设备

1
2
3
4
5
6
7
[root@etc ~]# ifconfig //查看IP地址

[root@etc ~]# brctl show //查看网桥
bridge name bridge id STP enabled interfaces
virbr0 8321.5254115cdv00 yes virbr0-nic

[root@etc ~]#

二、删除网桥

1
2
[root@etc ~]# ifconfig virbr0 down
[root@etc ~]# brctl delbr virbr0 //删除网桥

三、禁用开机服务

1
2
3
4
5
6
7
[root@etc ~]# systemctl disable libvirtd.service //禁用libvirtd服务开机自启动
Removed symlink /etc/systemd/system/multi-user.target.wants/libvirtd.service.
Removed symlink /etc/systemd/system/sockets.target.wants/virtlockd.socket.
Removed symlink /etc/systemd/system/sockets.target.wants/virtlogd.socket.

[root@etc ~]# systemctl mask libvirtd.service
Created symlink from /etc/systemd/system/libvirtd.service to /dev/null.

再次使用ifconfig查看,即可发现virbr0不在了

当然也可直接将libvirtd服务卸载

这样也就不会生成虚拟网卡,更是一劳永逸,待需要使用时,再安装该服务即可。操作命令如下:

1
yum remove libvirt-libs.x86_64

systemctl mask 和 systemctl disable

disable是禁用的开机自启,但是其他服务仍可以调用开启disable的服务

而mask是屏蔽服务,mask了的服务,不可以被调用

enable和disable相对应的

unmask和mask相对应的

DNS dig使用详解

https://www.codenong.com/cs106328924/

1
2
3
4
dig @192.58.128.30 +dnssec . A
dig @192.58.128.30 +dnssec . NS

dig @192.58.128.30 +dnssec . DNSKEY

一、使用dig发送不同DNS类型请求

1、A记录

1
2
dig www.baidu.com
dig a www.baidu.com +short

可以使用 +short 展示精简结果

2、CNAME记录

1
dig cname www.baidu.com

3、AAAA记录

指定域名服务器发送AAAA请求

1
dig @8.8.8.8 www.google.com AAAA

4、PTR记录, 地址反查

通过@指定域名服务器,注意:地址要反着写,而且需要加上.in-addr.arpa

1
dig @8.8.8.8 3.108.252.173.in-addr.arpa PTR

或者使用dig -x参数也可以

1
dig @8.8.8.8 -x 173.252.108.3

5、NS记录

注意:查询NS时,去掉最末尾的域名,不能写完整域名,比如dig www.baidu.com NS,这样是不可以的。应该是dig baidu.com NS,我们要查询的是能解析baidu.com的授权服务器是哪个。这里就要理解下域名迭代查询的含义了。

1
2
3
4
5
dig @8.8.8.8 google.com NS

或者

dig google.com NS

6、 SOA记录

上述的NS查询里,展示了很多个可以解析sohu.com下子域名的服务器,ns12/ns11等等。通过SOA可以查询哪个是授权机构的主服务器。如下抓包可以看出,ns11.sohu.com是主服务器

1
dig sohu.com SOA

7、MX记录

1
dig @8.8.8.8 wuxj.com MX

8、AXFR记录-

1
dig @8.8.8.8 wuxj.com AXFR

9、ANY-就是查询所有的参数记录

1
dig @8.8.8.8 wuxj.com ANY

二、dig选项设置

1)-b address 指定源 IP 地址,主机有多个地址时可以指定访问的源ip

1
dig @8.8.8.8 -b 10.16.191.143 m.linuxidc.com A

2) @address 指定dns服务器地址,配置了多个nameserver时可以使用

1
dig @8.8.8.8 -b 10.16.191.143 m.linuxidc.com A

3)-f filename 执行文档里的所有dig请求,一行一个

1
dig -f test

4)-p port 指定访问的dns服务器端口号,如指定一个非标准端口,需要先之前搭好的DNS服务器监听端口改为非标准端口

1
dig @8.8.8.8 -p 54 www.wuxj.com A

5)+[no]tcp 使用tcp发送dns请求,出AXFR 或 IXFR 请求,其他请求默认使用的是udp

1
dig m.linuxidc.com +tcp

6)+[no]short 提供简要答复

1
dig m.linuxidc.com +short

7、+trace 跟踪域名解析过程

1
dig m.linuxidc.com +trace

DNS的报文格式

https://blog.51cto.com/u_14398214/5071045

http://events.jianshu.io/p/1cdefa50f58d

https://zhuanlan.zhihu.com/p/143360037

14.3 DNS的报文格式

DNS 定义了一个用于查询和响应的报文格式。图 14-3 显示这个报文的总体格式。

这个报文由 12 字节长的首部和 4个长度可变的字段组成。标识字段由客户程序设置并由服务器返回结果。客户程序通过它来确定响应与查询是否匹配。

16 bit的标志字段被划分为若干子字段,如图 14-4 所示。

我们从最左位开始依次介绍各子字段:

• QR 是 1 bit 字段:0表示查询报文,1表示响应报文。

• opcode 是一个 4 bit 字段:通常值为0(标准查询),其他值为1(反向查询)和2(服务器状态请求)。

• AA 是1 bit标志,表示“授权回答 (authoritative answer)”。该名字服务器是授权于该域的。

• TC 是1 bit字段,表示“可截断的 (truncated)”。使用U D P时,它表示当应答的总长度超过 512 字节时,只返回前 512 个字节。

• RD 是1 bit字段表示“期望递归( recursion desired)”。该比特能在一个查询中设置,并在响应中返回。这个标志告诉名字服务器必须处理这个查询,也称为一个递归查询。如果该位为0,且被请求的名字服务器没有一个授权回答,它就返回一个能解答该查询的其他名字服务器列表,这称为迭代查询。在后面的例子中,我们将看到这两种类型查询的例子。

• RA 是 1 bit 字段,表示“可用递归”。如果名字服务器支持递归查询,则在响应中将该比特设置为1。在后面的例子中可看到大多数名字服务器都提供递归查询,除了某些根服务器。

• 随后的 3 bit 字段必须为0。

• rcode 是一个 4 bit 的返回码字段。通常的值为 0(没有差错)和3(名字差错)。名字差错只有从一个授权名字服务器上返回,它表示在查询中制定的域名不存在。

随后的 4 个 16 bit 字段说明最后 4个变长字段中包含的条目数。对于查询报文,问题(question)数通常是1,而其他3项则均为0。类似地,对于应答报文,回答数至少是 1,剩下的两项可以是0或非0。

14.3.1 DNS查询报文中的问题部分

问题部分中每个问题的格式如图 14-5 所示,通常只有一个问题。

查询名是要查找的名字,它是一个或多个标识符的序列。每个标识符以首字节的计数值来说明随后标识符的字节长度,每个名字以最后字节为 0结束,长度为0的标识符是根标识符。计数字节的值必须是 0 ~ 63 的数,因为标识符的最大长度仅为 63(在本节的后面我们将看到计数字节的最高两比特为1,即值 192 ~ 255,将用于压缩格式)。不像我们已经看到的许多其他报文格式,该字段无需以整 32 bit 边界结束,即无需填充字节。

图 14-6 显示了如何存储域名 gemini.tuc.noao.edu。

每个问题有一个查询类型,而每个响应(也称一个资源记录,我们下面将谈到)也有一个类型。大约有 20 个不同的类型值,其中的一些目前已经过时。图 14-7 显示了其中的一些值。查询类型是类型的一个超集 (superset):图中显示的类型值中只有两个能用于查询类型。

最常用的查询类型是 A类型,表示期望获得查询名的 IP 地址。一个 PTR 查询则请求获得一个 IP 地址对应的域名。这是一个指针查询,我们将在 14.5 节介绍。其他的查询类型将在 14.6 节介绍。

查询类通常是1,指互联网地址(某些站点也支持其他非 IP地址)

14.3.2 DNS响应报文中的资源记录部分

DNS报文中最后的三个字段,回答字段、授权字段和附加信息字段,均采用一种称为资源记录R R(Resource Record)的相同格式。图14-8显示了资源记录的格式。

域名是记录中资源数据对应的名字。它的格式和前面介绍的查询名字段格式(图 14-6)相同。

类型说明 RR的类型码。它的值和前面介绍的查询类型值是一样的。类通常为 1,指Internet数据。

生存时间字段是客户程序保留该资源记录的秒数。资源记录通常的生存时间值为 2天。资源数据长度说明资源数据的数量。该数据的格式依赖于类型字段的值。对于类型 1(A记录)资源数据是4字节的IP地址。



应答部分(Answer、Authority、Additional)

报文 中文 长度 说明
NAME 0x00结束
TYPE 查询类型 2
CLASS 查询类 2
TimeToLive 生存时间 4
DaTaLength 资源数据长度 2
DaTa 资源数据 DaTaLength



1.2.1、QTYPE说明

类型 助记符 说明
1 A 由域名获得IPv4地址
2 NS 查询域名服务器
3 MD 过期类型
4 MF 过期类型
5 CNAME 查询规范名称
6 SOA 开始授权
7 MB 指定邮箱域名
8 MG 指定邮件组成员
9 MR 指定邮件重命名域名
A NULL 指定空的资源记录
B WKS 熟知服务
C PTR 把IP地址转换成域名
D HINFO 主机信息
E MINFO 指定邮箱或列表信息
F MX 邮件交换
10 TXT 文本信息
28 AAAA 由域名获得IPv6地址
252 AXFR 传送整个区的请求
255 ANY 对所有记录的请求



1.2.2、QCLASS说明

数值 类型 说明
01 IN Internet类别
02 CSNET 过期类型
03 Chaos
04 MIT Athena Hesiod



DNS查询报文实例