【運維進階】DHCP服務配置和DNS域名解析

DHCP服務配置和DNS域名解析

DHCP 服務介紹

在大型網絡中,系統靜態分配IP地址面臨問題:

  1. 確保不要同時在多個系統上使用同一個地址。
  2. 部署新系統通常需要手動分配其IP地址。在云環境中,實例的網絡是自動化配置的。

動態主機配置協議(DHCP-Dynamic Host Configuration Protocol)提供了一種自動配置網絡參數的方法,例如IP地址,默認網關,DNS服務器和域或NTP服務器。在網絡中部署DHCP服務器,您可以集中控制這些參數。

DHCP有兩種協議:

  • 用于IPv4網絡的 DHCPv4
  • 用于IPv6網絡的 DHCPv6

本文只介紹DHCPv4。

部署 DHCP 服務器

要配置DHCPv4服務器,請首先使用ip addr命令確認您的網絡接口配置是否指定了BROADCAST地址。

[root@server ~ 21:23:01]# ip addr 
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00inet 127.0.0.1/8 scope host lovalid_lft forever preferred_lft foreverinet6 ::1/128 scope host valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000link/ether 00:0c:29:e1:56:ec brd ff:ff:ff:ff:ff:ffinet 10.1.8.10/24 brd 10.1.8.255 scope global noprefixroute ens33valid_lft forever preferred_lft foreverinet6 fe80::20c:29ff:fee1:56ec/64 scope link valid_lft forever preferred_lft forever

服務器必須具有靜態IP地址。

安裝 DHCP 軟件
# 安裝軟件包
[root@server ~ 21:24:44]# yum install -y dhcp# 配置防火墻,放行dhcp服務
[root@server ~ 21:25:43]#  firewall-cmd --add-service=dhcp
[root@server ~ 21:26:01]#  firewall-cmd --add-service=dhcp --permanent
配置 DHCP 服務器

dhcpd服務使用/etc/dhcp/dhcpd.conf配置文件。 dhcp軟件包提供/usr/share/doc/dhcp-*/dhcpd.conf.example 配置文件示例。

[root@server ~ 21:26:13]#  /bin/cp /usr/share/doc/dhcp-*/dhcpd.conf.example /etc/dhcp/dhcpd.conf
[root@server ~ 21:27:22]# vim /etc/dhcp/dhcpd.conf

典型的DHCP配置示例:

subnet 10.1.8.0 netmask 255.255.255.0 {range 10.1.8.101 10.1.8.130;option domain-name-servers 223.5.5.5;option domain-name "xiexin.cloud";option routers 10.1.8.2;option broadcast-address 10.1.8.255;default-lease-time 600;max-lease-time 7200;
}

配置說明:

  • authoritative,指示服務器對其所管理的子網具有權威性。
  • subnet,提供的子網詳。
  • range,指定服務器在該范圍內分配IP地址。
  • option routers,指定服務器提供默認網關地址。
  • option domain-name-servers,指定服務器提供DNS名稱服務器。
  • option domain-search,指定服務器提供DNS域搜索列表。
  • default-lease-time,提供網絡信息默認租期,如果客戶端不要求任何特定的租期。單位秒。
  • max-lease-time,指示服務器可以從客戶端請求接受的最大租期。單位秒。

客戶端系統上的NetworkManager使用domain-name-serversdomain-search更新resolv.conf文件中的nameserversearch參數。

驗證 DHCP 配置
# 驗證配置文件語法
[root@server ~ 21:32:05]# dhcpd -t
Internet Systems Consortium DHCP Server 4.2.5
Copyright 2004-2013 Internet Systems Consortium.
All rights reserved.
For info, please visit https://www.isc.org/software/dhcp/
Not searching LDAP since ldap-server, ldap-port and ldap-base-dn were not specified in the config file
啟用并啟動服務
# 啟用并啟動服務
[root@server ~ 21:35:19]# systemctl enable dhcpd --now# 查看服務狀態
[root@server ~ 21:35:53]# systemctl status dhcpd
● dhcpd.service - DHCPv4 Server DaemonLoaded: loaded (/usr/lib/systemd/system/dhcpd.service; enabled; vendor preset: disabled)Active: active (running) since 三 2025-08-06 21:21:04 CST; 14min agoDocs: man:dhcpd(8)man:dhcpd.conf(5)Main PID: 1023 (dhcpd)Status: "Dispatching packets..."CGroup: /system.slice/dhcpd.service└─1023 /usr/sbin/dhcpd -f -cf /etc/dhcp/dhcpd.conf -user dhcpd -group dhcpd --no-pi...
........

配置 DHCP 客戶端

# 添加一個自動獲取ip連接,假設網卡設備名為ens192
[root@server ~ 21:38:13]# nmcli connection add con-name dynamic type ethernet ifname ens192
[root@server ~ 21:38:29]# nmcli connection up dynamic# 驗證
[root@client ~ 21:38:36]# ip addr show ens192
3: ens192: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000link/ether 00:0c:29:26:13:b5 brd ff:ff:ff:ff:ff:ffaltname enp11s0inet 10.1.8.101/24 brd 10.1.8.255 scope global dynamic noprefixroute ens192valid_lft 597sec preferred_lft 597secinet6 fe80::95db:2216:1a36:615/64 scope link noprefixroute valid_lft forever preferred_lft forever

基于 MAC 地址預留IP地址

在配置文件中,host聲明可以將MAC地址綁定到IP地址。 此配置對于始終為特定系統的網絡接口提供相同的IP地址特別有用,尤其是Web或數據庫系統之類的服務器。

客戶端MAC地址查看

[root@client ~ 21:38:56]# ip link show ens192
3: ens192: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000link/ether 00:0c:29:26:13:b5 brd ff:ff:ff:ff:ff:ffaltname enp11s0

在以下示例中,服務器始終為MAC地址是00:0c:29:26:13:b5的系統分配10.1.8.20地址。

/etc/dhcp/dhcpd.conf最后添加如下內容:

host client.linux.fun {hardware ethernet 00:0c:29:26:13:b5;fixed-address 10.1.8.30;
}

重啟服務

[root@server ~ 21:39:11]# systemctl restart dhcpd

客戶端驗證

# 激活連接
[root@client ~ 21:39:23]# nmcli connection up dynamic# 驗證
[root@client ~ 21:39:29]# ip addr show ens192
3: ens192: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000link/ether 00:0c:29:26:13:b5 brd ff:ff:ff:ff:ff:ffaltname enp11s0inet 10.1.8.30/24 brd 10.1.8.255 scope global dynamic noprefixroute ens192valid_lft 245sec preferred_lft 245secinet6 fe80::95db:2216:1a36:615/64 scope link noprefixroute valid_lft forever preferred_lft forever

DNS 服務介紹

DNS 服務介紹

DNS(Domain Name System,域名系統)服務是一種用于將域名轉換為IP地址的分布式數據庫服務。它是互聯網的核心服務之一,使得用戶能夠通過易于記憶的域名來訪問網站和其他網絡服務,而無需記住復雜的IP地址。

DNS 也是一個存儲網絡主機和資源目錄的分層命名系統。 目錄中的信息將網絡名稱映射到不同資源記錄。

  • 根域:DNS層次結構最頂層,使用獨立的"."表示。
  • 頂級域:DNS層次結構第二層,例如**.com**,.net和**.org**等域。
  • 二級域:DNS層次結構第三層,例如**laoma.cloud **和 redhat.com等域。由各個組織使用。
  • 以此類推。

在這里插入圖片描述

學習DNS層次結構前,首先要搞清楚DNS層次結構中一些術語,例如domain,subdomain和zone等。

Domain

domain 是 resource records 的集合,該集合以通?名結尾,表示 DNS 命名空間的整個?樹,如 laoma.cloud。

top-level domain(TLD- 頂級域)由 Internet Assigned Numbers Authority(IANA-互聯網號碼分配機構)管理,并負責委派頂級域。

常見的TLD類型:

  • Generic TLDs(gTLD-通用頂級域名),最初是按主題組織的,包括.com,.edu和.net等。
  • Country code TLDs(ccTLD-國家代碼頂級域名),根據ISO 3166-1標準在國家范圍上組織的,并包括.us,.uk,.cn和.ru之類的域。
Subdomain

Subdomain 是另一個域的完整子樹的域。 在討論兩個域之間的關系時使用此術語。 例如,lab.laoma.cloudlaoma.cloud的子域,而laoma.cloud是**.com的子域。 我們也可以將laoma.cloud稱為第二級域,并將lab.laoma.cloud**稱為第三級域。

Zone

Zone是特定名稱服務器直接負責的域。 它可能是整個域,也可能只是域的一部分。Zone可以將部分或全部子域都委派給另一個名稱服務器或多個名稱服務器。

例如,root名稱服務器對root zone具有權威性,但它們將.com域的職責委派給其他名稱服務器,這些名稱服務器為.com區域提供權威性應答。 這些服務器還可以繼續將責任委派給其他名稱服務器。

DNS 查詢

DNS 查詢分為以下幾種類型:

在這里插入圖片描述

DNS 資源記錄

資源記錄(Resource Record)是 DNS 數據庫中的基本數據單位,用于描述域名與各種信息之間的關系。

在這里插入圖片描述

主機和資源記錄

?個主機,無論是客戶端還是服務器,都具有以下 DNS 資源記錄:

  • ?個或多個A或AAAA記錄

  • 用于將其IP地址反向映射到名稱的PTR記錄

  • ?個或多個CNAME記錄(可選)

DNS zone 還具有以下資源記錄:

  • 唯一的 SOA 記錄

  • 每個權威名稱服務器的 NS 記錄

  • ?個或多個MX記錄(可選)

  • 用于在域中查找服務的?個或多個SRV記錄(可選)

配置權威名稱服務器
權威名稱服務器架構

什么是權威名稱服務器?
權威名稱服務器 是 DNS 系統中的核心角色,負責一個或多個域(zone)的最終解析權,它可以:

  • 保存域名 → IP 的真實記錄(A、CNAME 等)

  • 對該域的查詢給出權威答案

  • 不會再向其他服務器轉發請求

權威 DNS 服務器的基本組成
主服務器(Primary / Master)

  • 也叫“權威源”。

  • 管理員手動編寫 zone 文件,保存所有資源記錄。

  • 是域的配置和數據中心。

  • 通常使用 type master 配置。

從服務器(Secondary / Slave)

  • 通過 zone transfer(區域傳送) 從主服務器同步數據。

  • 不直接編輯 zone 文件,只讀并響應查詢。

  • 起到容災備份、負載均衡作用。

  • 通常使用 type slave 配置。

安裝 BIND

通過安裝bind軟件包來安裝BIND。 名稱服務器本身作為named服務運行。 bind包將HTML和PDF格式的BIND文檔在安裝在/usr/share/doc/bind/目錄。

[root@server ~ 21:54:49]# yum install -y bind bind-utils

軟件包說明:

  • bind,服務器軟件包。
  • bind-utils,bind工具軟件包。

bind軟件包默認將服務配置為基本的遞歸緩存名稱服務器。 它被配置為localhost、相關域和地址的primary服務器,以減輕根名稱服務器的負擔。 此默認配置還限制了對本地主機上程序的訪問。 它偵聽IPv4和IPv6環回接口的端口53 UDP/TCP(127.0.0.1和:: 1)上的連接。

配置 BIND

named主要配置文件是**/etc/named.conf**。 該文件控制BIND的基本操作,由root用戶(named組)擁有,具有八進制權限0640,并且具有named_conf_t SELinux類型。

配置文件還指定了每個區域的配置文件位置,這些文件通常保存在**/var/named**中。

配置DNS服務器需要執行以下步驟:

  • 配置地址匹配列表。
  • 配置named偵聽的IP地址。
  • 配置客戶端的訪問控制。
  • 配置zone。
  • 編寫區域文件。
定義地址匹配列表

在/etc/named.conf文件的開頭,可以使用acl指令定義地址匹配列表。 acl指令不是用于控制客戶端對服務器的訪問,而是使用它們來定義IP地址和網絡列表。

它們提供別名,可以與訪問控制指令和其他配置選項一起使用,并使更新配置文件更加容易。

條目可以是完整的IP地址或網絡,用尾點(10.1.8.)或CIDR表示法(192.168.0/24或2001:db8::/32)表示,也可以使用先前定義的地址匹配列表的名稱。

請考慮以下ACL定義:

[root@server ~ 21:54:52]# vim /etc/named.conf
acl trusted-nets { 192.168.10.0/24; 192.168.20.0/24; };
acl classroom { 10.1.8.0/24; };

在其值中使用classroom的任何指令都將與10.1.8.0/24網絡和192.168.1.21中的主機匹配。acl語句定義的地址集可以被多個指令引用。

named中內置了四個預定義的ACL:

ACLDescription
noneMatches no hosts.
anyMatches all hosts.
localhostMatches all IP addresses of the DNS server.
localnetsMatches all hosts from the DNS server’s local subnets.
配置 named 偵聽的IP地址

我們可以在/etc/named.conf文件options塊中指定許多全局設置。listen-onlisten-on-v6指令,指定了命名監聽的接口和端口。

  • listen-on選項采用以分號分隔的IPv4地址列表。
  • listen-on-v6使用IPv6地址。
[root@server ~ 21:56:35]# vim /etc/named.conf
options {listen-on port 53 { 127.0.0.1;10.1.8.10; };listen-on-v6 port 53 { ::1; };directory       "/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";recursing-file  "/var/named/data/named.recursing";secroots-file   "/var/named/data/named.secroots";allow-query     { localhost;10.1.8.0/24; };.......
配置 zone
[root@server ~ 22:00:23]# vim /etc/named.conf
......
# 最后添加如下內容
zone "xiexin.cloud" IN {type master;file "xiexin.cloud.zone";
};
zone "8.1.10.in-addr.arpa" IN {type master;file "10.1.8.zone";
};

配置說明:

  • type,指定服務器角色。
  • file,指定相對路徑名。 相對路徑由 options 塊中的 directory 指令設置。
創建區域文件

輔助區域文件應保存在/var/named/slaves中。輔助服務器啟動時,會將其緩存的區域版本與主服務器上的當前版本進行比較:如果區域文件版本是最新的,則使用該區域文件; 如果區域文件版本不是最新的或文件不存在,則named執行區域傳輸并將結果緩存在該文件中。

BIND 應該能夠讀取這些區域文件,但不能寫入它們。 這些文件應歸root用戶和named組所有,以便守護程序在某種程度上受到損害時不能更改它們。

[root@server ~ 22:02:52]# touch /var/named/xiexin.cloud.zone /var/named/10.1.8.zone
[root@server ~ 22:02:59]# chmod 640 /var/named/*.zone
[root@server ~ 22:03:10]# chown root:named /var/named/*.zone# 如果系統開啟了selinux功能,執行下面命令設置文件標簽
[root@server ~ 22:03:24]# chcon -t named_zone_t /var/named/*.zone
添加記錄

正向記錄,將名稱映射到IP地址和其他記錄。該區域文件必須具有:

  • SOA記錄。
  • 每個公用名稱服務器的NS記錄。
  • 該區域的其他A,AAAA,CNAME,MX,SRV和TXT記錄。

示例:xiexin.cloud域

[root@server ~ 22:03:28]# vim /var/named/xiexin.cloud.zone
$TTL 3600
@ IN SOA dns.xiexin.cloud. root.xiexin.cloud. (42 ; serial3H ; secondary refresh15M ; secondary retry1W ; secondary timeout15M ; minimum cache TTL for negative answers
)IN NS dns.xiexin.cloud.
dns            IN A 10.1.8.10
server         IN A 10.1.8.10
student        IN CNAME client.xiexin.cloud.
client         IN A 10.1.8.11
www         30 IN A 10.1.8.200
@              IN MX 10 mail.xiexin.cloud.
mail           IN A 10.1.8.253

示例說明:

  • @字符代表區域的名稱,避免重復鍵入,并且在某些情況下允許重復使用。
  • 區域文件中的SOA記錄與前面的示例中的SOA記錄是等效的。
  • 如果記錄的名稱為空,則其值與前面的記錄相同。

因此,在前面的示例中:

  • 第一個記錄是laoma.cloud.的SOA記錄
  • 接下來的記錄是laoma.cloud.的NS記錄
  • 然后有一個dns的A記錄。
  • 然后有一個server的A記錄。
  • 然后有一個student的CNAME記錄。
  • 然后有一個client的A記錄。
  • 然后有一個域的MX記錄。
  • 然后有一個mail的A記錄。

任何不以點號結尾的名稱均被視為部分主機名,應將區域名稱添加為完全合格的域名。 換句話說,server等效于server.laoma.cloud.

反向記錄,將IP地址映射到主機名。該區域文件必須具有:

  • SOA記錄
  • NS記錄
  • PTR記錄。

示例:8.1.10.inaddr.arpa區域

[root@server ~ 22:05:16]# vim /var/named/10.1.8.zone
$TTL 3600
@ IN SOA dns.xiexin.cloud. root.xiexin.cloud. (42 ; serial3H ; secondary refresh15M ; secondary retry1W ; secondary timeout15M ; minimum cache TTL for negative answers
)IN NS dns.xiexin.cloud.
10             IN PTR server.xiexin.cloud.
10             IN PTR dns.xiexin.cloud.
11             IN PTR client.xiexin.cloud.
11             IN PTR student.xiexin.cloud.
200            IN PTR www.xiexin.cloud.
253            IN PTR mail.xiexin.cloud.

IP地址的“名稱”不需要包括其余的域名,1代替1.8.1.10.in-addr.arpa.。

運行 BIND 和 客戶端測試
# 啟動服務[root@server named 15:14:20]# systemctl enable named --now[root@client ~ 15:29:46]# nmcli connection delete ens36-dhcp 成功刪除連接 "ens36-dhcp" (e0d06ed6-eaa6-49fd-93a3-a755c7dd51ce)# 測試# 方式1:配置客戶端 DNS[root@client ~ 15:30:08]# nmcli connection modify ens33 ipv4.dns 10.1.8.10[root@client ~ 15:30:35]# nmcli connection up ens33 連接已成功激活(D-Bus 活動路徑:/org/freedesktop/NetworkManager/ActiveConnection/7)[root@client ~ 15:30:41]# cat /etc/resolv.conf # Generated by NetworkManagersearch xiexin.cloudnameserver 10.1.8.10[root@client ~ 15:36:56]# ping studentPING client.xiexin.cloud (10.1.8.11) 56(84) bytes of data.64 bytes from client.xiexin.cloud (10.1.8.11): icmp_seq=1 ttl=64 time=0.009 ms64 bytes from client.xiexin.cloud (10.1.8.11): icmp_seq=2 ttl=64 time=0.031 ms# 方式2:dig工具[root@client ~ 16:12:38]# yum install -y bind-utils[root@client ~ 16:15:18]# dig @10.1.8.10 student.xiexin.cloud.; <<>> DiG 9.11.4-P2-RedHat-9.11.4-26.P2.el7_9.16 <<>> @10.1.8.10 student.xiexin.cloud.; (1 server found);; global options: +cmd;; Got answer:;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 62303;; flags: qr aa rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 1, ADDITIONAL: 2;; OPT PSEUDOSECTION:; EDNS: version: 0, flags:; udp: 4096;; QUESTION SECTION:;student.xiexin.cloud.        IN  A;; ANSWER SECTION:student.xiexin.cloud. 3600    IN  CNAME   client.xiexin.cloud.client.xiexin.cloud.  3600    IN  A   10.1.8.11;; AUTHORITY SECTION:xiexin.cloud.     3600    IN  NS  dns.xiexin.cloud.;; ADDITIONAL SECTION:dns.xiexin.cloud.     3600    IN  A   10.1.8.10;; Query time: 0 msec;; SERVER: 10.1.8.10#53(10.1.8.10);; WHEN: 三 8月 06 16:16:39 CST 2025;; MSG SIZE  rcvd: 118

額外實踐:域名解析與 Apache 網站部署

操作環境及設備
要有一個自己的域名,比如:xiexin.cloud
還要有公網服務器
遠程工具xshell
默認端口
網站根目錄 /www/xiexin.cloud
操作步驟
  1. 域名解析配置

在這里插入圖片描述

  1. 使用 Xshell 連接服務器

  2. 在服務器中創建網站目錄與首頁文件

cd /www
mkdir xiexin.cloud
echo 'Welcome to xiexin site' > xiexin.cloud/index.html

/www/xiexin.cloud/是你的網站目錄,index.html是首頁文件

  1. 配置 Apache 虛擬主機
# 首先進入配置目錄 
cd /etc/httpd/conf.d/
vim vhost-xiexin.cloud.conf
.....<VirtualHost *:80>DocumentRoot "/www/xiexin.cloud"ServerName www.yuxb.cloud<Directory "/www/xiexin.cloud">AllowOverride None# Allow open access:Require all granted</Directory></VirtualHost>
  1. 重啟 Apache 服務
 systemctl restart httpd
  1. 瀏覽器訪問測試
訪問地址:www.xiexin.cloud:xxx

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/917821.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/917821.shtml
英文地址,請注明出處:http://en.pswp.cn/news/917821.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

VisionPro MR環境下虛擬物體與現實的透明度混合

display.rgb (virtualcontent.rgb*1)(passthrough.rgb*(1 - vistualcontent.a) viirtualcontent預乘過a值了&#xff0c;跟透明度混合公式一致 人頭檢測挖孔不清晰問題&#xff0c;這個a值變成設備層動態檢測人頭的a值&#xff0c;當面前的渲染壓力過大時&#xff0c;會導致…

css怪異模式(Quirks Mode)和標準模式(Standards Mode)最明顯的區別

文章目錄css怪異模式&#xff08;Quirks Mode&#xff09;和標準模式&#xff08;Standards Mode&#xff09;最明顯的區別詳細對比示例對比&#xff08;盒模型&#xff09;標準模式&#xff08;Standards Mode&#xff09;怪異模式&#xff08;Quirks Mode&#xff09;如何觸發…

一種簡單的3dnr去噪算法介紹

一段未經過插補的視頻圖像可以分解為若干幀&#xff0c;為了能正確地找到并去除圖像幀中的噪聲污染&#xff0c;由于視頻圖像各幀的連續性&#xff0c;在去噪的過程中就必須考慮幀圖像的空間性和時間性&#xff0c;一個簡單的例子&#xff0c;在去噪算法中就必須考慮&#xff0…

【數據結構初階】--排序(四):歸并排序

&#x1f525;個人主頁&#xff1a;草莓熊Lotso &#x1f3ac;作者簡介&#xff1a;C研發方向學習者 &#x1f4d6;個人專欄&#xff1a; 《C語言》 《數據結構與算法》《C語言刷題集》《Leetcode刷題指南》 ??人生格言&#xff1a;生活是默默的堅持&#xff0c;毅力是永久的…

GaussDB 并行創建索引

1 背景當業務數據在單表存儲達到一定的數量級時&#xff0c;此時對表創建索引是要花費時間的。GaussDB為了解決這個問題采用并行創建索引技術&#xff0c;以提高創建索引的效率。2 示例步驟1&#xff1a;根據實際情況調整maintenance_work_mem參數該大小。[Rubydtest1 ~]$ gsq…

LOOP Finance:一場 Web3 共和國中的金融制度實驗

LOOP Finance 是建構于幣安智能鏈&#xff08;BNB Chain&#xff09;上的定投型DEFI理財協議。 它以凱因斯經濟學為啟發&#xff0c;設計出一套長期、安全、穩定收益的全新DEFI玩法&#xff0c;兼顧穩健利息回報與DEFI高速成長的潛力。 通過生態機制&#xff0c;LOOP要求每位參…

【golang面試題】Golang遞歸函數完全指南:從入門到性能優化

引言&#xff1a;遞歸的本質與挑戰 在Golang中&#xff0c;遞歸函數是一把鋒利的雙刃劍。它通過函數自身調用實現問題分解&#xff0c;讓代碼變得簡潔優雅&#xff0c;但也容易因無限遞歸、棧溢出或性能問題讓開發者陷入困境。本文將從基礎到高級&#xff0c;全面解析Golang遞歸…

功能安全和網絡安全的綜合保障流程

摘要網絡物理系統是控制機械部件的計算機化系統。這些系統必須既功能安全又網絡安全。因此&#xff0c;已建立的功能安全與網絡安全標準需求創建網絡安全檔案&#xff08;ACs&#xff09;&#xff0c;以論證系統是功能安全與網絡安全的&#xff0c;即所有功能安全與網絡安全目標…

數據科學首戰:用機器學習預測世界杯冠軍

數據科學首戰&#xff1a;用機器學習預測世界杯冠軍Scikit-learn實戰&#xff1a;從數據清洗到冠軍預測的完整指南一、足球預測&#xff1a;數據科學的終極挑戰??世界杯數據價值??&#xff1a;歷史比賽數據&#xff1a;44,000場球隊特征指標&#xff1a;200球員數據點&…

一個php 連sqlserver 目標計算機積極拒絕,無法連接問題的解決

一個接口查詢數據耗時15秒&#xff0c;還沒數據&#xff0c;經查報錯日志&#xff1a;SQLSTATE[08001]: [Microsoft][ODBC Driver 17 for SQL Server]TCP 提供程序: 由于目標計算機積極拒絕&#xff0c;無法連接。 命令行執行&#xff1a;netstat -ano | findstr :1433發現結…

生成網站sitemap.xml地圖教程

要生成 sitemap.xml 文件&#xff0c;需要通過爬蟲程序抓取網站的所有有效鏈接。以下是完整的解決方案&#xff1a; 步驟 1&#xff1a;安裝必要的 Python 庫 ounter(line pip install requests beautifulsoup4 lxml 步驟 2&#xff1a;創建 Python 爬蟲腳本 (sitemap_genera…

idea拉取新項目第一次啟動報內存溢出(java.lang.OutOfMemoryError: Java heap space)

背景&#xff1a; 新拉取一個項目后&#xff0c;第一次啟動的時候報錯內存溢出&#xff1a; Java 堆內存溢出 (java.lang.OutOfMemoryError: Java heap space) 這個錯誤表示你的 Java 應用程序需要的內存超過了 JVM 堆內存的分配上限。 解決方案 1.增加堆內存大小 啟動應用時添…

安卓雷電模擬器安裝frida調試

1.在模擬器中設置調試root和adb 2.在vscode中安裝autox.js 3.在github上下載auto.js組件 新地址鏈接看來大佬的項目也經歷了波折https://blog.csdn.net/weixin_41961749/article/details/145669531 github地址https://github.com/aiselp/AutoX/releases 將下載的apk放入雷電…

Godot ------ 初級人物血條制作02

Godot ------ 初級人物血條制作02引言正文血條動態顯示引言 在 Godot ------ 初級人物血條制作01 一文中我們介紹了如何構建一個初級血條&#xff0c;但是我們并沒有涉及如何動態顯示血條。本文我們將介紹如何動態顯示血條。 正文 血條動態顯示 首先&#xff0c;我們為當前…

(Python)待辦事項升級網頁版(html)(Python項目)

源代碼&#xff1a; app.py from flask import Flask, render_template, request, redirect, url_for, jsonify import json import osapp Flask(__name__)# 數據存儲文件 DATA_FILE "todos.json"def load_todos():"""從文件加載待辦事項"&q…

智慧養老破局:科技如何讓“老有所養”變成“老有優養”?

隨著人口老齡化加劇&#xff0c;“養老”成了社會關注的焦點。傳統養老往往停留在“有地方住、有人照顧”的基礎需求&#xff0c;而智慧養老則通過科技與人文的結合&#xff0c;讓老年人的生活從“老有所養”升級到“老有優養”。不僅活得安心&#xff0c;更能活得有尊嚴、有質…

自學嵌入式 day45 ARM體系架構

一、SOCRAM&#xff1a;隨機訪問存儲器&#xff0c;存放隨機變量&#xff0c;掉電數據丟失ROM&#xff1a;只讀存儲器&#xff0c;存放單片機的程序、指令&#xff0c;掉電數據不丟失注&#xff1a;1、馮諾依曼架構中將數據與指令存放在同一存儲器中2、哈佛架構是將數據與指令存…

HTML應用指南:利用GET請求獲取全國OPPO官方授權體驗店門店位置信息

本篇文章將利用GET請求從OPPO官方網站或公開接口中獲取官方授權體驗店的分布信息&#xff0c;并通過Python編程語言中的requests庫來實現HTTP請求&#xff0c;從而提取詳細的門店位置數據。隨著OPPO品牌的發展和市場布局的擴展&#xff0c;其官方授權體驗店已經遍布全國各大城市…

Self-RAG:基于自我反思的檢索增強生成框架技術解析

本文由「大千AI助手」原創發布&#xff0c;專注用真話講AI&#xff0c;回歸技術本質。拒絕神話或妖魔化。搜索「大千AI助手」關注我&#xff0c;一起撕掉過度包裝&#xff0c;學習真實的AI技術&#xff01; 一、核心定義與原始論文 Self-RAG&#xff08;Self-Reflective Retri…

【YOLOv8改進 - C2f融合】C2f融合DBlock(Decoder Block):解碼器塊,去模糊和提升圖像清晰度

YOLOv8目標檢測創新改進與實戰案例專欄 專欄目錄: YOLOv8有效改進系列及項目實戰目錄 包含卷積,主干 注意力,檢測頭等創新機制 以及 各種目標檢測分割項目實戰案例 專欄鏈接: YOLOv8基礎解析+創新改進+實戰案例 文章目錄 YOLOv8目標檢測創新改進與實戰案例專欄 介紹 摘要 文…