在Linux系统内搭建DNS本地服务器

文章目录

  • Linux的本地DNS服务
    • 一、什么是DNS
      • 1.1、域名
      • 1.2、DNS服务器、DNS客户端和DNS中继
      • 1.3、DNS域名解析
    • 二、搭建DNS服务
      • 2.1、正反向解析
        • 2.1.1.安装bind软件包
        • 2.1.2.修改主配置文件
        • 2.1.3.修改区域配置文件
        • 2.1.4.配置区域数据文件
        • 2.1.5.启动服务、关闭防火墙
        • 2.1.6.本地解析测试
        • 2.1.7.客户端解析测试
          • 1.win 10客户机
          • 2.C-7-2客户机
      • 2.2、主从服务器及正反向解析
        • 2.2.1检查并修改DNS主服务器配置——新建服务器具体配置见2.1正反向解析
        • 2.2.2.建立DNS从服务器
        • 2.2.3.修改DNS从服务器主配置
        • 2.2.4.修改DNS从服务器区域配置文件
        • 2.2.5.启动服务、关闭防火墙
        • 2.2.6.客户端解析测试
          • 1.win 10客户机
          • 2.C-7-2客户机

Linux的本地DNS服务

一、什么是DNS

TCP/IP提供了通过IP地址来连接到设备的功能,但对用户来讲,记住某台设备的IP地址是相当困难的,因此专门设计了一种字符串形式的主机命名机制,这些主机名与IP地址相对应。在IP地址与主机名之间需要有一种转换和查询机制,提供这种机制的系统就是域名系统DNS(Domain Name System)

互联网中,一台计算机与其他计算机通信时,通过IP地址唯一的标志自己。此时的IP地址就类似于我们日常生活中的电话号码。但是,这种纯数字的标识是比较难记忆的,而且数量也比较庞大。DNS的作用就是将人类可读的名称转换为机器识别的IP地址,供计算机相互连接。DNS的工作原理和电话簿相似,都是管理名称和数字之间的映射关系。就像我们日常打电话,一般使用人名查找,很少直接输入电话号码一样。当我们上网打开某个网页、视频时,也很少直接使用IP地址,而是在浏览器里输入的URL地址,例如:https://www.baidu.com,这其实使用的就是计算机的名字,一般称为域名。

1.1、域名

最初设备的域名由字符序列组成、所有设备的域名组成一个未分级的域名结构。未分级的域名结构存在命名冲突、管理维护复杂的缺点。因此,TCP/IP把DNS的域名设计成了分级的树状结构,以 根域. 为起点。。每个申请加入Internet的国家都要向NIC注册一个顶级域名,顶级域采用组织模式和地理模式的划分模式,

在这里插入图片描述

NIC将顶级域的管理权分派给由其指定的管理机构,由这些管理机构再对被授权管理的域继续进行划分,从而形成了二级域。负责划分二级域的管理机构可以授权其下属的管理结构,由它们继续划分域。由此下去,便形成了层次型的Internet域名体系结构。

顶级Internet域名含义
com商业组织
edu教育机构
gov政府机构
mil军事部门
net主要网络支持中心
int国际组织
org其他组织
国家代码国家(按照地理模式划分)
顶级Internet域名及其含义

从语法上讲,每一个域名都是有标号序列组成,而各标号之间用点(小数点)隔开。

以www.baidu.com域名为例,从右到左依次是:

- com:顶级域名。代表商业组织。

- baidu:二级域名,归属于某个公司自己的域名。

- www:三级域名,表明某个公司提供的是什么服务,www代表普通网页。

1.2、DNS服务器、DNS客户端和DNS中继

网络中与DNS相关的设备角色包括DNS服务器DNS客户端DNS中继

DNS服务器是将域名指向对应IP地址的服务器。DNS服务器中保存了一张域名和与之相对应的IP地址的表,以解析消息的域名。域名是分层结构,域名DNS服务器也是对应的层级结构。

分类作用
根DNS服务器根DNS服务器是最高层次的域名服务器,它知道所有顶级服务器的域名和IP地址,当本地域名服务器无法对域名进行解析时,首先对根域名服务器发起请求。
顶级域名服务器顶级域名服务器负责管理该服务器下的所有二级域名,当收到DNS查询请求时,就会给权威域名服务器相应的回答。
权威域名服务器负责某一个区域的域名服务器。当一个顶级域名服务器还不能给出最后查询回答时,就会告知下一步应当请求的权威域名服务器。
本地域名服务器当一个主机发出DNS查询请求时,这个查询请求报文就发送给本地域名服务器。每一个互联网服务提供者ISP都可以拥有一个本地域名服务器。当本地域名服务器无法给出应答时,就会请求最高级的根域名服务器。
DNS服务器的分类

DNS客户端的作用是接收用户程序(User Program)的DNS请求,并对其作出回应。作为DNS客户端的设备上一般具备以下能力:

  • 启动DNS解析:要使用DNS客户端功能,需要在设备上打开DNS解析的开关。

  • 指定服务器的IP地址:要进行DNS域名解析,需要在设备上指定DNS服务器的IP地址。这样才能把查询请求发动到正确的DNS服务器上进行解析。

  • 指定DNS域后缀搜索列表:DNS客户端所访问的一些服务器或主机的域名后缀往往都是相同的。用户可以预先设置一些域名后缀,在域名解析的时候,用户只需要输入域名的部分字段,系统会自动将输入域名加上不同的后缀进行解析。

DNS中继当DNS服务器的IP地址发生变化时,用户网络中每个DNS客户端上的配置都需要改变,这样工作量极大并且容易出错。此时,可以通过部署DNS中继解决该问题。DNS客户端上配置DNS中继的IP地址,DNS服务器的IP地址在DNS中继上配置。之后,DNS客户端会将DNS请求报文直接发送给DNS中继,由DNS中继将收到的DNS请求报文转发至DNS服务器。由此,当DNS服务器的IP地址发生变化时,仅需改变DNS中继上的配置即可,简化了网络管理。

在这里插入图片描述

DNS中继的工作原理

  1. DNS客户端将DNS请求报文发送给DNS中继,即请求报文的目的地址为DNS中继的IP地址。

  2. DNS中继收到请求报文后,将报文转发给DNS服务器,通过DNS服务器进行域名解析

1.3、DNS域名解析

正向解析:根据域名查找对应的IP地址

反向解析:根据IP地址查找对应的域名

在这里插入图片描述

递归查询:将DNS解析请求一探到底,再逐层返回

通过根域名服务器,依次请求顶级域名服务器和权威域名服务器,最终获取对应IP地址,并将该结果保存在本地域名服务器,以待下次DNS请求使用。当用户再次对同一域名发起访问时,可以直接从本地域名服务器获得结果,无需再次发起全球递归查询。

迭代查询:每次DNS解析请求都会用相对应的响应回复

本地域名服务器先将DNS解析请求发送给根域名服务器,根域名服务器会返回响应消息给本地域名服务器并告知去找相对应的顶级域名服务器;
本地域名服务器再将DNS解析请求发送给相对应的顶级域名服务器,顶级域名服务器会返回响应消息给本地域名服务器并告知去找相对应的二级域名或子域名服务器;
最后本地域名服务器将DNS解析请求发送给相对应的子域名服务器,子域名服务器会根据域名的主机名解析出相对应的IP地址后,直接返回给本地域名服务器。

二、搭建DNS服务

实验说明:准备三台CentOS 7虚拟机(C-7-1、C-7-2、C-7-3),一台Windows 10虚拟机(win 10)。实验机在同一网络下,可以互相访问,其中**“C-7-1”、“C-7-3”为服务器**,“C-7-2”、"win 10"为客户机

2.1、正反向解析

实验说明:在“C-7-1”虚拟机中搭建DNS服务器,“C-7-2”、"win 10"为客户机

2.1.1.安装bind软件包
yum makecache                ##检查yum仓库

yum install -y bind            ##安装bind软件

在这里插入图片描述

2.1.2.修改主配置文件
rpm -qc bind            ##查询bind软件配置文件所在路径

    /etc/named.conf                ##主配置文件
    /etc/named.rfc1912.zones       ##区域配置文件
    /var/named/named.localhost     ##区域数据配置文件(模板文件,不可直接在原文件进行更改)

vim /etc/named.conf        ##修改主配置文件
vim  /etc/named.conf
options  {
    listen-on port 53 { any; };    ##监听53端口, Ip地址(DNS服务器的IP))使用提供服务的本地IP,也可用any表示所有
   #listen-on-v6 port 53 {::1; };          ##ipv6行如不使用可以注释掉或者删除
    directory  "/var/named";                ##/var/named 是区域数据文件的默认存放位置
    dump-file  "/var/named/data/cache_dump.db";  ##域名缓存数据库文件的位置
    statistics-file "/var/named/data/named_stats.txt"; ##状态统计文件的位置
    memstatistics-file "/var/named/data/named_mem_stats.txt";  ##内存统计文件的位置
    allow-query { any; };    ##允许使用本DNS解析服务的网段,也可用any,代表所有网段都可访问
    .....
}  
zone "." IN {                ##正向解析"."根区域
        type hint;           ##类型为根区域
        file "named.ca";     ##区域数据文件为named.ca,记录了13台根域服务器的域名和IP地址等信息
}
/etc/named.conf文件解析

在这里插入图片描述

在这里插入图片描述

2.1.3.修改区域配置文件
vim  /etc/named.rfc1912.zones        ##修改区域配置文件

    zone "wl.com" IN {                ##正向解析"wl.com"区域
            type master;            ##类型为主区域
            file "wl.com.zone";        ##指定区域数据文件为"wl.com.zone"
            allow-update { none; };
    };

    zone "33.190.10.in-addr.arpa" IN {        ##反向解析的地址倒过来写,代表解析10.190.33段的地址
            type master;                ##类型为主区域
            file "wl.com.zone.lo";        ##指定区域数据文件为"wl.com.zone.lo"
            allow-update { none; };
    };

在这里插入图片描述

2.1.4.配置区域数据文件
cd /var/named/            ##切换目录到区域数据文件目录

cp -p named.localhost wl.com.zone        ##需要保留源文件的权限和属主的属性复制(-p)

vim wl.com.zone         ##修改区域数据文件“wl.com.zone”

          $TTL 1D            ##设置缓存解析结果的有效时间
          @       IN SOA  wl.com wl.com. (
                                                  0       ; serial
                                                  1D      ; refresh
                                                  1H      ; retry
                                                  1W      ; expire
                                                  3H )    ; minimum
                  NS      wl.com.                        ##记录当前区域的DNS服务器的名称(必不可少)
                  A       10.190.30.10                ##记录主机IP地址(必不可少)
          www  IN A       10.190.33.3              ##记录正向解析www.benet.com对应的IP
          mail IN A       10.190.33.20            ##邮箱的正向解析地址
          ftp  IN CNAME   www                ##CNAME使用别名, ftp是www的别名
          *    IN A       10.190.33.254            ##泛域名解析, "*" 代表任意主机名


cp -p named.localhost wl.com.zone.lo        ##需要保留源文件的权限和属主的属性复制(-p)

vim wl.com.zone.lo             ##修改区域数据文件“wl.com.zone.lo”

          $TTL 1D
          @       IN SOA  wl.com admin.wl.com. (
                                                  0       ; serial
                                                  1D      ; refresh
                                                  1H      ; retry
                                                  1W      ; expire
                                                  3H )    ; minimum
                  NS      wl.com.
                  A       10.190.33.10
          3       PTR     www.wl.com.            #PTR为反向指针,反向解析10.190.33.3地址结果为www.wl.com.
          20      PTR     mail.            ###PTR为反向指针,反向解析10.190.33.20地址结果为mail.wl.com.

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

2.1.5.启动服务、关闭防火墙
systemctl  start  named            ##启动服务“named”

systemctl  stop  firewalld        ##停止服务“firewalld”

setenforce  0            ##关闭防火墙

在这里插入图片描述

2.1.6.本地解析测试
vim /etc/resolv.conf        ##编辑"resolv.conf"文件

    # Generated by NetworkManager
    nameserver 10.190.33.10            ##修改DNS服务器为本机IP




nslookup             ##使用"nslookup"命令解析
> www.wl.com        ##解析域名“www.wl.com”
Server:        10.190.33.10    ##默认DNS服务器
Address:    10.190.33.10#53        ##默认DNS服务器地址

Name:    www.wl.com            ##需要解析的域名
Address: 10.190.33.3        ##解析后的地址
> 
> mail.wl.com
Server:        10.190.33.10
Address:    10.190.33.10#53

Name:    mail.wl.com
Address: 10.190.33.20
>
> ftp.wl.com
Server:        10.190.33.10
Address:    10.190.33.10#53

ftp.wl.com    canonical name = www.wl.com.
Name:    www.wl.com
Address: 10.190.33.3
> 
> 
> 
> 10.190.33.3
3.33.190.10.in-addr.arpa    name = www.wl.com.
> 10.190.33.20
20.33.190.10.in-addr.arpa    name = mail.
> 

在这里插入图片描述

2.1.7.客户端解析测试
1.win 10客户机
## 同时按win键+R键,(先win后R),调出“运行”对话框,然后输入cmd,点确定。

ipconfig/all        ##查看本机所有网卡配置

ping 10.190.33.10        ##pingDNS服务器地址,确保可以和DNS服务互相通信

nslookup www.wl.com        ##解析域名“www.wl.com”

nslookup mail.wl.com    


nslookup 10.190.33.3

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

成功

2.C-7-2客户机
ping 10.190.33.10        ##pingDNS服务器地址,确保可以和DNS服务互相通信

vim /etc/resolv.conf        ##编辑"resolv.conf"文件

    # Generated by NetworkManager
    nameserver 10.190.33.10            ##修改DNS服务器IP




nslookup             ##使用"nslookup"命令解析
> www.wl.com        ##解析域名“www.wl.com”
Server:        10.190.33.10    ##默认DNS服务器
Address:    10.190.33.10#53        ##默认DNS服务器地址

Name:    www.wl.com            ##需要解析的域名
Address: 10.190.33.3        ##解析后的地址
>
> 10.190.33.3
3.33.190.10.in-addr.arpa    name = www.wl.com.

在这里插入图片描述

成功

2.2、主从服务器及正反向解析

实验说明:基于实验“正反向解析”增加“主从服务器”实验。在**“C-7-1”虚拟机为主服务器,“C-7-3”虚拟机为从服务器**;“C-7-2”、"win 10"为客户机

2.2.1检查并修改DNS主服务器配置——新建服务器具体配置见2.1正反向解析
vim /etc/named.rfc1912.zones
      zone "wl.com" IN {
              type master;            ##类型为主区域
              file "wl.com.zone";
              allow-update { none; };
              allow-transfer { 10.190.33.30; };          ##允许从服务器下载正向区域数据,这里添从服务器的IP地址
      };

      zone "33.190.10.in-addr.arpa" IN {
              type master;        ##类型为主区域
              file "wl.com.zone.lo";
              allow-update { none; };
              allow-transfer { 10.190.33.30; };          ##允许从服务器下载正向区域数据,这里添从服务器的IP地址
      };

在这里插入图片描述

2.2.2.建立DNS从服务器
yum makecache                ##检查yum仓库

yum install -y bind            ##安装bind软件

在这里插入图片描述

2.2.3.修改DNS从服务器主配置
vim  /etc/named.conf
options  {
    listen-on port 53 { 10.190.33.30; };    ##监听53端口, Ip地址(DNS服务器的IP))使用提供服务的本地IP,也可用any表示所有
    #listen-on-v6 port 53 {::1; };          ##ipv6行如不使用可以注释掉或者删除
    directory  "/var/named";                ##/var/named 是区域数据文件的默认存放位置
    dump-file  "/var/named/data/cache_dump.db";  ##域名缓存数据库文件的位置
    statistics-file "/var/named/data/named_stats.txt"; ##状态统计文件的位置
    memstatistics-file "/var/named/data/named_mem_stats.txt";  ##内存统计文件的位置
    allow-query { any; };    ##允许使用本DNS解析服务的网段,也可用any,代表所有网段都可访问
    .....
}  

在这里插入图片描述

2.2.4.修改DNS从服务器区域配置文件
vim /etc/named.rfc1912.zones

      zone "wl.com" IN {
              type slave;                            ##类型为从区域
              masters { 10.190.33.10; };            ##指定主服务器的IP地址
              file "slaves/wl.com.zone";       ##下载的区域数据文件保存到slaves/目录下
      };

      zone "33.190.10.in-addr.arpa" IN {    
              type slave;                        ##类型为从区域
              masters { 10.190.33.10; };         ##指定主服务器的IP地址
              file "slaves/wl.com.zone.lo";         ##下载的区域数据文件保存到slaves/目录下
      };

在这里插入图片描述

2.2.5.启动服务、关闭防火墙
  • C-7-1
systemctl  start  named            ##启动服务“named”

systemctl  stop  firewalld        ##停止服务“firewalld”

setenforce  0            ##关闭防火墙

在这里插入图片描述

  • C-7-3
systemctl  start  named            ##启动服务“named”

systemctl  stop  firewalld        ##停止服务“firewalld”

setenforce  0            ##关闭防火墙

在这里插入图片描述

2.2.6.客户端解析测试
1.win 10客户机
## 同时按win键+R键,(先win后R),调出“运行”对话框,然后输入cmd,点确定。

ipconfig/all        ##查看本机所有网卡配置

ping 10.190.33.10        ##pingDNS服务器地址,确保可以和DNS主服务互相通信

ping 10.190.33.30        ##pingDNS服务器地址,确保可以和DNS从服务互相通信

##在IP地址配置界面手动添加主DNS服务器地址:10.190.33.10,备用DNS服务器地址:10.190.33.30

nslookup www.wl.com        ##解析域名“www.wl.com”  

nslookup 10.190.33.3

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

关闭主服务器后测试

## 同时按win键+R键,(先win后R),调出“运行”对话框,然后输入cmd,点确定。

ipconfig /flushdns        ####DNS缓存清理

    Windows IP 配置

    已成功刷新 DNS 解析缓存。

nslookup www.wl.com        ##使用默认DNS服务器进行解析
DNS request timed out.
    timeout was 2 seconds.
服务器:  UnKnown
Address:  10.190.33.10

DNS request timed out.
    timeout was 2 seconds.
DNS request timed out.
    timeout was 2 seconds.
DNS request timed out.
    timeout was 2 seconds.
DNS request timed out.
    timeout was 2 seconds.
*** 请求 UnKnown 超时

##显示超时,因为主DNS服务器的named服务已经停止运行,所以无法解析
##因为Win系统bug,无法自动切换备用服务器。

nslookup www.wl.com 10.190.33.30        ##使用指定DNS服务器“10.190.33.30”进行解析
服务器:  UnKnown
Address:  10.190.33.30        ##DNS服务器地址10.190.33.30

名称:    www.wl.com
Address:  10.190.33.3

##解析成功

nslookup 10.190.33.20 10.190.33.30
服务器:  UnKnown
Address:  10.190.33.30

名称:    mail
Address:  10.190.33.20

在这里插入图片描述

2.C-7-2客户机
ping 10.190.33.10        ##pingDNS服务器地址,确保可以和DNS主服务互相通信

ping 10.190.33.30        ##pingDNS服务器地址,确保可以和DNS从服务互相通信

vim /etc/resolv.conf        ##编辑"resolv.conf"文件

    # Generated by NetworkManager
    nameserver 10.190.33.10            ##修改DNS主服务器IP
    nameserver 10.190.33.30            ##修改DNS主服务器从P



nslookup             ##使用"nslookup"命令解析
> www.wl.com        ##解析域名“www.wl.com”
Server:        10.190.33.10    ##默认DNS服务器
Address:    10.190.33.10#53        ##默认DNS服务器地址

Name:    www.wl.com            ##需要解析的域名
Address: 10.190.33.3        ##解析后的地址
>
> 10.190.33.3
3.33.190.10.in-addr.arpa    name = www.wl.com.

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

关闭主服务器后测试

rm -rf /var/cache/bind/named_dump.db

nslookup www.wl.com        ##解析域名“www.wl.com”

nslookup 10.190.33.3

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/576301.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

网络安全实训Day24(End)

写在前面 并没有完整上完四个星期,老师已经趁着清明节假期的东风跑掉了。可以很明显地看出这次持续了“四个星期”实训的知识体系并不完整,内容也只能算是一次基础的“复习”。更多的内容还是靠自己继续自学吧。 网络空间安全实训-渗透测试 文件包含攻击…

美国FBA头程物流降本增效策略解析

随着跨境电商的迅速发展,美国FBA头程物流作为连接卖家与消费者的重要环节,其成本控制对于提高卖家盈利能力具有重要意义。本文将从多个方面探讨如何降低美国FBA头程物流成本,帮助卖家在激烈的市场竞争中取得优势。 1.合理安排发货计划是降低成…

【产品经理修炼之道】- 消金支付体系

我们常听说“互联网的尽头是放贷”,而当支付与金融结合会衍生出各种场景。本文将给大家拆解下不同消费金融场景下的支付案例,一起来看看吧。 各位小伙伴,大家好! 我们常听说“互联网的尽头是放贷”,确实这说其实话糙…

Docker基础+虚拟化概念

目录 一、虚拟化简介 1、虚拟化概述 2、cpu的时间分片(cpu虚拟化) 3、cpu虚拟化性性能瓶颈 4、虚拟化工作 4.1虚拟机工作原理 4.2两大核心组件:QEMU、KVM 4.2.1QEMU: 4.2.2KVM: 5、虚拟化类型 ①全虚拟化: …

string的OJ题

1.字符串相加 给定两个字符串形式的非负整数 num1 和num2 ,计算它们的和并同样以字符串形式返回。 你不能使用任何內建的用于处理大整数的库(比如 BigInteger), 也不能直接将输入的字符串转换为整数形式。 思路:从字…

【Linux】git和gdb

下面还有两个Linux中会用到的工具,一个是给git,可以叫版本控制器,就是对我们写的代码进行版本控制 一个是gdb,就是我们C语言/C的代码调试工具 下面我们分别来介绍一下 git git和Linux一样,也是一个开源项目&#xff0c…

高频 LC、压控及晶体振荡器

实验名称 高频 LC、压控及晶体振荡器 一、实验目的 1. 正确地使用数字频率计测试频率。 2. 了解电源电压,负载及温度等对振荡须率的影响,从而加深理解为提高频率稳定度应采取的措施。 二、实验原理- 组成一个振荡器能否…

深度学习知识点:循环神经网络(RNN)、长短期记忆网络(LSTM)、门控循环单元(GRU)

深度学习知识点:循环神经网络(RNN)、长短期记忆网络(LSTM)、门控循环单元(GRU) 前言循环神经网络(RNN)RNNs(循环神经网络)训练和传统ANN&#xff…

Golang操作Redis

一. Redis介绍 1.1 简介 Redis是完全开源免费的,遵循BSD协议,是一个高性能的key-value数据库。 Redis与其它的key-value缓存产品有以下三个特点: Redis支持数据持久化,可以见内存中的数据报错在磁盘中,重启的时候可以…

从Kafka的可靠性设计体验软件设计之美

目录 1. Kafka可靠性概述 2. 副本剖析 2.1 什么是副本 2.2 副本失效场景 2.3 数据丢失场景 2.4 解决数据丢失方案 3. 日志同步机制 4. 可靠性分析 1. Kafka可靠性概述 Kafka 中采用了多副本的机制,这是大多数分布式系统中惯用的手法,以此来实现水平扩…

webpack热更新原理详解

文章目录 前言基础配置创建项目HMR配置 HMR交互概览HMR流程概述HMR实现细节初始化注册监听编译完成事件启动服务监听文件代码变化服务端发送消息客户端收到消息热更新文件请求热更新代码替换 问题思考 前言 刷新分为两种:一种是页面刷新,不保留页面状态…

品鉴中的文化传承:如何理解红酒在历史与文化中的地位

红酒不仅是产品,更是一种文化和历史的传承。在品鉴雷盛红酒的过程中,了解红酒背后的历史和文化,能够更好地理解其风格和特点,提升品鉴体验。 红酒的历史可以追溯到公元前6000年左右的古埃及时期。自那时起,红酒就成为了…

新手Pytorch入门笔记-transforms.Compose()

我使用的图片是上图,直接下载即可 transforms.Compose 是PyTorch中的一个实用工具,用于创建一个包含多个数据变换操作的变换对象。这些变换操作通常用于数据预处理,例如图像数据的缩放、裁剪、旋转等。使用transforms.Compose 可以将多个数据…

Linux系统编程---线程同步

一、同步概念 同步即协同步调,按预定的先后次序运行。 协同步调,对公共区域数据【按序】访问,防止数据混乱,产生与时间有关的错误。 数据混乱的原因: 资源共享(独享资源则不会)调度随机(意味着数据访问会出现竞争)线…

监控员工上网用什么软件比较好 八款电脑监控神器送给你

监控员工上网用什么软件比较好 八款电脑监控神器送给你 监控员工上网行为的软件有多种,每款软件都有其独特的功能和优势。现在让我们一起来探寻最佳员工上网监控神器! 想知道哪款电脑监控软件最炫酷、最实用吗?来看看这里,为你揭…

36.WEB渗透测试-信息收集-企业信息收集(3)

免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动! 内容参考于: 易锦网校会员专享课 上一个内容:35.WEB渗透测试-信息收集-企业信息收集(2) 重要信息收集&#xf…

Python 中的递归排列

在 Python 中使用递归计算排列,适合绝对初学者 介绍 有些人发现很难理解递归算法。 这个技巧向绝对初学者展示了如何使用递归查找排列。Python 背景 这个技巧的想法来自一个问答问题:可怜的 OP 花了三天时间“翻头”,试图弄清楚一小段代码如何能够生成输入列表项的所有排列。…

ROS_第一个程序_Hello_world

ROS的第一个项目:输出Hello World 我们将学习如何创建一个简单的ROS(Robot Operating System)项目,该项目将在终端中输出"Hello World"。我们将使用Python语言进行编程。 环境准备 首先,确保你的计算机已…

【目标检测】基于深度学习的布匹表面缺陷检测(yolov5算法,4类,附代码和数据集)

写在前面: 首先感谢兄弟们的关注和订阅,让我有创作的动力,在创作过程我会尽最大能力,保证作品的质量,如果有问题,可以私信我,让我们携手共进,共创辉煌。(专栏订阅用户订阅专栏后免费提供数据集和源码一份,超级VIP用户不在服务范围之内) 路虽远,行则将至;事虽难,做…

硬件24、嘉立创EDA丝印的优化和调整

1、调整全部丝印的属性 先选中一个丝印,然后右键点击它,选择查找,然后选择查找全部 选择查找全部这个时候可以设置所有丝印在元件的位置了,布局-》属性位置,位号,属性位置设置为上边,这时丝印就…
最新文章