BGP对等体组、聚合、路由反射器、联盟、团体属性

news2025/1/21 21:59:55

一.实验拓扑


二.实验需求

1.AS1中存在两个环回,一个地址为192.168.1.0/24,该地址不能在任何协议中宣告

    As3中存在两个环回,一个地址为192.168.2.0/24,、该地址不能在任何协议中宣告,最终要求这两个环回可以ping通;

2.整个AS2的IP地址为172.16.0.0/16,请合理划分;并且其内部配置osPF协议

3.R1-R8的建邻环回用x.x.x.x/32表示;R2-R7上除了建邻环回,每个设备再划分一个业务网段;

4、AS间的骨干链路IP地址随意定制;

5、使用BGP协议让整个网络所有设备的环回可以互相访问;

三、实验思路

1.划IP配IP

2..配OSPF使AS2通

3.配BGP

5.近BGP宣告网段   

6.做隧道,使全网通



四、实验步骤

1.划IP

172.16.0.0 /16

1)R1-R8的环回

R1 ---172.16.0.1  /32

........

2)R2--R7的业务网段

R2-----172.16.2.0  /24

........

3)6个骨干链路

172.16.1.0 /24

172.16.1.0000 0000 /30 ==172.16.1.0  

172.16.1.0000 0100  /30 ==172.16.1.4

172.16.1.0000 1000  /30==172.16.1.8

172.16.1.0000 1100  /30==172.16.1.12

172.16.1.0001 0000  /30==172.16.1.16

172.16.1.0001 0100  /30==172.16.1.20

2.配ip

[R1]INT G0/0/0
[R1-GigabitEthernet0/0/0]IP ADD 12.1.1.1 24
[R1-GigabitEthernet0/0/0]
Aug  4 2024 09:55:02-08:00 R1 %%01IFNET/4/LINK_STATE(l)[0]:The line protocol IP 
on the interface GigabitEthernet0/0/0 has entered the UP state. 
[R1-GigabitEthernet0/0/0]q
[R1]int l0
[R1-LoopBack0]ip add 172.16.0.1 32
[R1-LoopBack0]int l1
[R1-LoopBack1]ip add 192.168.1.0 24
Error: The specified IP address is invalid.
[R1-LoopBack1]ip add 192.168.1.1 24
[R1-LoopBack1]q
[R1]

[R2]INT G0/0/1
[R2-GigabitEthernet0/0/1]172.16.1.1 30
                         ^
Error: Unrecognized command found at '^' position.
[R2-GigabitEthernet0/0/1]ip add 172.16.1.1 30
[R2-GigabitEthernet0/0/1]
Aug  4 2024 09:55:42-08:00 R2 %%01IFNET/4/LINK_STATE(l)[0]:The line protocol IP 
on the interface GigabitEthernet0/0/1 has entered the UP state. 
[R2-GigabitEthernet0/0/1]int g0/0/2
[R2-GigabitEthernet0/0/2]ip add 172.16.1.21 30
Aug  4 2024 09:56:04-08:00 R2 %%01IFNET/4/LINK_STATE(l)[1]:The line protocol IP 
on the interface GigabitEthernet0/0/2 has entered the UP state. 
[R2-GigabitEthernet0/0/2]int g0/0/0
[R2-GigabitEthernet0/0/0]ip add 12.1.1.2 24
Aug  4 2024 09:56:23-08:00 R2 %%01IFNET/4/LINK_STATE(l)[2]:The line protocol IP 
on the interface GigabitEthernet0/0/0 has entered the UP state. 
[R2-GigabitEthernet0/0/0]int l0
[R2-LoopBack0]ip add 172.16.0.2 32
[R2-LoopBack0]ip add 172.16.0.2 32
Error: The address already exists.
[R2-LoopBack0]int l1
[R2-LoopBack1]ip add 172.16.2.0 24
Error: The specified IP address is invalid.
[R2-LoopBack1]ip add 172.16.2.1 24
[R2-LoopBack1]ip add 172.16.2.1 24
Error: The address already exists.
[R2-LoopBack1]q
[R2]

[R3]int g0/0/0
[R3-GigabitEthernet0/0/0]ip add 172.16.1.2 30
[R3-GigabitEthernet0/0/0]
Aug  4 2024 10:02:16-08:00 R3 %%01IFNET/4/LINK_STATE(l)[0]:The line protocol IP 
on the interface GigabitEthernet0/0/0 has entered the UP state. 
[R3-GigabitEthernet0/0/0]int g0/0/1
[R3-GigabitEthernet0/0/1]ip add 172.16.1.5 30
Aug  4 2024 10:02:47-08:00 R3 %%01IFNET/4/LINK_STATE(l)[1]:The line protocol IP 
on the interface GigabitEthernet0/0/1 has entered the UP state. 
[R3-GigabitEthernet0/0/1]int l0
[R3-LoopBack0]ip add 172.16.0.3 32
[R3-LoopBack0]int l1
[R3-LoopBack1]ip add 172.16.3.1 24
[R3-LoopBack1]q
[R3]

[R4]int g0/0/0
[R4-GigabitEthernet0/0/0]ip add 172.16.1.6 30
[R4-GigabitEthernet0/0/0]int g0/0/1
[R4-GigabitEthernet0/0/1]ip add 172.16.1.9 30
[R4-GigabitEthernet0/0/1]int l0
[R4-LoopBack0]ip add 172.16.0.4 32
[R4-LoopBack0]int l1
[R4-LoopBack1]ip add 172.16.4.1 24
[R4-LoopBack1]q
[R4]

[R5]int g0/0/1
[R5-GigabitEthernet0/0/1]ip add 172.16.1.22 30
[R5]int g0/0/0
[R5-GigabitEthernet0/0/0]ip add 172.16.1.17 30
Aug  4 2024 10:09:21-08:00 R5 %%01IFNET/4/LINK_STATE(l)[2]:The line protocol IP 
on the interface GigabitEthernet0/0/0 has entered the UP state. 
[R5-GigabitEthernet0/0/0]ip add 172.16.1.17 30
Error: The address already exists.
[R5-GigabitEthernet0/0/0]int l0
[R5-LoopBack0]ip add 172.16.0.5 32
[R5-LoopBack0]int l1
[R5-LoopBack1]ip add 172.16.5.0 24
Error: The specified IP address is invalid.
[R5-LoopBack1]ip add 172.16.5.1 24
[R5-LoopBack1]ip add 172.16.5.1 24
Error: The address already exists.
[R5-LoopBack1]q
[R5]

[R6]int g0/0/0
[R6-GigabitEthernet0/0/0]ip add 172.16.1.13 30
[R6-GigabitEthernet0/0/0]
Aug  4 2024 10:13:40-08:00 R6 %%01IFNET/4/LINK_STATE(l)[0]:The line protocol IP 
on the interface GigabitEthernet0/0/0 has entered the UP state. 
[R6-GigabitEthernet0/0/0]int g0/0/1
[R6-GigabitEthernet0/0/1]ip add 172.16.1.18 30
Aug  4 2024 10:14:00-08:00 R6 %%01IFNET/4/LINK_STATE(l)[1]:The line protocol IP 
on the interface GigabitEthernet0/0/1 has entered the UP state. 
[R6-GigabitEthernet0/0/1]int l0
[R6-LoopBack0]ip add 172.16.0.6 32
[R6-LoopBack0]int l1
[R6-LoopBack1]ip add 172.16.6.1 24
[R6-LoopBack1]q
[R6]

[R7]int g0/0/0
[R7-GigabitEthernet0/0/0]ip add 172.16.1.14 30
[R7-GigabitEthernet0/0/0]
Aug  4 2024 10:15:23-08:00 R7 %%01IFNET/4/LINK_STATE(l)[0]:The line protocol IP 
on the interface GigabitEthernet0/0/0 has entered the UP state. 
[R7-GigabitEthernet0/0/0]int g0/0/1
[R7-GigabitEthernet0/0/1]ip add 172.16.1.10 30
Aug  4 2024 10:15:46-08:00 R7 %%01IFNET/4/LINK_STATE(l)[1]:The line protocol IP 
on the interface GigabitEthernet0/0/1 has entered the UP state. 
[R7-GigabitEthernet0/0/1]int g0/0/2
[R7-GigabitEthernet0/0/2]ip add 34.1.1.1 24
Aug  4 2024 10:16:36-08:00 R7 %%01IFNET/4/LINK_STATE(l)[2]:The line protocol IP 
on the interface GigabitEthernet0/0/2 has entered the UP state. 
[R7-GigabitEthernet0/0/2]int l0
[R7-LoopBack0]ip add 172.16.0.7 32
[R7-LoopBack0]int l1
[R7-LoopBack1]ip add 172.16.7.0 24
Error: The specified IP address is invalid.
[R7-LoopBack1]ip add 172.16.7.1 24
[R7-LoopBack1]ip add 172.16.7.1 24
Error: The address already exists.
[R7-LoopBack1]q
[R7]

[R8]int g0/0/0
[R8-GigabitEthernet0/0/0]ip add 34.1.1.2 24
Aug  4 2024 10:18:05-08:00 R8 %%01IFNET/4/LINK_STATE(l)[0]:The line protocol IP 
on the interface GigabitEthernet0/0/0 has entered the UP state. 
[R8-GigabitEthernet0/0/0]q
[R8]int l0
[R8-LoopBack0]ip add 172.16.0.8 32
[R8-LoopBack0]int l1
[R8-LoopBack1]ip add 192.168.2.1 24
[R8-LoopBack1]q
[R8]

3.配OSPF使AS2通

[R2]ospf 1 r    
[R2]ospf 1 router-id 2.2.2.2
[R2-ospf-1]a 0
[R2-ospf-1-area-0.0.0.0]ne 172.16.0.0 0.0.255.255
[R2-ospf-1-area-0.0.0.0]q
[R2-ospf-1]

[R3]os    
[R3]ospf 1 r    
[R3]ospf 1 router-id 3.3.3.3
[R3-ospf-1]a 0
[R3-ospf-1-area-0.0.0.0]ne 172.16.0.0 0.0.255.255
[R3-ospf-1-area-0.0.0.0]ne 172.16.0.0 0.0.255.255
[R3-ospf-1-area-0.0.0.0]

[R4]os    
[R4]ospf 1 r    
[R4]ospf 1 router-id 4.4.4.4
[R4-ospf-1]a 0
[R4-ospf-1-area-0.0.0.0]ne 172.16.0.0 0.0.255.255
[R4-ospf-1-area-0.0.0.0]ne 172.16.0.0 0.0.255.255
[R4-ospf-1-area-0.0.0.0]

[R5]osp    
[R5]ospf 1 r    
[R5]ospf 1 router-id 5.5.5.5
[R5-ospf-1]a 0
[R5-ospf-1-area-0.0.0.0]ne 172.16.0.0 0.0.255.255
[R5-ospf-1-area-0.0.0.0]

[R6]os    
[R6]ospf 1 r    
[R6]ospf 1 router-id 6.6.6.6
[R6-ospf-1]a 0
[R6-ospf-1-area-0.0.0.0]ne 172.16.0.0 0.0.255.255
[R6-ospf-1-area-0.0.0.0]

[R7]os    
[R7]ospf 1 r    
[R7]ospf 1 router-id 7.7.7.7
[R7-ospf-1]a 0
[R7-ospf-1-area-0.0.0.0]ne 172.16.0.0 0.0.255.255
[R7-ospf-1-area-0.0.0.0]

4.配BGP

1)BGP联盟

[R1]bgp 1
[R1-bgp]pe    
[R1-bgp]peer 12.1.1.2 as 2
[R1-bgp]

[R2-bgp]pe    
[R2-bgp]peer 172.16.0.3 as 64512
[R2-bgp]peer 172.16.0.3 conn    
[R2-bgp]peer 172.16.0.3 connect-interface l0
[R2-bgp]peer 172.16.0.3 ne    
[R2-bgp]peer 172.16.0.3 next-hop-invariable
[R2-bgp]peer 172.16.0.3 next-hop-local
[R2-bgp]p    
[R2-bgp]peer 172.16.0.4 as 64512
[R2-bgp]peer 172.16.0.4 con    
[R2-bgp]peer 172.16.0.4 connect-interface l0
[R2-bgp]
[R2-bgp]
[R2-bgp]
[R2-bgp]pe    
[R2-bgp]peer 172.16.0.5 as 64513
[R2-bgp]peer 172.16.0.5 con    
[R2-bgp]peer 172.16.0.5 connect-interface l0
[R2-bgp]peer 172.16.0.5 ne    
[R2-bgp]peer 172.16.0.5 next-hop-invariable

[R2-bgp]peer 172.16.0.5 next-hop-local
[R2-bgp]p    
[R2-bgp]peer 172.16.0.5 eb    

[R2-bgp]peer 172.16.0.5 ebgp-max-hop (修改最大跳数255(默认的是255))
[R2-bgp]

[R3]bgp 64512
[R3-bgp]con    
[R3-bgp]confederation id 2
[R3-bgp]pe    
[R3-bgp]peer 172.16.0.2 as 64512
[R3-bgp]peer 172.16.0.2 con    
[R3-bgp]peer 172.16.0.2 connect-interface l0
[R3-bgp]p    
[R3-bgp]peer 172.16.0.4 as 64512
[R3-bgp]peer 172.16.0.4 connect-interface l0
[R3-bgp]

[R4]bg    
[R4]bgp 64512
[R4-bgp]con    
[R4-bgp]confederation i    
[R4-bgp]confederation id 2
[R4-bgp]p    
[R4-bgp]peer 172.16.0.3 as 64512
[R4-bgp]peer 172.16.0.3 co    
[R4-bgp]peer 172.16.0.3 connect-interface l0
[R4-bgp]p    
[R4-bgp]peer 172.16.0.2 as 64512
[R4-bgp]peer 172.16.0.2 con    
[R4-bgp]peer 172.16.0.2 connect-interface l0
[R4-bgp]

(如果R4不和R2键邻,可以在R3上做反射器(反射群里的所有反射客户端需与反射器建立IBGP邻居关系)解决路由学不全的问题

[R5]bg    
[R5]bgp 64513
[R5-bgp]con    
[R5-bgp]confederation p    
[R5-bgp]confederation i    
[R5-bgp]confederation id 2
[R5-bgp]confederation p    
[R5-bgp]confederation peer-as 64512
[R5-bgp]p    
[R5-bgp]peer 172.16.0.6 as 64513
[R5-bgp]peer 172.16.0.6 con    
[R5-bgp]peer 172.16.0.6 connect-interface l0
[R5-bgp]peer 172.16.0.6 ne    
[R5-bgp]peer 172.16.0.6 next-hop-invariable
[R5-bgp]peer 172.16.0.6 next-hop-local
[R5-bgp]pe    

[R5-bgp]peer 172.16.0.7 as 64513
[R5-bgp]peer 172.16.0.7 con    
[R5-bgp]peer 172.16.0.7 connect-interface l0
[R5-bgp]q
[R5-bgp]
[R5-bgp]peer 172.16.0.2 as 64512
[R5-bgp]peer 172.16.0.2 conn    
[R5-bgp]peer 172.16.0.2 connect-interface l0
[R5-bgp]peer 172.16.0.2 next-hop-local
[R5-bgp]peer 172.16.0.2 eb    
[R5-bgp]peer 172.16.0.2 ebgp-max-hop 
[R5-bgp]

[R6]bgp 64513
[R6-bgp]con    
[R6-bgp]confederation 
[R6-bgp]confederation i    
[R6-bgp]confederation id 2
[R6-bgp]pe    
[R6-bgp]peer 172.16.0.5 as 64513
[R6-bgp]peer 172.16.0.5 con    
[R6-bgp]peer 172.16.0.5 connect-interface l0
[R6-bgp]pe    
[R6-bgp]peer 172.16.0.7 as 64513
[R6-bgp]peer 172.16.0.7 connect-interface l0

[R6-bgp]peer 172.16.0.7 next-hop-local
[R6-bgp]
[R6-bgp]p   
[R6-bgp]q
[R6]

[R7]bgp 64513
[R7-bgp]con    
[R7-bgp]confederation i    
[R7-bgp]confederation id 2
[R7-bgp]pe    
[R7-bgp]peer 172.16.0.5 as 64513
[R7-bgp]peer 172.16.0.5 con    
[R7-bgp]peer 172.16.0.5 connect-interface l0
[R7-bgp]
[R7-bgp]peer 172.16.0.6 as 64513
[R7-bgp]peer 172.16.0.6 connect-interface l0
[R7-bgp]peer 172.16.0.6 ne    
[R7-bgp]peer 172.16.0.6 next-hop-invariable
[R7-bgp]peer 172.16.0.6 next-hop-local
[R7-bgp]pe    
[R7-bgp]peer 34
[R7-bgp]peer 34.1.1.2 as 3
[R7-bgp]
[R7-bgp]

(如果R5不和R7键邻,可以在R3上做反射器(反射群里的所有反射客户端需与反射器建立IBGP邻居关系)解决路由学不全的问题

[R8]bg    
[R8]bgp 3
[R8-bgp]p    
[R8-bgp]peer 34.1.1.1 as 2
[R8-bgp]

检查

5.近BGP宣告网段

[R2]bgp 64512
[R2-bgp]ne    
[R2-bgp]network 172.16.2.0 24
[R2-bgp]

[R3]bg    
[R3]bgp 64512
[R3-bgp]ne    
[R3-bgp]network 172.16.3.0 24
[R3-bgp]


[R4]bgp 64512
[R4-bgp]n    
[R4-bgp]network 172.16.4.0 24
[R4-bgp]

[R5]bg    
[R5]bgp 64513
[R5-bgp]n    
[R5-bgp]network 172.16.5.0 24
[R5-bgp]

[R6]bg    
[R6]bgp 64513
[R6-bgp]n    
[R6-bgp]network 172.16.6.0 24
[R6-bgp]

[R7]bg    
[R7]bgp 64513
[R7-bgp]n    
[R7-bgp]network 172.16.7.0 24
[R7-bgp]q
[R7]

6.做隧道,使全网通

[R1]bg    
[R1]bgp 1
[R1-bgp]n    
[R1-bgp]network 172.16.0.1 32
[R1-bgp]
[R1-bgp]q

[R8]bg    
[R8]bgp 3
[R8-bgp]n    
[R8-bgp]network 172.16.0.8 32
[R8-bgp]


[R1]int t0/0/0
[R1-Tunnel0/0/0]ip add 10.1.1.1 24
[R1-Tunnel0/0/0]tunnel-protocol gre 

[R1-Tunnel0/0/0]so    
[R1-Tunnel0/0/0]source 172.16.0.1
[R1-Tunnel0/0/0]des    
[R1-Tunnel0/0/0]description
[R1-Tunnel0/0/0]destination 172.16.0.8

[R8]int t0/0/0
[R8-Tunnel0/0/0]ip add 10.1.1.8 24
[R8-Tunnel0/0/0]TUN    
[R8-Tunnel0/0/0]tunnel-protocol G    
[R8-Tunnel0/0/0]tunnel-protocol gre 
[R8-Tunnel0/0/0]s    
[R8-Tunnel0/0/0]so    
[R8-Tunnel0/0/0]source 172.16.0.8
[R8-Tunnel0/0/0]des    
[R8-Tunnel0/0/0]description
[R8-Tunnel0/0/0]destination 172.16.0.1

[R1]ip route-static 192.168.2.0 24 10.1.1.8

[R8]ip route-static 192.168.1.0 24 10.1.1.1
[R8]

测试

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【数据结构】栈和队列(c语言实现)(附源码)

🌟🌟作者主页:ephemerals__ 🌟🌟所属专栏:数据结构 目录 一、栈 1.栈的概念与结构 2.栈的实现 2.1 栈的结构定义 2.2 方法的声明 2.3 方法的实现 2.3.1 初始化 2.3.2 销毁 2.3.3 判空 2.3.4 压…

OpenCV||超详细的图像边缘检测

一、基本概念 1.图像边缘检测目的 特征提取:边缘是图像中亮度变化最显著的部分,它们通常对应于物体的轮廓、不同区域的边界等。通过边缘检测,可以从图像中提取出这些重要的特征信息,为后续处理如图像分割、目标识别等提供基础。 …

请你学习:前端布局3 - 浮动 float

1 标准流(也称为普通流、文档流) 标准流(也称为普通流、文档流)是CSS中元素布局的基础方式,它决定了元素在页面上的默认排列方式。这种布局方式遵循HTML文档的结构,不需要额外的CSS样式来指定元素的位置。…

python open cv(图像处理的基本操作)

概要图 1读取图像 cv2.imread() 函数是OpenCV库中用于读取图像文件的函数。它有两个参数: 文件名:这是第一个也是必需的参数,它指定了要读取的图像文件的路径和文件名。这个路径可以是相对路径,也可以是绝对路径。 标志&#xf…

小技巧大功效,「仅阅读两次提示」让循环语言模型超越Transformer++

在当前 AI 领域,大语言模型采用的主流架构是 Transformer。不过,随着 RWKV、Mamba 等架构的陆续问世,出现了一个很明显的趋势:在语言建模困惑度方面与 Transformer 较量的循环大语言模型正在快速进入人们的视线。 令人兴奋的是&am…

c++ string解析及其实现

因为字符串是固定长度&#xff0c;不好进行操作&#xff0c;因此c就用类将字符串进行了封装让其变得方便实用。 要深刻了解string&#xff0c;我们必须要熟练掌握类的使用&#xff0c;如果还有疑问可以看这一篇博客:c 类 (要学习类这一篇就够了 ) string #include<string…

Android 11(R)启动流程 初版

启动流程 bootloader会去启动android第一个进程Idle&#xff0c;pid为0&#xff0c;会对进程 内存管理等进行初始化。Idle还被称作swapper。Idle会去创建两个进程&#xff0c;一个是init&#xff0c;另外一个是kthread。 kthread会去启动内核&#xff0c;用户是由init进行启动。…

算法通关:017_1:二叉树及三种顺序的递归遍历

文章目录 题目思路代码运行结果 题目 二叉树及三种顺序的递归遍历 思路 代码 /*** Author: ggdpzhk* CreateTime: 2024-08-04** 二叉树及三种顺序的递归遍历* LeetCode 144. 二叉树的前序遍历* LeetCode 94. 二叉树的中序遍历* LeetCode 145. 二叉树的后序遍历* LeetCode 10…

sqli-labs靶场——第二关

1、判断注入类型 ?id1和?id2-1的页面一样所以是数字型 2、判断闭合类型 数字型没有闭合符号 3、order by查看有几列 当输入order by 4 时候页面变化&#xff0c;3的时候正常&#xff0c;所以是3列 4、union select联合查询查看回显 /sqli-labs/Less-2/?id-1 union sel…

ESP32使用MQTT协议通讯(EMQX)

一、背景介绍 前面完成了ESP32MicroPython环境的搭建01_ESP32 MicroPython开发环境搭建_eps32开发板-CSDN博客 现在想实现以下功能&#xff1a; 1.通过手机或电脑&#xff0c;远程给ESP32发送相关指令。 2.ESP32接到指令后&#xff0c;做出相应的高低电平输出。 这样就相当…

视频编辑SDK,底层架构合理,前端自定义程度高

如何高效、专业地制作出符合品牌形象、吸引目标受众的视频内容&#xff0c;成为了众多企业面临的共同挑战。美摄科技&#xff0c;作为视频编辑技术的先行者&#xff0c;以其卓越的视频编辑SDK&#xff08;Software Development Kit&#xff09;&#xff0c;为企业用户量身打造了…

进程状态都有哪些?

目录 前言&#xff1a; 进程的各个状态&#xff1a; 1、R状态&#xff08;进程运行状态&#xff09;和S状态&#xff08;休眠状态&#xff09; 2、T状态和t状态&#xff08;暂停进程&#xff09; 3、D状态&#xff08;磁盘休眠状态&#xff09; 4、Z状态&#xff08;僵尸状…

学习笔记 韩顺平 零基础30天学会Java(2024.8.2)

P447 五大运行时异常 P448 异常课堂练习 P449 异常处理机制 try-catch-finally throws(处理机制二选一)&#xff0c;如果没有显式处理异常&#xff0c;默认throws JVM处理异常直接输出异常信息&#xff0c;退出程序 P450 tryCatch 对于第一个细节&#xff0c;发生异常之后时try…

C语言快速入门及精通学习指南——手把手教零基础/新手入门(完整C语言学习笔记整理)

前言 作为一名拥有多年开发经验的码农&#xff0c;我的职业生涯涵盖了多种编程语言&#xff0c;包括 C 语言、C、C# 和 JavaScript。在这一过程中&#xff0c;我深刻地意识到扎实的基础对于编程学习的重要性&#xff0c;尤其是对于 C 语言这样一门核心语言来说。 出于对…

sgg快餐项目-3 项目

一、数仓架构 本项目的数据是事务数据&#xff0c;都存储在mysql数据库&#xff0c;如果是其他的项目&#xff0c;那数据可能会在文本、爬虫等。要使用相关的组件将数据导入到HDFS上。&#xff08;因为要把数据导入到hive做数据管理、存储和分析&#xff0c;而hive就是在hfds上…

2024年文件防泄密系统TOP3|遥遥领先的文件防泄密系统

古语有云&#xff1a;“密者&#xff0c;国之重器&#xff0c;不可不慎。” 在今日之数字化时代&#xff0c;信息的保密与安全&#xff0c;已然成为企业乃至国家生存与发展的基石。 随着数据泄露事件频发&#xff0c;文件防泄密系统的重要性愈发凸显。 2024年&#xff0c;随着…

数据存储与访问

一、文件存储读写 1.Android文件的操作模式 2.文件的相关操作方法 3.文件读写的实现 Android中的文件读写和Java中的文件I/O相同&#xff0c;流程也很简单&#xff0c;下面我们来写个简单的示例&#xff1a; PS:这里用的是模拟器&#xff0c;因为笔者的N5并没有root&#xf…

Go语言加Vue3零基础入门全栈班11 Go语言+gorm用户管理系统实战 2024年08月03日 课程笔记

概述 如果您没有Golang的基础&#xff0c;应该学习如下前置课程。 Golang零基础入门Golang面向对象编程Go Web 基础Go语言开发REST API接口_20240728Go语言操作MySQL开发用户管理系统API教程_20240729Redis零基础快速入门_20231227GoRedis开发用户管理系统API实战_20240730Mo…

工业人工智能真的能落地吗?

文章目录 前言Part1 聊聊技术1 人工智能、机器学习和深度学习的关系2 优化思想的一个案例 part2 聊聊业务3 工业人工智能与消费互联网人工智能的区别3.1 消费互联网中人工智能的应用3.2 为什么如此成熟的消费互联网人工智能扩展到工业场景那么难 4 工业互联网人工智能的发展方向…

wxPython中wx.adv.DatePickerCtrl用法

wx.adv.DatePickerCtrl是一个日期选择组件&#xff0c;支持键盘手工录入日期和弹出日历窗口选择日期两种方式。 一、组件样式 wx.adv.DP_SPIN &#xff1a; 只允许键盘手工录入和组件右侧上下箭头调整日期。 wx.adv.DP_DROPDOWN &#xff1a; 只允许健盘手工录入和组件右侧打开…