dayi的小键盘 - 2023年5月
type: channel
link: https://type.dayiyi.top/index.php/2023/05
description: 啪 咔嚓 biu！
items: 【当前进度1.102】JAVA Web 作业
items: 路由交换-作业11
items: 手写压位高精度（N^2)乘法
items: 路由交换-作业10-7.4.1 CCNA7 实施DHCPv4

【当前进度1.102】JAVA Web 作业
type: item
date: 2023-05-30T12:09:00+08:00
description: 【当前进度1.102】JAVA Web 作业当前进度1.102 不骗你，第一个任务估计也就0.01，乐观点也最多百分之6https://type.dayiyi.top/index.php/archives/181/1.00了，测试版当前共计：13997字2023年6月20日01:10:162023年6月21日00:45:472023年6月21日11:40:242023年6月21日15:32:392023年6月22日09:35:432023年6月25日00:46:40、16620个字啦这个作业可能比想象中的复杂一点，涉及了很多的代码。而且内容几乎涉及了整个web全栈。也正是如此，一次可能写不完，所以会不断更新。如果你遇到了不明白的地方，请联系咱，咱会进行补充这次打算使用实时更新的网站：【这里放链接】更新网址：0x00 补充和更新目前还没有遇到，但本文章涉及内容多，不确定因素亦多，肯定会遇上问题，因此，希望各位可以进行补充和说明。 0x13 如何打开文件夹 2023年6月19日17:08:51 0x30 锟斤拷 2023年6月20日01:02:02 0x22 tomcat配置注释2023年6月20日23:40:53 1.00测试版 2023年6月22日10:48:21 1.10 进行了一些修改和维护，更清晰点啦。2023年6月24日22:35:020x01 文件下载由于涉及的文件真的非常的多，我也临时没想好应该如何共享这些文件。使用之前的下载方式使用阿里云盘使用阿里云盘开网页直接下载，无需登录后来看，文件也没那么多，于是，直接在文章末尾可以进行文件下载。0x02 目录说明大致如下0x01 章节1 - 0x011 章节1.1 - 0x012 章节1.2 0x02 章节2 - 0x021 章节2.1 - 0x022 章节2.20x03 开发工具因为整个课程涉及了WEB几乎全栈的开发，因此，这里使用了以下的工具VSCODEChrome 浏览器IDEA（关键）Tomcat（8.5）maven（进行包管理，非常的方便）0x10 蛋糕商场的注册界面该部分对应实验报告内容如下序号实验项目完成时间1蛋糕商城注册页面2.280x11 准备文件需要准备这些文件，这些文件的压缩包在群文件中有。群文件名：23.2.28_java_web.rar链接下载：https://p.dabbit.net/blog/pic_bed/2023/05/a77f2e125a83aee1_202305261907278.7z这里准备好这8个文件，4个css样式文件，4个字体文件这两个红色的圈，是两个文件夹，您下下文件7z来就可以了。解压后用VSC打开这个文件夹。就会有类似这样的样子。可能有所差距， 是因为主题包的问题。注意目录和文件最好不要涉及到中文，尽可能只有英文、数字、下划线，其他的字符尽可能不要出现，容易出现问题，但JAVA对这个的兼容还算是可以。当前还不需要注意这个，但是之后的java代码的书写，可能会出现一些不可预料的错误，因此很建议遵循全英文数字，非中文的规则。0x12 开发工具用什么开发工具都是可以的，我们这里的任务1就只写一个html文件，但对于大型项目来说，选择一个合适的IDE是非常有必要的，可以提高非常高的开发效率。注意VScode不是VS，VSCode是开源的，VS是商业软件。本章节（0x012）在于提高开发效率，如果你比较急，可以进行一定的忽略。我这里用了VSCODE，为了提高兼容性，你也可以遵循这个原则。注意，在本次的报告中，VSCODE由于需要手动配置的内容较多，仅在前两章的原理和简单前端开发中使用了。使用的插件包括：Debugger for Chrome（可选，你可以直接浏览器打开你的页面） Code Runner（可选，我们的前端可以直接用浏览器打开） JavaScript Debugger（可选，我们这次作业没有用到很多的JS） IntelliSense for CSS class names in HTML (不一定好用) TabNine (完全可选，AI代码补全，如果配置好还是挺好用) Live Server（可选，实时预览） Live Preview（可选） 为什么这么多可选，因为这里是已经写完一遍报告的dayi，2023年6月24日21:04:11。 语言包（也是插件）: Chinese (Simplified) (简体中文) Language Pack for Visual Studio Code 主题（也是插件）: Material Theme Icons 如果，你想要参考的相关链接：VSCode 必装的 10 个高效开发插件 - 知乎 (zhihu.com)这里是我临时（2023年5月26日19:28:59）的插件包这里是报告…

路由交换-作业11
type: item
date: 2023-05-28T00:53:00+08:00
description: 路由交换-作业11当前进度 1.01更新地址: https://blog.dayi.ink/?p=42 更新地址: https://type.dayiyi.top/index.php/archives/179/【dayi的大键盘】新的博客：https://blog.dayi.ink ，欢迎来体验新的阅读。更新中修改的内容本文考虑写作时间的特殊性，如有问题请直接在文章末尾留言，相互提醒下，可能不再更新（写到凌晨1点多，明天还有特别多特别多事，估计来不及改了0x00 准备文件分步骤文件可以从文件末尾下载有时间一定要自己做一遍要命呜呜呜0x01 打开文件0x10 第 1部分：配置设备并 验证连通性0x11 步骤 1：配置 PC 接口。a. 使用地址分配 表中列出的 PC3 IPv4 和 IPv6 地址。b. 使用地址分配 表中列出的 PC4 IPv4 和 IPv6 地址。PC310.0.4.10 255.255.255.0 10.0.4.1 2001:db8:acad:4::10 /64 fe80::2:aPC410.0.5.10 255.255.255.0 10.0.5.1 2001:db8:acad:5::10 /64 fe80::2:b0x12 步骤 2：配置路由器。a. 在路由器R2上，打开一个终端。进入特权 EXEC 模式。b. 进入配置模式。c. 给路由器R2分配一个设备名。d. 把c1sco1234配置为加密的特权 EXEC 模式 密码。e. 把路由器的域名设置为ccna-lab.com。f. 要防止路由器尝试将错误输入的命令视为主机名 ，则禁用 DNS 查找。g. 加密明文的密码。h. 把用户名配置为SSHadmin，把加密密码配置为55Hadm!n。i. 生成一组加密密钥，把模设置为 1024 位。j. 把控制台密码配置为cisco，让会话在 6 分钟处于不活动状态则 断开，同时启用登录功能。使用命令logging synchronous 防止 控制台消息打断命令的输入。k. 把 vty 密码配置为cisco，对 vty 线路进行配置让它只 接受 SSH 连接，并让会话在 6 分钟处于 不活动状态则断开，同时使用本地数据库来启用登录功能。l. 创建一个向访问设备者发出警告的标语：未经授权， 禁止访问。m. 启用 IPv6 路由。n. 使用上面地址分配表中的 IPv4 和 IPv6 编址信息来配置路由器上的所有四个接口。给四个 接口配置描述信息。激活所有四个接口。o. 将运行配置保存到启动配置文件中。R2路由器Router>en Router#conf t Enter configuration commands, one per line. End with CNTL/Z. Router(config)#hostname R2 R2(config)#enable secret c1sco1234 R2(config)#ip domain-name ccna-lab.com R2(config)#no ip domain lookup R2(config)#service password-encryption R2(config)#username SSHadmin secret 55Hadm!n R2(config)#crypto key generate rsa How many bits in the modulus [512]: 1024 #j R2(config)#line console 0 R2(config-line)#password cisco R2(config-line)#logging synchronous R2(config-line)#exec-timeout 6 0 R2(config-line)#login #k R2(config-line)#line vty 0 4 R2(config-line)#password cisco R2(config-line)#exec-timeout 6 0 R2(config-line)#transport input ssh R2(config-line)#login local #i 可能有问题,没过 R2(config-line)#banner motd $auth only$ # 后来发现可能必须用这个字符串才能100 banner motd $ WARNING Authorized Users Only! $ #m R2(config)#ipv6 unicast-routing #n R2(config)#int g0/0/0 R2(config-if)#des to S3 R2(config-if)#ip addr 10.0.4…

手写压位高精度（N^2)乘法
type: item
date: 2023-05-10T20:36:29+08:00
description: 手写压位高精度（N^2)乘法O(N)加法没什么出众的地方，只是一次作业，也当练习一下。 #include<bits/stdc++.h> // by.dayi 23.5.10 // 第一次尝试写压位高精度 // 其实python可太容易了，但是想趁着机会练一下手写 const int maxn = 10086; // 数组长度，高精度最大可以存4*maxn位，可以无限增加，但是乘法是n^2实现的 const int power = 4; //10^4次方，高精度压位，每个位存4位,因为10^8<2^31，但是10^10>2^31 const int base = 1e4; // 基数 //最大值 最小值 template <typename T> T max(T a,T b){return a>b?a:b;} template <typename T> T min(T a,T b){return a<b?a:b;} struct big_dec{//高精度 int a[maxn];//数组长度 int _len_big_dec;//当前长度 int f; big_dec(){//结构体构造函数，初始化 memset(a,0,sizeof(a)); _len_big_dec = 0; f = 0;//f=1为负数 } //从字符串读取 inline void read_from_str(const char *str){ int len = strlen(str);//数组长度 int k = 1;//当前的位置 int w = 1;//当前位的权值 int end = 0;//结束位置 //负数 if(str[0]=='-'){f=1;end=1;} for(int i=len-1;i>=end;i--){ // 12 345678 // a[2] a[1] a[k] += (str[i]-'0')*w;//加位 w*=10;//权值增加 if(w==base){//权值到达基数 w = 1;//权值归1 k++;//位置增加 } } _len_big_dec = k; } bool is_zero() const { //是否是0 return _len_big_dec == 1 && a[1] == 0; } big_dec abs() const { //绝对值 big_dec ans = *this; ans.f = 0; return ans; } //stdout标准输出 inline void print_stdout(){ if(this->f)printf("-");//负数 for(int i=_len_big_dec;i>=1;i--){ if(i==_len_big_dec && a[i]!=0) printf("%d",a[i]); else printf("%04d",a[i]); } } //赋值，也是复制 big_dec operator = (const big_dec &b){ _len_big_dec = b._len_big_dec; f = b.f; for(int i=1;i<=_len_big_dec;i++){ a[i] = b.a[i]; } return *this; } // 小于号 bool operator<(const big_dec &b) const { if (f != b.f) {return f > b.f;} //0为正数，1为负数，0>1 if (_len_big_dec != b._len_big_dec) {//长度 return f?(_len_big_dec > b._len_big_dec):(_len_big_dec < b._len_big_dec); } //长度相同，判断每一位 for (int i=_len_big_dec;i>=1;i--){ if (a[i]!=b.a[i]) { return f?(a[i]>b.a[i]):(a[i]<b.a[i]); } } return false; // 相等 } // 大于号 bool operator>(const big_dec &b) const { return b<*this; // 反向比较即可 } //加法，要命 big_dec operator + (const big_dec &b){ big_dec ans;//结果 if(f==b.f){//同号相加 ans.f=b.f; int len=max(_len_big_dec,b._len_big_dec); for(int i=1;i<=len;++i){ ans.a[i] += a[i]+b.a[i]; //加位 if…

路由交换-作业10-7.4.1 CCNA7 实施DHCPv4
type: item
date: 2023-05-09T09:28:00+08:00
description: 路由交换-作业10-7.4.1 CCNA7 实施DHCPv4当前进度 1.0更新地址: https://blog.dayi.ink/?p=35更新地址: https://type.dayiyi.top/index.php/archives/173/【dayi的大键盘】新的博客：https://blog.dayi.ink ，欢迎来体验新的阅读。更新中修改的内容在试错过程中发现并修改的内容:目前没有0x00 准备文件文件下载：https://p.dabbit.net/blog/pic_bed/2023/05/153c17ec66e5b5c7_202305090819041.7z分步骤文件可以从文件末尾下载有时间一定要自己做一遍0x01 打开文件看了看，感觉..有点夸张的样子做完的dayi：没有那么夸张，而且挺快的0x02 引言地址分配表设备R1接口IPv4 地址子网掩码默认网关G0/0192.168.10.1255.255.255.0不适用S0/0/010.1.1.1255.255.255.252不适用设备R2接口IPv4 地址子网掩码默认网关G0/0192.168.20.1255.255.255.0不适用G0/1DHCPDHCP不适用S0/0/010.1.1.2255.255.255.252不适用S0/0/110.2.2.2255.255.255.252不适用设备R3接口IPv4 地址子网掩码默认网关G0/0192.168.30.1255.255.255.0不适用S0/0/110.2.2.1255.255.255.0不适用非交换设备设备接口IPv4 地址子网掩码默认网关PC1NICDHCPDHCPDHCPPC2NICDHCPDHCPDHCPDNS 服务器NIC192.168.20.254255.255.255.0192.168.20.1目标第 1 部分：将路由器配置为 DHCP 服务器第 2 部分：配置 DHCP 中继第 3 部分：将路由器配置为 DHCP 客户端场景作为公司的网络技术人员， 您的任务就是将思科路由器配置为 DHCP 服务器，为网络上的客户端提供动态地址 分配。您还需要将边缘路由器配置为 DHCP 客户端， 使它能够从 ISP 网络接收 IP 地址。由于服务器是集中式部署的， 因此您需要配置两个 LAN 路由器，以便在 LAN 和充当 DHCP 服务器的那台路由器之间中继 DHCP 流量。0x03 相关内容暂无0x10 第 1 部分： 将路由器配置为 DHCP 服务器0x11 第 1 部分：步骤 1 ： 配置排除的 IPv4 地址。配置 R2 从 R1 LAN 和 R3 LAN 中排除前 10 个地址。 DHCP 地址池中的所有其他地址都应该可用。先看下网络拓扑图：要命R1 的 LAN 192.168.10.0/24R3 的 LAN 192.168.30.0/24这样前10个就是除去192.168.10.1-10192.168.30.1-10在R2的CLI里输入命令R2>en R2#conf t R2(config)#ip dhcp excluded-address 192.168.10.1 192.168.10.10 R2(config)#ip dhcp excluded-address 192.168.30.1 192.168.30.100x12 第 1 部分：步骤 2 ： 在 R2 上为 R1 LAN 创建 DHCP 池。a. 创建命名为 R1-LAN 的 DHCP 池。这个池的名称必须匹配上面的值， 这样配置才能得分。b. 配置 DHCP 池以包括 DNS 服务器的网络地址、默认网关和 IP 地址。创建名字为R1-LAN的地址池子R2(config)#ip dhcp pool R1-LAN配置网段，默认网关，DNSDNS服务器：192.168.20.254默认路由：192.168.10.1（也就是R1的地址）子网掩码前缀：24，对应255.255.255.0R2(dhcp-config)#network 192.168.10.0 255.255.255.0 R2(dhcp-config)#default-router 192.168.10.1 R2(dhcp-config)#dns-server 192.168.20.2540x13 第 1 部分：步骤 3 ： 在 R2 上为 R3 LAN 创建 DHCP 池。a. 创建命名为 R3-LAN (区分大小写) 的 DHCP 池。b. 配置 DHCP 池以包括 DNS 服务器的网络地址、默认网关和 IP 地址。同理啦创建地址池R3-LANR2(config)#ip dhcp pool R3-LAN #或者↓这样直接输就行 R2(dhcp-config)#ip …