Sre 学习三

1.raid 0, 1, 5, 10, 01的工作原理,各自的利用率,冗余性,性能,至少几个硬盘实现

RAID 0


工作原理:以 chunk 单位,读写数据,因为读写时都可以并行处理,所以在所有的级别中,RAID 0的速度是最快的。但是RAID 0既没有冗余功能,也不具备容错能力,如果一个磁盘(物理)损坏,所有数据都会丢失
利用率:100%
冗余性:无
性能:非常高,因为数据可以同时写入多个硬盘,提高了I/O性能。
最少硬盘数:最少1+硬盘。


RAID 1


工作原理:RAID 1也称为镜像,它将相同的数据复制到两个硬盘上,提供冗余和容错功能。当一个硬盘出现故障时,另一个硬盘上的数据可以用于恢复。
利用率:50%
冗余性:高,因为数据被复制到两个硬盘上。
性能:通常比RAID 0低,因为数据需要同时写入两个硬盘。但是读取性能可以很高。
最少硬盘数:至少2+硬盘。


RAID 5


工作原理:RAID 5也称为分布式奇偶校验,它将数据分割成块并存储在多个硬盘上,同时使用一个额外的硬盘来存储奇偶校验信息。如果一个硬盘出现故障,可以使用奇偶校验信息来恢复数据。
利用率:90%
冗余性:中至高,因为使用奇偶校验来保护数据。
性能:通常比RAID 1高,因为只有一块硬盘用于存储奇偶校验信息。读取性能通常很好。
最少硬盘数:3, 3+硬盘。


RAID 10


工作原理:RAID 10也称为镜像阵列,它结合了RAID 1和RAID 0的特点。它将数据分成两部分,每部分都复制到两个硬盘上,提供冗余和容错功能。同时,每组镜像的硬盘也进行条带化以提供更高的性能。
利用率:50% (每组镜像的利用率)
冗余性:高,因为数据被复制到两个硬盘上,并且还有额外的镜像用于容错。
性能:通常比RAID 5高,因为每个镜像组都可以独立地读写数据。读取性能通常很好。
最少硬盘数:4, 4+硬盘。


RAID 01


工作原理:RAID 01也称为条带化镜像,它结合了RAID 0和RAID 1的特点。它将数据分成两部分,每部分都进行条带化并复制到两个硬盘上,提供冗余和容错功能。与RAID 10不同的是,RAID 01的每个条带都使用不同的硬盘。
利用率:50% (每组镜像的利用率)
冗余性:高,因为数据被复制到两个硬盘上,并且还有额外的镜像用于容错。
性能:通常比RAID 5高,因为每个条带都可以独立地读写数据。读取性能通常很好。
最少硬盘数:至少4个硬盘

2. 完成对LVM磁盘扩容及缩容示例。

2.1扩容

创建物理卷PV

pvcreate /dev/XXXX

PVS查看

扩展卷组VG

扩展逻辑卷LV

2.2 缩容(缩容可以会损坏数据,建议先进行备份,XFS 不支持缩容)

先取消umount挂载,检测fsck -f /dev/tex/log_lv

在缩减2个G:resize2fs /dev/tex/log_lv 2G

lvreduce -L 2G /dev/tex/log_lv

在mount -a重新挂载

3. 软件包管理程序有哪些,软件包中包含什么内容?yum/dnf/apt 软件包获取途径,以及命令选项示例?

3.1 rpm

常用选项

-i:安装软件包

-h:显示安装进度

-v:提供更详细的输出

-a:所有包

-f:查询文件属于哪个软件包

-q:查询

-c:列出所有配置文件

--info|-i:列出软件包的描述信息

-l:列出软件包内的文件

--scripts:列出安装/卸载脚本

-e:卸载软件包

安装软件包

rpm -ivh nginx-release-centos-7-0.el7.ngx.noarch.rpm

查看软件包的信息

rpm -qi nginx-release-centos-7-0.el7.ngx.noarch.rpm

3.2 yum/dnf

yum/dnf 是基于 rpm 的软件包管理程序,可以解决软件包之间的依赖关系

常用选项

-y:自动回答 yes

--enablerepo:临时启用仓库

--disablerepo:临时禁用仓库

--repo:指定仓库

--showduplicates:显示依赖

常用子命令

autoremove:卸载不需要的软件包以及依赖包

clean:清除缓存的数据

info:显示软件包的详细信息

install:安装软件包

list:列出所有软件包

makecache:生成元数据缓存

provides:查看某个文件是由哪个软件包提供的

remove:卸载软件包

repolist:显示配置的软件仓库列表

search:搜素软件包

upgrade:更新软件包

安装软件包

 yum install -y httpd

最后出现“Complete!”完成!如下图

卸载软件包

yum remove -y httpd

最后出现“Complete!”完成

3.3 dpkg

常用选项

-i:安装软件包

-r:卸载软件包

-L:列出软件包内的文件

-l:列出已安装的软件包

-s:显示软件包详细信息

-S:查询文件属于哪个软件包

--info|-I:显示 deb 包的信息

-c:列出 deb 包内的文件

显示包详细信息

sudo dpkg -s vim

列出软件包内的文件

sudo dpkg -L vim

3.4 apt

apt 是基于 dpkg 的软件包管理程序,可以解决软件包之间的依赖关系

常用子命令

list:列出软件包

search:搜索软件包

show:显示软件包详细信息

install:安装软件包

remove:卸载软件包

autoremove:自动卸载不再使用的软件包

update:更新可用软件包列表

upgrade:更新软件包

显示可用的软件包版本

apt-cache madison nginx

显示软件包的依赖信息

sudo apt-cache depends nginx

4. 简要总结 yum/dnf 工作原理,并搭建私有 yum 仓库给另一个虚拟机使用

4.1yum/dnf 工作原理

yum工具除了能够解决软件安装时的依赖关系以外,还提供了一个仓库的功能。

yum仓库也叫yum源,类似安卓系统的软件商店;Linux系统配置了yum仓库之后就可以直接从仓库获取rpm包,就不需要去单独下载;yum的工作需要两部分来合作,一部分是yum服务器端,另一部分就是客户端的yum工具

4.2 服务端配置

需要两台服务器。一台为服务端,一台为客户端,如下演示:

[root@Rocky8 ~]10.0.0.150

[root@localhost ~]10.0.0.154

注:服务端防火墙端口需要打开,否则客户端无法访问服务端

搭建私有yum仓库(base, epel源)给另一个虚拟机使用,下载Apache提供Web服务

yum -y install httpd

设置是否开机启动

systemctl enable --now httpd

建目录下载软件包、源, 下载有点久!需耐心等待

mkdir -p /var/www/html/rockylinux/8
yum reposync --repoid=baseos --download-metadata -p /var/www/html/rockylinux/8/
yum install -y epel-release
yum reposync --repoid=epel --download-metadata -p /var/www/html/rockylinux/8/

查看是否源下载完成,

配置客户端,进入目录配置

cd /etc/yum.repos.d/

自己写个repo

vim ming.repo #"ming"为自定文件名

编辑如下,保存退出

[BaseOS]
name=2024-01-11   #自定

baseurl=http://10.0.0.150/rockylinux/8/baseos/  #服务端路径

gpgcheck=0

查看服务端yum仓库

yum repolist

5. 安装系统后的常用初始化操作

设置时区

timedatectl set-timezone Asia/Shanghai

#Ubuntu 命令前面加 sudo  

关闭防火墙

Rocky

systemctl disable --now firewalld

Ubuntu

sudo ufw disable

安装常用软件

Rocky

yum install -y vim

Ubuntu

sudo apt install -y vim

6. Shell 编程:一键安装 Nginx

写vim Nginx.sh编程,代码如下,之后bash Nginx.sh运行

NGINX_VERSION=1.23.0
SRC_PACKAGE=nginx-${NGINX_VERSION}.tar.gz
INSTALL_DIR=/usr/local/nginx
END="\e[0m"

source /etc/os-release


# 关闭防火墙,安装依赖包

init() {
    if [[ $ID =~ rhel|rocky|centos ]]; then
        systemctl disable --now firewalld
        yum makecache
        yum install -y gcc make openssl-devel pcre-devel
    elif [[ $ID == ubuntu ]]; then
        sudo ufw disable
        sudo apt update
        sudo apt install -y gcc make libssh-dev libpcre3-dev
    else
        echo -e ${COLOR_RED}"暂不支持$ID系统"$END
        exit 1
    fi
}

# 下载并解压Nginx源码包

download() {
    if [ ! -f ${SRC_PACKAGE} ]; then
        if [[ $ID =~ rhel|rocky|centos ]]; then
            yum install -y wget
        else
            sudo apt install -y wget
        fi
        wget https://nginx.org/download/nginx-${NGINX_VERSION}.tar.gz \
            || { echo -e ${COLOR_RED}"下载失败!"$END; exit 1; }
        tar -xf ${SRC_PACKAGE} -C /usr/local/src
    fi
}


# 编译安装Nginx

install() {
    cd /usr/local/src/nginx-${NGINX_VERSION}

    ./configure \
        --sbin-path=${INSTALL_DIR}/nginx \
        --conf-path=${INSTALL_DIR}/nginx.conf \
        --pid-path=${INSTALL_DIR}/nginx.pid \
        --with-http_ssl_module

    make -j $PROCESSOR && make install
    if (( $? != 0 )); then
        echo -e ${COLOR_RED}"安装失败!"$END
        exit 1
    fi
}

init
download
install
${INSTALL_DIR}/nginx && echo -e ${COLOR_GREEN}"成功启动Nginx服务>!"$END

安装完成显示”成功启动Nginx服务“

7. 总结 OSI 模型每层的作用及对应的协议

1 . 物理层:功能:实现比特流的透明传输;所有协议:ISO02110,IEEE802,IEEE802.2

2 . ​ 数据链路层:功能:封装成帧、透明传输、差错控制以及可靠传输;所用协议:SLIP,ARP,PPP等

​3 . 网络层:功能:为数据包选择路由;所用协议:IP,ICMP,RIP等

4 . 传输层:功能:提供端对端接口;所用协议:TCP,UDP

5 . 会话层:功能:解除或建立与别的接点的联系;无协议

6 . ​ 表示层:功能:数据格式化,代码转换,数据加密;无协议

7 . 应用层:功能:文件传输,电子邮件,文件服务,虚拟终端;所用协议:HTTP,FTP等

8. 调整动态端口范围为 20000~60000

echo '20000   60000' > /proc/sys/net/ipv4/ip_local_port_range

查看调整端口

cat  /proc/sys/net/ipv4/ip_local_port_range

永久生效需要改配置文件

cat /proc/sys/net/ipv4/ip_local_port_range     #先查看原端口

vim /etc/sysctl.conf                           #修改配置文件

net.ipv4.ip_local_port_range = "20000 60000"   #文件中添加

sysctl -p                                      #立即生效           

9. TCP 段结构,TCP 三次握手、四次挥手

9.1 TCP段结构

  • 来源连接端口(16位长): 源端口号16 bit
  • 目的连接端口(16位长): 目的端口号
  • 序列号(seq,32位长): 指segment中地一个字节的编码。建立连接时,双方随机选择序列号。
  • 确认号(ack,32位长): 希望接收的下一个字节的序列号。累计确认机制,该确认字节号前的数据均一正确接收。
  • 数据偏移(4位长): 以4字节为单位计算出的数据段开始地址的偏移值,由于有内存对齐,单位为32 bit。最大15 * 32 / 8 = 60 byte。
  • 保留(3比特长): 保留位,留待以后使用,全部为0。
  • 标志符(9比特长):
    • NS: 拥塞控制随机和(ECN Nonce Sum),用于防止TCP发送者的数据包标记被意外或恶意改动。
    • CWR(Congestion Window Reduced): 减少拥塞窗口,接受方标志位ECE设置后,设置CWR标志位,以告知对方,已接受到拥塞通知。
    • ECE(Explicit Congestion Notification): 显式拥塞通知, 接受方检测到网络拥塞后,设置ECN-Echo标志位来指示拥塞。
    • URG: 为1表示高优先级数据包,紧急指针字段有效。
    • ACK: 为1表示确认号字段有效。
    • PSH: 为1表示是带有PUSH标志的数据,指示接收方应该尽快将这个报文段交给应用层而不用等待缓冲区装满。
    • RST: 为1表示出现严重差错。可能需要重新创建TCP连接。还可以用于拒绝非法的报文段和拒绝连接请求。
    • SYN: 为1表示这是连接请求或是连接接受请求,用于创建连接和使顺序号同步。
    • FIN: 为1表示发送方没有数据要传输了,要求释放连接。
  • 窗口(WIN,16位长): 表示从确认号开始,本报文的发送方可以接收的字节数,即接收窗口大小。用于流量控制。
  • 校验和(Checksum,16位长): 对整个的TCP报文段,包括TCP头部和TCP数据,以16位字进行计算所得。这是一个强制性的字段。
  • 紧急指针(16位长): 本报文段中的紧急数据的最后一个字节的序号。
  • 选项字段(最多40字节): 每个选项的开始是1字节的kind字段,说明选项的类型
    • 0:选项表结束(1字节)
    • 1:无操作(1字节)用于选项字段之间的字边界对齐。
    • 2:最大报文段长度(4字节,Maximum Segment Size,MSS)通常在创建连接而设置SYN标志的数据包中指明这个选项,指明本端所能接收的最大长度的报文段。通常将MSS设置为(MTU-40)字节,携带TCP报文段的IP数据报的长度就不会超过MTU(MTU最大长度为1518字节,最短为64字节),从而避免本机发生IP分片。只能出现在同步报文段中,否则将被忽略。
    • 3:窗口扩大因子(4字节,wscale),取值0-14。用来把TCP的窗口的值左移的位数,使窗口值乘倍。只能出现在同步报文段中,否则将被忽略。这是因为现在的TCP接收数据缓冲区(接收窗口)的长度通常大于65535字节。
    • 4:sackOK—发送端支持并同意使用SACK选项。
    • 5:SACK实际工作的选项。
    • 8:时间戳(10字节,TCP Timestamps Option,TSopt)
      • 发送端的时间戳(Timestamp Value field,TSval,4字节)
      • 时间戳回显应答(Timestamp Echo Reply field,TSecr,4字节)

9.2 TCP 三次握手

(1)第一次握手:Client将标志位SYN置为1,随机产生一个值seq=x,并将该数据包发送给Server,Client进入SYN_SENT状态,等待Server确认。

(2)第二次握手:Server收到数据包后由标志位SYN=1知道Client请求建立连接,Server将标志位SYN和ACK都置为1,ack=x+1,随机产生一个值seq=x+1,并将该数据包发送给Client以确认连接请求,Server进入SYN_RCVD状态。

(3)第三次握手:Client收到确认后,检查ack是否为1,ACK是否为1,如果正确则将标志位ACK置为1,ack=y+1,并将该数据包发送给Server,Server检查ack是否为y+1,ACK是否为1,如果正确则连接建立成功,Client和Server进入ESTABLISHED状态,完成三次握手,随后Client与Server之间可以开始传输数据了。

9.3 四次握手

  1. 客户端打算关闭连接,此时发送一个 TCP 头部 FIN 标志位为 1 的报文,即 FIN 报文,客户端进入 FIN_WAIT_1 状态
  2. 服务端收到 FIN 报文后,向客户端发送 ACK 应答报文,表示对客户端的关闭请求进行确认。服务端进入 CLOSED_WAIT 状态
  3. 客户端收到服务端的 ACK 应答报文后,进入 FIN_WAIT_2 状态
  4. 服务端处理完数据后,也向客户端发送 FIN 报文,服务端进入 LAST_ACK 状态
  5. 客户端收到服务端的 FIN 报文后,回复一个 ACK 应答报文,表示对服务端的关闭请求进行确认,进入 TIME_WAIT 状态
  6. 服务端收到了 ACK 应答报文后进入 CLOSED 状态,完成连接的关闭
  7. 客户端在经过一段时间后,自动进入 CLOSED 状态,完成连接的关闭。这段时间用于确保网络中已经没有该连接的任何数据

10. 主机到主机的包传递过程

1.发送数据包;在A主机上,应用程序将数据封装在一个包或者多个数据包中,并通过传输层(例如TCP或者UDP)发送出去。这些数据包在发送之前可能会经过一些压缩或者加密等处理。

2.路由选择;当数据包离开A主机的网络接口时,它会杯发送到最近的路由器。路由器根据数据包的目的IP地址,查询其路由表,确定下一跳的地址,并将数据包发送到该地址。这个过程会一直持续到数据包到达目标主机或者最后一个路由器。

3.数据链路层封装;在数据包传递到网络层后,会在数据链路层加上一些控制信息,例如MAC地址等,以便于在局域网中进行传输。这个过程可能会根据不同的协议和硬件平台有所不同。

4.物理层传;最后,数据包会通过物理层(例如光纤、双绞线、无线电等)发送出去。在接收端,物理层会接收到信号并将其还原成原始的数据包。

5.接收数据包;目标主机接收到数据包后,会进行相反的处理过程:首先进行物理层解封装,然后逐层向上传递,直到达应用程序层。应用程序会根据需要处理接收到的数据包。

11. 总结IP地址 A, B, C, D 类,并解析IP地址的组成

组成

网络地址:标识网络,每个网段分配一个网络ID
主机地址:标识单个主机,由组织分配给各设备

IP 地址类别第一个字节子网掩码IP 地址范围
A 类最高位是 0255.0.0.010.0.0.0/8 ~ 127.255.255.255/8
B 类前两位是 10255.255.0.0128.0.0.0/16 ~ 191.255.255.255/16
C 类前三位是 110255.255.255.0192.0.0.0/24 ~ 223.255.255.255/24
D 类前四位是 1110用于多播通信,不使用子网掩码224.0.0.0 ~ 239.255.255.255

私网地址
10.x.x.x
172.16.x.x ~ 172.31.x.x
192.168.x.x

特殊地址
0.0.0.0:表示所有未知的主机和目的网络。“未知”是指在本机的路由表里没有特定条目指明如何到达。
255.255.255.255:有限广播地址,理论上与本主机同一广播域的主机都能收到这样的广播消息。
127.0.0.1 ~ 127.255.255.254:本机回环地址,主要用于测试。
169.254.x.x:如果主机上的IP地址为自动获取,而又无法从DHCP获取地址,则取此范围内的一个IP。
224.0.0.0 ~ 239.255.255.255:组播地址。224.0.0.1指所有主机;224.0.0.2指所有路由器;224.0.0.5指OSPF路由器;224.0.0.12代表DHCP服务器/中继代理;224.0.0.18代表VRRP协议
主机位全0:表示网络地址
主机位全1:表示广播

12. 201.222.200.111/18计算主机数?子网掩码?说明计算方法。

将子网掩码转换为二进制:
18个1,后面是14个0:11111111.11111111.11000000.00000000

根据子网掩码的二进制,可以确定网络地址和主机地址的范围:
网络地址:201.222.192.0
主机地址范围:201.222.192.1 - 201.222.255.254

计算主机数:
主机地址范围中,主机地址的数量是:2^14 - 2 = 16,382

所以,该子网的主机数是16,382个。

子网掩码:255.255.192.0


13. 当A(10.0.1.1/16)与B(10.0.2.2/24)通信,A如何判断是否在同一个网段?A和B能否通信?

当 A 向 B 发送数据包时,双方并不知道对方的子网掩码,它们会使用自己的子网掩码与目的 IP 地址进行与运算,将计算出的网络地址与自己的网络地址进行比较

B的IP地址      :               00001010    00000000    00000010    00000010

A的子网掩码  :               11111111       11111111      00000000    00000000

与运算结果    :                00001010     00000000    00000000    00000000

B 的网络地址为 10.0.0.0

A 的网络地址为 10.0.0.0

在 A 看来,B 和自己在同一个网络,因此 A 会直接发送数据包给 B

A的地址         :               00001010  00000000  00000001  00000001

B的子网掩码  :               11111111    11111111    11111111    00000000

与运算结果     :               00001010   00000000   00000001  00000000

B 的网络地址为 10.0.2.0

A 的网络地址为 10.0.1.0 在 B 看来,A 和自己不在同一个网络,因此 B 不会回复 A


14. 如何将10.0.0.0/8划分32个子网?
求每个子网的掩码,主机数。

32=2^n,可知n=5,所以子网掩码为8+5=13=255.248.0.0,主机数为2^19-2


15. 通过网络配置命令,让主机可以上网。 ip, netmask, gateway, dns,主机名。相关命令总结,最终可以通过这些配置让你的主机上网。

配置IP网络

ping qq.com很久没响应,IP a查看IP,添加IP

ip address add 10.0.0.160/24 dev ens160    #添加IP

ip a  #查看ip 

ip address show eth0   #查看eth0

左图原始                                                                 右图添加出个IP

添加网关

ip route   #查看网关
ip route add default via X.X.X.X #添加网关 X.X.X.X为自己添加网关,如10.0.0.2

配置DNS

vi /etv/resolv.conf

#添加下列
nameserver 223.5.5.5

nmcli

常用子命令

show:显示连接信息

up:激活连接

down:断开连接

add:创建新连接

modify:修改连接配置

reload:重新加载连接配置

delete:删除连接``

常用设置

con-name:连接名

ifname:设备名

[+|-]ipv4.addresses:IP 地址

ipv4.gateway:网关[+|-]ipv4.dns :DNS 服务器地址

ipv4.method auto|manual:DHCP 或静态网络配置

autoconnect yes|no:是否自动激活连接

查看所有网络连接

nmcli con show      #查看所有网络连接

连接设备

nmcli device connect virbr0    #连接设备Virbe0
nmcli device status            #查看当前设备


16. 解析/etc/sysconfig/network-scripts/ifcfg-eth0配置格式。

vi /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE="eth0"                                                       #网络接口名
HWADDR="00:0C:29:E5:8D:44"                             #网卡MAC地址 
TYPE="Ethernet"                                                     #网络接口类型,此处是以太网
UUID="8d0680d1-36ff-4a3f-ac93-5ca2b335094d"  #网络接口唯一标识符
ONBOOT="yes"                                                       #开机自动启用此网卡
BOOTPROTO="static"                                             #静态地址
IPADDR=10.0.0.160                                                 #IP地址
PREFIX=24                                                              #子网掩码
GATEWAY=10.0.0.2                                                 #网关
DNS1=223.5.5.5                                                       #首选DNS服务器地址
DNS2=119.29.29.29                                                 #备用DNS服务器地址
 


17. 基于配置文件或命令完成bond0配置

此实验通过vmware实现,已有网卡ens33,IP:10.0.0.154,用于远程连接。vmware编辑配置增加两块网卡,要实现bond,需要新增三个网卡配置文件,配置bond、主网卡、

ip a ,显示两张网卡没配置

 编辑配置bond、ens37、ens38文件

进入到/etc/sysconfig/network-scripts/目录建议ifcfg-bond0、ifcfg-ens37、ifcfg-ens38

cd /etc/sysconfig/network-scripts/

vim ifcfg-bond0

添加代码

NAME=bond0
DEVICE=bond0
TYPE=bond
BOOTPROTO=none
IPADDR=192.168.10.200
PREFIX=24
BONDING_OPTS="mode=1 miimon=100"

vim ifcfg-ens37

NAME=ens37
DEVICE=ens37
BOOTPROTO=none
ONBOOT=yes
MASTER=bond0
SLAVE=yes

vim ifcfg-ens38

NAME=ens38
DEVICE=ens38
ONBOOT=yes
BOOTPROTO=none
MASTER=bond0
SLAVE=yes

完成后使用“ nmcli con reload”重新加载;最后nmcli con show查看

使用其他电脑ping 192.168.10.200


18. 通过ifconfig命令结果找到ip地址.

ifconfig ens160 | awk '/netmask/{print $2}'


19.  使用脚本判断 你主机所在网络内在线的主机IP有哪些? ping通则在线。

#!/usr/bin/bash


net=10.0.0

for i in {1..254};do
    {
        ping -c 1 -w 1 ${net}.${i} > /dev/null && echo ${net}.${i} is "存在活跃"
    }&
done
wait

运行结果

附*Rocky网卡配置、Ubuntu网卡配置

Rocky网卡配置

进到network-scripts文件目录下配置

cd  /etc/sysconfig/network-scripts/

ip a 查看网卡

vim ifcfg-ens37

TYPE=Ethernet
BOOTPROTO=none
NAME=eth0
DEVICE=eth0
ONBOOT=yes
IPADDR=10.0.0.150
PREFIX=24
GATEWAY=10.0.0.2
DNS1=223.5.5.5
nmcli connection reload      #重新加载
nmcli connection up eth0     #激活网卡

Ubuntu网卡配置

进入netplan目录下

cd /etc/netplan/xx.yaml   #xx为自定文件明
新建yaml文件配置
network:
  version: 2
  ethernets:
    eth0:                      #对应网卡名
      addresses:
        - 10.0.0.151/24        #自定IP地址
      nameservers:
        addresses:
          - 223.5.5.5          #DNS
      routes:
        - to: default
          via: 10.0.0.2        #网关
$ netplan apply  #最后重新应用

  • 14
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值