网络管理,[root@lnh~


目录
  • 网络管理
  • DNS的查询流程
    • 什么是递归查询
    • 什么是迭代查询
  • 磁盘列阵
    • 什么是磁盘阵列?

网络管理

1.如何查看系统中每个ip的连接数

[root@lnh ~]# ss -ant | grep ESTAB
ESTAB  0      0      192.168.222.250:22   192.168.222.1:53501       
ESTAB  0      0      192.168.222.250:22   192.168.222.1:63094       
ESTAB  0      36     192.168.222.250:22   192.168.222.1:52769   
//-a:所有 -n:数字格式  -t:tcp协议相关  ESTAB 代表网络连接的状态是“已建立”(Established)    
[root@lnh ~]# ss -ant|grep ESTAB|awk '{print $4}'|awk -F: '{print $1}'|uniq -c
      2 192.168.222.250
//awk '{print $5}'是以空格分割,截取第五列,也就是Foreign Address列
//awk是一个选取命令,-F指定为分隔符,这里指定":"为分隔符,分隔符后的第一个
//{print $1}打印分隔符后面的一列
//uniq 用于报告或删除内容中的重复行,-c在输出行前面加上出现的次数

2.请列出下列服务使用的端口,http,ftp,ssh,telnet,mysql,dns

http    80/tcp 
https   443/tcp 
ssh     22/tcp 
ftp     20,21/tcp
telnet  23/tcp
mysql   3306/tcp
dns     53/UDP

3.如何在虚拟机上新增加一块网卡,并配置IP为172.16.0.10,指定网关为172.16.0.1


[root@lnh ~]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 00:0c:29:57:f6:f5 brd ff:ff:ff:ff:ff:ff
    inet 192.168.222.250/24 brd 192.168.222.255 scope global noprefixroute eth0
       valid_lft forever preferred_lft forever
    inet6 fe80::20c:29ff:fe57:f6f5/64 scope link 
       valid_lft forever preferred_lft forever
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 00:0c:29:57:f6:ff brd ff:ff:ff:ff:ff:ff
    inet 192.168.222.132/24 brd 192.168.222.255 scope global dynamic noprefixroute eth1
       valid_lft 1786sec preferred_lft 1786sec
    inet6 fe80::e61:94ae:7774:c88f/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever
//查看是否添加成功
[root@lnh network-scripts]# cp ifcfg-eth0 ifcfg-eth1
[root@lnh network-scripts]# ls
ifcfg-eth0  ifcfg-eth1
[root@lnh network-scripts]# vim ifcfg-eth1
[root@lnh network-scripts]# cat ifcfg-eth1
TYPE=Ethernet
BOOTPROTO=static
NAME=eth1
DEVICE=eth1
ONBOOT=yes
IPADDR=172.16.0.10
NETMASK=255.255.255.0
GATEWAY=172.16.0.1
DNS1=172.16.0.1
[root@lnh network-scripts]# ifdown eth1;ifup eth1
Connection 'eth1' successfully deactivated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/3)
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/5)
//重启网卡
[root@lnh network-scripts]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 00:0c:29:57:f6:f5 brd ff:ff:ff:ff:ff:ff
    inet 192.168.222.250/24 brd 192.168.222.255 scope global noprefixroute eth0
       valid_lft forever preferred_lft forever
    inet6 fe80::20c:29ff:fe57:f6f5/64 scope link 
       valid_lft forever preferred_lft forever
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 00:0c:29:57:f6:ff brd ff:ff:ff:ff:ff:ff
    inet 172.16.0.10/24 brd 172.16.0.255 scope global noprefixroute eth1
       valid_lft forever preferred_lft forever
    inet6 fe80::20c:29ff:fe57:f6ff/64 scope link 
       valid_lft forever preferred_lft forever
//查看是否设置成功

4.详细描述dns解析过程,以访问(www.baidu.com.)为例
1.先查找本地DNS缓存,有就返回没有就下一步
2.查看本地hosts文件有没有相当于的映射记录没有就下一步
3.向本地DNS服务器发送请求查询本地DNS服务器收到请求后,它会先查下自己的缓存记录,如果查到了直接返回就结束了,如果没有查到,本地DNS服务器就会向DNS的根域名服务器发起查询请求
4.DNS的根域名服务器收到请求后发现这是.com的域名,就回应本地DNS服务器说这是.com域名服务器的,你去问它
5.本地DNS服务器接到回复后,照着联系方式去访问.com域名服务器,.com 顶级域名服务器接收到请求后,看到这是 baidu.com 的域名,就回应说这个域名是 .baidu.com域名服务器的,你就去问它就行了,这是它的联系方式
6.本地DNS服务器接到回复后,照着联系方式去访问.baidu.com域名服务器,.baidu.com域名服务器管理确认是自己管理的域名后,查看自己的域名然后告诉本地DNS服务器访问ip
7.本地DNS服务器接到回复后,就给查询客户回复,由于这个过程比较漫长,本地DNS服务器会记住这次的查询结果,方便下次有客户再访问。

[root@lnh ~]# dnf provides host
Last metadata expiration check: 2 days, 6:15:34 ago on Wed 13 Jul 2022 04:13:33 AM CST.
bind-utils-32:9.11.26-6.el8.x86_64 : Utilities for querying DNS name servers
Repo        : AppStream
Matched from:
Filename    : /usr/bin/host

[root@lnh ~]# dnf provides nslookup
bind-utils-32:9.11.26-6.el8.x86_64 : Utilities for querying DNS name servers
Repo        : AppStream
Matched from:
Filename    : /usr/bin/nslookup
[root@lnh ~]# dnf -y install bind-utils
//可以先查询这两个命令需要的包,然后进行下载
[root@lnh ~]# host www.baidu.com
www.baidu.com is an alias for www.a.shifen.com.
www.a.shifen.com has address 182.61.200.6
www.a.shifen.com has address 182.61.200.7
[root@lnh ~]# nslookup www.baidu.com
Server:		192.168.222.2
Address:	192.168.222.2#53

Non-authoritative answer:
www.baidu.com	canonical name = www.a.shifen.com.
Name:	www.a.shifen.com
Address: 182.61.200.6
Name:	www.a.shifen.com
Address: 182.61.200.7

可以用其查询的地址进行访问

5.如何查看系统中运行了多少个进程

[root@lnh ~]# ps aux |wc -l
166

6.如何查看系统中启动了哪些端口

[root@lnh ~]# ss -ant
State   Recv-Q  Send-Q     Local Address:Port    Peer Address:Port  Process 
LISTEN  0       128              0.0.0.0:22           0.0.0.0:*             
ESTAB   0       36       192.168.222.250:22     192.168.222.1:58662         
LISTEN  0       128                 [::]:22              [::]:*     
[root@lnh ~]# ss -ant |awk  '{print $4}' |awk -F: '{print $NF}'
Local
22
22
22

7.如何查看是否开启80端口,及查看sshd进程是否存在

[root@lnh ~]# ss -antl
State   Recv-Q  Send-Q   Local Address:Port     Peer Address:Port  Process  
LISTEN  0       128            0.0.0.0:22            0.0.0.0:*              
LISTEN  0       128               [::]:22               [::]:*              
LISTEN  0       128                  *:80                  *:*              
[root@lnh ~]# ss -antl |grep 80
LISTEN 0      128                *:80              *:*          
[root@lnh ~]# ss -antlp |grep 80
LISTEN 0      128                *:80              *:*    users:(("httpd",pid=1993,fd=4),("httpd",pid=1992,fd=4),("httpd",pid=1991,fd=4),("httpd",pid=1990,fd=4))
[root@lnh ~]# ps -ef|grep sshd 
root         937       1  0 10:03 ?        00:00:00 /usr/sbin/sshd -D -oCiphers=aes256-gcm@openssh.com,chacha20-poly1305@openssh.com,aes256-ctr,aes256-cbc,aes128-gcm@openssh.com,aes128-ctr,aes128-cbc -oMACs=hmac-sha2-256-etm@openssh.com,hmac-sha1-etm@openssh.com,umac-128-etm@openssh.com,hmac-sha2-512-etm@openssh.com,hmac-sha2-256,hmac-sha1,umac-128@openssh.com,hmac-sha2-512 -oGSSAPIKexAlgorithms=gss-curve25519-sha256-,gss-nistp256-sha256-,gss-group14-sha256-,gss-group16-sha512-,gss-gex-sha1-,gss-group14-sha1- -oKexAlgorithms=curve25519-sha256,curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group14-sha256,diffie-hellman-group16-sha512,diffie-hellman-group18-sha512,diffie-hellman-group-exchange-sha1,diffie-hellman-group14-sha1 -oHostKeyAlgorithms=ecdsa-sha2-nistp256,ecdsa-sha2-nistp256-cert-v01@openssh.com,ecdsa-sha2-nistp384,ecdsa-sha2-nistp384-cert-v01@openssh.com,ecdsa-sha2-nistp521,ecdsa-sha2-nistp521-cert-v01@openssh.com,ssh-ed25519,ssh-ed25519-cert-v01@openssh.com,rsa-sha2-256,rsa-sha2-256-cert-v01@openssh.com,rsa-sha2-512,rsa-sha2-512-cert-v01@openssh.com,ssh-rsa,ssh-rsa-cert-v01@openssh.com -oPubkeyAcceptedKeyTypes=ecdsa-sha2-nistp256,ecdsa-sha2-nistp256-cert-v01@openssh.com,ecdsa-sha2-nistp384,ecdsa-sha2-nistp384-cert-v01@openssh.com,ecdsa-sha2-nistp521,ecdsa-sha2-nistp521-cert-v01@openssh.com,ssh-ed25519,ssh-ed25519-cert-v01@openssh.com,rsa-sha2-256,rsa-sha2-256-cert-v01@openssh.com,rsa-sha2-512,rsa-sha2-512-cert-v01@openssh.com,ssh-rsa,ssh-rsa-cert-v01@openssh.com -oCASignatureAlgorithms=ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,ssh-ed25519,rsa-sha2-256,rsa-sha2-512,ssh-rsa
root        1167     937  0 10:03 ?        00:00:00 sshd: root [priv]
root        1182    1167  0 10:03 ?        00:00:00 sshd: root@pts/0
root        2094    1183  0 11:18 pts/0    00:00:00 grep --color=auto sshd
//ps -ef:打开所有的进程 grep sshd:过滤出含有“sshd”字符的进程

8.列出所有处于监听状态的tcp端口

[root@lnh ~]# ss -antlp  
State    Recv-Q   Send-Q       Local Address:Port       Peer Address:Port   Process                                                                     
LISTEN   0        128                0.0.0.0:22              0.0.0.0:*       users:(("sshd",pid=937,fd=5))                                              
LISTEN   0        128                   [::]:22                 [::]:*       users:(("sshd",pid=937,fd=7))                                              
LISTEN   0        128                      *:80                    *:*       users:(("httpd",pid=1993,fd=4),("httpd",pid=1992,fd=4),("httpd",pid=1991,fd=4),("httpd",pid=1990,fd=4))
    -l:listen状态的连接
    -a:所有
    -n:数字格式
    -p:相关的程序及pid
    -t:tcp协议相关

9.查看所有的端口信息, 包括 PID 和进程名称

[root@lnh ~]# ss -atulp  
Netid  State   Recv-Q  Send-Q     Local Address:Port     Peer Address:Port  Process                                                                     
tcp    LISTEN  0       128              0.0.0.0:ssh           0.0.0.0:*      users:(("sshd",pid=937,fd=5))                                              
tcp    LISTEN  0       128                 [::]:ssh              [::]:*      users:(("sshd",pid=937,fd=7))                                              
tcp    LISTEN  0       128                    *:http                *:*      users:(("httpd",pid=1993,fd=4),("httpd",pid=1992,fd=4),("httpd",pid=1991,fd=4),("httpd",pid=1990,fd=4))
-u:udp协议相关

DNS的查询流程

什么是递归查询

一般我们向本地 DNS 服务器发送请求的方式就是递归查询(当客户端向本地DNS服务器发送需求,本地DNS服务器可以马上给予答案)因为我们只需要发出一次请求,本地 DNS 服务器便返回给我们最终的请求结果。

什么是迭代查询

本地 DNS 服务器向其他域名服务器请求的过程是迭代查询(当客户端请求没有得到DNS服务器的明确回复时,DNS服务器只是告诉客户端如何去获取这个内容而其本身不进行请求查询)因为每一次域名服务器只返回单次查询的结果,下一级的查询由本地 DNS 服务器自己进行。

磁盘列阵

什么是磁盘阵列?

磁盘阵列是由很多块独立的磁盘,组合成一个容量巨大的磁盘组,利用个别磁盘提供数据所产生加成效果提升整个磁盘系统效能。利用这项技术,将数据切割成许多区段,分别存放在各个硬盘上。

磁盘阵列在电脑当中我们通常称之为Raid,给多块磁盘组建Raid后我们电脑内就只会看到一个Raid的阵列盘,它的子磁盘我们是看不到的,我们就跟使用普通磁盘一样去使用这个由多块磁盘组合起来的Raid磁盘,Raid有很多的等级。不同的Raid等级之间并没有优劣之分,它们仅仅是不同功能的阵列,只是在我们实际使用的时候需要根据不同的情况和不同的需求去灵活的决定用哪个等级的Raid。

Raid主要有如下几种:
1,RAID0

至少需要的硬盘数:2,将一个完整的数据拆分后分别放到磁盘中,写入时各磁盘同时写入,读取时各磁盘同时读取,和内存双通道一个道理,带宽翻倍速度翻倍的效果,加的磁盘越多速度就是越快,同样的磁盘越多数据就越危险。

优点: 资料会被均分并写入不同的硬盘上。数据存取会更快速并更有效率。

缺点: 如果其中一颗硬盘损毁,所有数据将会遗失除非平时有在做额外的数据备份。

2,RAID1

至少需要的硬盘数:2,是将一份完整的数据复制到阵列中所有的磁盘当中,但速度及容量都会取决于最慢与最小的磁盘。

优点: 数据将会被复制到所有的硬盘上,不管坏了几颗硬盘,只要还有一颗硬盘是正常的,数据将不受影响。

缺点: 不管安装了多少颗硬盘,可用空间会被局限同等于一颗硬盘。

3,RAID5

至少需要的硬盘数:3,使用相当于是1块盘的大小作为校验盘,n-1块盘的大小作为数据盘,但校验码分布在各个磁盘中,不是单独的一块磁盘,也就是分布式校验盘。

优点: 一颗硬盘的容错机制。数据会被均分到不同的硬盘上并加上同比特 (储备) 的数据检查,如果坏了一颗硬盘,同比特数据将会确保数据的完整性。

缺点: 存储空间将会有一颗硬盘的容量大小被保留为同比特数据的检查/存储,因此将会影响整体的数据可用空间。

4,RAID6

至少需要的硬盘数:4,带有两种分布存储的奇偶校验码的独立磁盘结构,它是对RAID5的扩展,主要是用于要求数据绝对不能出错的场合,使用了二种奇偶校验值,所以需要N+2个磁盘,同时对控制器的设计变得十分复杂,写入速度也不好,用于计算奇偶校验值和验证数据正确性所花费的时间比较多,造成了不必须的负载,较少人用。

优点: 两颗硬盘的容错机制。数据会被均分到不同的硬盘上并加上同比特 (储备) 的数据检查,如果坏了一颗硬盘,同比特数据将会提升数据的完整性。

缺点: 存储空间将会有两颗硬盘的容量大小被保留为同比特数据的检查/存储,因此将会影响整体的数据可用空间。

5,RAID10

至少需要的硬盘数:4,且必须为偶数,可以理解为先组合成较安全的RAID1,再将多个RAID1组合成RAID0,达到既高效又高速的目的。主要用于数据容量不大,但要求速度和差错控制的数据库中。

优点: 利用了 RAID 0 的速度以及 RAID 1 地保护两种特性。

缺点: 所需的硬盘数较多,至少必须拥有四个以上的偶数硬盘才能使用,且能被利用的可用空间有限。

相关内容