<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>CN on Demiurge</title>
        <link>https://demiurge-zby.github.io/categories/cn/</link>
        <description>Recent content in CN on Demiurge</description>
        <generator>Hugo -- gohugo.io</generator>
        <language>zh-cn</language>
        <copyright>Demiurge</copyright>
        <lastBuildDate>Thu, 28 May 2026 20:15:30 +0800</lastBuildDate><atom:link href="https://demiurge-zby.github.io/categories/cn/index.xml" rel="self" type="application/rss+xml" /><item>
        <title>BUAA CN Week8 期末模拟</title>
        <link>https://demiurge-zby.github.io/p/buaa-cn-week8-%E6%9C%9F%E6%9C%AB%E6%A8%A1%E6%8B%9F/</link>
        <pubDate>Thu, 28 May 2026 20:15:30 +0800</pubDate>
        
        <guid>https://demiurge-zby.github.io/p/buaa-cn-week8-%E6%9C%9F%E6%9C%AB%E6%A8%A1%E6%8B%9F/</guid>
        <description>&lt;img src="https://demiurge-zby.github.io/p/buaa-cn-week8-%E6%9C%9F%E6%9C%AB%E6%A8%A1%E6%8B%9F/q.png" alt="Featured image of post BUAA CN Week8 期末模拟" /&gt;&lt;h2 id=&#34;配置设置&#34;&gt;配置设置
&lt;/h2&gt;&lt;p&gt;开局先连接好PC串口，连接各设备并执行重启操作。&lt;/p&gt;
&lt;p&gt;reset saved-con   Y&lt;/p&gt;
&lt;p&gt;reboot  N  Y&lt;/p&gt;
&lt;p&gt;趁这个等待时间进行组网和PC配置。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;QUESTION:&lt;/p&gt;
&lt;p&gt;S1 S2 R1 R2 R3 R4六台设备却对应四台电脑&lt;/p&gt;
&lt;p&gt;重启进程可以后台并行吗？&lt;/p&gt;
&lt;p&gt;ANSWER:&lt;/p&gt;
&lt;p&gt;机房的蓝色电源按钮在关闭时都会清空配置的&lt;/p&gt;
&lt;p&gt;一般不用特意清空&lt;/p&gt;
&lt;p&gt;可以ctrl + G简单确认一下&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id=&#34;正确组网&#34;&gt;正确组网
&lt;/h2&gt;&lt;p&gt;对于套件二的同学，相较以往还需要多用到R3、R4两台设备，因此四台电脑的分工需要自己考虑好。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;一般主控1-2台电脑（PCB\PCC）。一定要注意留一台干净电脑用来上传配置。&lt;/p&gt;
&lt;p&gt;建议主控PCB，PCC用于配置上传。因为实验过程与配置上传都需要频繁切换串口。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;一定要注意用能卡紧的线，出现问题第一步一定是检查线路是否接触不良。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;考前的所有线缆都更新了，非常好用！&lt;/p&gt;
&lt;p&gt;如果不好用建议在考前一周跟老师反馈进行更换。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;对于非PC端报文的捕获，可能需要用到集线器，借助无条件转发给其他PC实现中间报文的截获。&lt;/p&gt;
&lt;h2 id=&#34;pc-ip配置&#34;&gt;PC IP配置
&lt;/h2&gt;&lt;p&gt;首先禁用PC本地连接外的其他虚拟网卡。&lt;/p&gt;
&lt;p&gt;然后迅速完成IP地址、掩码、网关的配置。&lt;/p&gt;
&lt;h2 id=&#34;基本操作&#34;&gt;基本操作
&lt;/h2&gt;&lt;h3 id=&#34;重启后必做&#34;&gt;重启后必做
&lt;/h3&gt;&lt;p&gt;在重启S后立刻执行&lt;/p&gt;
&lt;p&gt;interface Ten 1/0/25&lt;/p&gt;
&lt;p&gt;shutdown&lt;/p&gt;
&lt;p&gt;interface Ten 1/0/26&lt;/p&gt;
&lt;p&gt;shutdown&lt;/p&gt;
&lt;p&gt;interface Ten 1/0/27&lt;/p&gt;
&lt;p&gt;shutdown&lt;/p&gt;
&lt;p&gt;interface Ten 1/0/28&lt;/p&gt;
&lt;p&gt;shutdown&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;在重启R后立刻执行&lt;/p&gt;
&lt;p&gt;undo interface vlan 1&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;首先sys 然后sysname&lt;/p&gt;
&lt;p&gt;名字在单电脑控制多设备的时候十分关键。&lt;/p&gt;
&lt;h3 id=&#34;交换机基操&#34;&gt;交换机基操
&lt;/h3&gt;&lt;p&gt;vlan x&lt;/p&gt;
&lt;p&gt;int vlan x&lt;/p&gt;
&lt;p&gt;ip addr&lt;/p&gt;
&lt;p&gt;int GE1/0/1&lt;/p&gt;
&lt;p&gt;port access vlan x&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;还有一种写法：&lt;/p&gt;
&lt;p&gt;vlan x&lt;/p&gt;
&lt;p&gt;port GE1/0/1 [to GE 1/0/2]&lt;/p&gt;
&lt;p&gt;int vlan x&lt;/p&gt;
&lt;p&gt;ip addr&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3 id=&#34;路由器基操&#34;&gt;路由器基操
&lt;/h3&gt;&lt;blockquote&gt;
&lt;p&gt;注意R3 R4虽然上面贴着E 但实际上还是G&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;int G0/1&lt;/p&gt;
&lt;p&gt;ip addr&lt;/p&gt;
&lt;p&gt;int Serial0/0&lt;/p&gt;
&lt;p&gt;ip addr&lt;/p&gt;
&lt;p&gt;int Loopback1&lt;/p&gt;
&lt;p&gt;ip addr&lt;/p&gt;
&lt;h2 id=&#34;ospf&#34;&gt;OSPF
&lt;/h2&gt;&lt;h3 id=&#34;配置&#34;&gt;配置
&lt;/h3&gt;&lt;p&gt;ospf&lt;/p&gt;
&lt;p&gt;area 0&lt;/p&gt;
&lt;p&gt;network  + 该设备的引入OSPF的ip addr + &lt;strong&gt;掩码反码&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;题目往往会限制OSPF的范围，注意到底是哪些端口&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;要观察到OSPF的状态一般应该变为FULL&lt;/p&gt;
&lt;h3 id=&#34;重启&#34;&gt;重启
&lt;/h3&gt;&lt;p&gt;用户态下 reset ospf process   Y&lt;/p&gt;
&lt;h3 id=&#34;调试指令&#34;&gt;调试指令
&lt;/h3&gt;&lt;p&gt;display ospf lsdb&lt;/p&gt;
&lt;p&gt;display ospf peer&lt;/p&gt;
&lt;h2 id=&#34;bgp&#34;&gt;BGP
&lt;/h2&gt;&lt;h3 id=&#34;基本配置&#34;&gt;基本配置
&lt;/h3&gt;&lt;p&gt;bgp xxx&lt;/p&gt;
&lt;p&gt;peer + 邻居 ip addr + as-number + yyy&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;注意OSPF可以主动hello建立peer关系，无需手动&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;address-family ipv4 unicast&lt;/p&gt;
&lt;p&gt;peer + peer过的邻居的ip + enable&lt;/p&gt;
&lt;p&gt;peer + IBGP邻居的ip + next-hop-local&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;这一句是额外的句子，不能用来替代peer XXXX enable&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;network + 要传给对方AS的路由 + mask(不是反码)&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;network可以细粒度调控&lt;/p&gt;
&lt;p&gt;一般考试只有PC和loopback需要被network&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3 id=&#34;重启-1&#34;&gt;重启
&lt;/h3&gt;&lt;p&gt;用户态 reset bgp all   Y&lt;/p&gt;
&lt;h3 id=&#34;路由聚合&#34;&gt;路由聚合
&lt;/h3&gt;&lt;p&gt;bgp、address-family后&lt;/p&gt;
&lt;p&gt;aggregate 聚合IP 聚合mask [detail-suppressed]&lt;/p&gt;
&lt;p&gt;detail-suppressed保证BGP只传递聚合路由&lt;/p&gt;
&lt;h3 id=&#34;ping-通全网&#34;&gt;ping 通全网
&lt;/h3&gt;&lt;p&gt;其实也就是同步问题，关键在于纯IGP路由器。&lt;/p&gt;
&lt;p&gt;为其配好其他AS的静态路由：&lt;/p&gt;
&lt;p&gt;ip route-static + 目标IP + mask + 下一跳IP&lt;/p&gt;
&lt;h3 id=&#34;路由过滤&#34;&gt;路由过滤
&lt;/h3&gt;&lt;h4 id=&#34;基于acl&#34;&gt;基于ACL
&lt;/h4&gt;&lt;p&gt;配置ACL路由策略，阻止&lt;strong&gt;5.0.0.0/8网段&lt;/strong&gt;的路由&lt;strong&gt;传递给AS200&lt;/strong&gt;。&lt;/p&gt;
&lt;p&gt;acl basic 2000&lt;/p&gt;
&lt;p&gt;rule 0 deny source 5.0.0.0 0.255.255.255&lt;/p&gt;
&lt;p&gt;rule 1 permit source 0.0.0.0 255.255.255.255&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;进入bgp视图，address-family ipv4 unicast之后：&lt;/p&gt;
&lt;p&gt;peer  AS200的邻居IP   &lt;strong&gt;filter-policy&lt;/strong&gt;  2000  &lt;strong&gt;export&lt;/strong&gt;          //配置基于ACL的路由过滤&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;这一句是额外的句子，不能用来替代peer XXXX enable&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;若题目变为阻止&lt;strong&gt;5.0.0.0/8网段&lt;/strong&gt;的路由&lt;strong&gt;传递&lt;/strong&gt;，则需要对所有peer都进行这个命令。&lt;/p&gt;
&lt;h4 id=&#34;基于as-path&#34;&gt;基于AS-PATH
&lt;/h4&gt;&lt;p&gt;不通告来自AS200的路由，而&lt;strong&gt;只通告&lt;/strong&gt;自己所在AS内部产生的路由。&lt;/p&gt;
&lt;p&gt;ip as-path-acl 1 deny \b200$&lt;/p&gt;
&lt;p&gt;ip as-path-acl 1 permit ^$&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;\b是AS号码前的分割符。&lt;/p&gt;
&lt;p&gt;^ 表示字符串开头，^$表示 AS_PATH 为空，也即本地 AS。&lt;/p&gt;
&lt;p&gt;若想表达通配应为 .*&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;如果只是不通告来自AS200的路由：&lt;/p&gt;
&lt;p&gt;ip as-path-acl 1 deny \b200$&lt;/p&gt;
&lt;p&gt;ip as-path-acl 1 permit .*&lt;/p&gt;
&lt;p&gt;进入bgp视图，address-family ipv4 unicast：&lt;/p&gt;
&lt;p&gt;对&lt;strong&gt;所有peer&lt;/strong&gt;进行&lt;/p&gt;
&lt;p&gt;peer xxx &lt;strong&gt;as-path-acl&lt;/strong&gt; 1 &lt;strong&gt;export&lt;/strong&gt;&lt;/p&gt;
&lt;h4 id=&#34;基于-route-policy&#34;&gt;基于 route policy
&lt;/h4&gt;&lt;p&gt;配置路由策略，使S1&lt;strong&gt;不向外通告&lt;/strong&gt;6.0.0.0/8的路由信息，并且&lt;strong&gt;向外通告的路由信息的cost&lt;/strong&gt;都为888。&lt;/p&gt;
&lt;p&gt;关于路由本身的筛选直接用ACL：&lt;/p&gt;
&lt;p&gt;acl basic 2001&lt;/p&gt;
&lt;p&gt;rule 1 deny source 6.0.0.0 0.255.255.255&lt;/p&gt;
&lt;p&gt;rule 2 permit source any&lt;/p&gt;
&lt;p&gt;再配route-policy：&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;结构如下：&lt;/p&gt;
&lt;p&gt;route-policy  &amp;lt;名称&amp;gt;  {permit|deny}  node &amp;lt;节点号&amp;gt;&lt;/p&gt;
&lt;p&gt;if-match &amp;lt;条件&amp;gt;          # 条件判断：如果路由符合这个条件&amp;hellip;&lt;/p&gt;
&lt;p&gt;apply &amp;lt;动作&amp;gt;               #  &amp;hellip;就执行这个动作&amp;hellip;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;route-policy xxx permit node 10&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;只有所有 if-match 均为 permit，该route-policy才返回permit&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;if-match acl 2001  # 这里利用ACL作为条件，得到deny/permit&lt;/p&gt;
&lt;p&gt;apply cost 888  # 满足条件的 med 设置为 888， 这里的cost是bgp cost&lt;/p&gt;
&lt;p&gt;依旧bgp，address-family，&lt;/p&gt;
&lt;p&gt;peer 所有peer &lt;strong&gt;route-policy&lt;/strong&gt; xxx &lt;strong&gt;export&lt;/strong&gt;&lt;/p&gt;
&lt;h3 id=&#34;调试指令-1&#34;&gt;调试指令
&lt;/h3&gt;&lt;p&gt;display bgp peer ipv4 unicast&lt;/p&gt;
&lt;p&gt;display current-configuration configuration bgp&lt;/p&gt;
&lt;p&gt;display bgp routing-table ipv4 unicast&lt;/p&gt;
&lt;h2 id=&#34;nat&#34;&gt;NAT
&lt;/h2&gt;&lt;p&gt;四部分操作。&lt;/p&gt;
&lt;h3 id=&#34;定义-acl&#34;&gt;定义 ACL
&lt;/h3&gt;&lt;p&gt;ACL是啥？ Access Control List， 说白了就只是个规则的集合。&lt;/p&gt;
&lt;p&gt;acl basic 2000&lt;/p&gt;
&lt;p&gt;rule permit source + 内网ip + &lt;strong&gt;内网mask反码&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;rule deny source any                        # 拒绝其他&lt;/p&gt;
&lt;h3 id=&#34;定义-nat-地址池&#34;&gt;定义 NAT 地址池
&lt;/h3&gt;&lt;p&gt;nat address-group 1&lt;/p&gt;
&lt;p&gt;address 外网ip1 外网ip2    # 地址池范围，NAT会在这里面选&lt;/p&gt;
&lt;h3 id=&#34;启用-nat并绑定-acl-和地址池&#34;&gt;启用 NAT并绑定 ACL 和地址池
&lt;/h3&gt;&lt;p&gt;interface GE xx                                        #   interface要转变为外网IP的接口&lt;/p&gt;
&lt;p&gt;nat &lt;strong&gt;outbound&lt;/strong&gt; 2000 &lt;strong&gt;address-group&lt;/strong&gt; 1  # 绑定 ACL 和 group&lt;/p&gt;
&lt;h3 id=&#34;配置缺省静态路由&#34;&gt;配置缺省静态路由
&lt;/h3&gt;&lt;p&gt;ip route-static 0.0.0.0 0.0.0.0 外网网关&lt;/p&gt;
&lt;p&gt;这一步很关键。你是学不到外网的任何东西的。&lt;/p&gt;
&lt;h2 id=&#34;tcp&#34;&gt;TCP
&lt;/h2&gt;&lt;p&gt;TCP实验需要在vmware的linux虚拟机内完成实验。&lt;/p&gt;
&lt;h3 id=&#34;基本流程&#34;&gt;基本流程
&lt;/h3&gt;&lt;p&gt;一定需要记得禁用虚拟网卡。&lt;/p&gt;
&lt;p&gt;首先是右上方的网络配置，断开当前网络，并选择对应的sender/receiver&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;虚拟机上已有的三个网络均配置完毕，可直接使用&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;然后启动wireshark，选择Eth0，筛选tcp&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;发送端双击桌面init.sh&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;接收方双击桌面TCPTest.sh并开启监听&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;发送方双击桌面TCPTest.sh并完成数据配置，发送文件&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;tcptest配置&#34;&gt;TCPTest配置
&lt;/h3&gt;&lt;h4 id=&#34;端口转发速率控制&#34;&gt;端口转发速率控制
&lt;/h4&gt;&lt;p&gt;直接interface 接口&lt;/p&gt;
&lt;p&gt;qos lr outbound cir xxx (单位为Kbps)&lt;/p&gt;
&lt;h4 id=&#34;接收端配置&#34;&gt;接收端配置
&lt;/h4&gt;&lt;p&gt;休眠时间与计数器阈值一般配置为0。&lt;/p&gt;
&lt;p&gt;如需对零窗口通告进行分析，可配置：&lt;/p&gt;
&lt;p&gt;休眠时间 = 5000， 计数器阈值 = 10。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;每收到 &lt;code&gt;计数器阈值&lt;/code&gt; 次数据，触发长达 &lt;code&gt;休眠时间&lt;/code&gt; 毫秒的休眠。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3 id=&#34;文件上传&#34;&gt;文件上传
&lt;/h3&gt;&lt;p&gt;/root/TCPLog目录下有tcpsndwnddata.txt与tcprtodata.txt，分别给出窗口大小和RTO数据，可帮助TCP流程分析。&lt;/p&gt;
&lt;p&gt;wireshark报文也可及时截断并保存。&lt;/p&gt;
&lt;p&gt;上述文件均可拖出虚拟机到桌面，并在windows系统上根据考试需要完成上传。&lt;/p&gt;
&lt;h2 id=&#34;高级配置&#34;&gt;高级配置
&lt;/h2&gt;&lt;h3 id=&#34;备选路由与优选路由&#34;&gt;备选路由与优选路由
&lt;/h3&gt;&lt;h4 id=&#34;static&#34;&gt;static
&lt;/h4&gt;&lt;p&gt;对于区域外的静态路由，要想控制优先级，只需：&lt;/p&gt;
&lt;p&gt;ip route-static xxxx mask yyyy preference 100&lt;/p&gt;
&lt;p&gt;注意preference&lt;strong&gt;越小&lt;/strong&gt;，优先级越高。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;不加 preference 时，&lt;strong&gt;静态路由默认优先级是 60&lt;/strong&gt;。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h4 id=&#34;ospf-1&#34;&gt;ospf
&lt;/h4&gt;&lt;p&gt;直接 interface 接口&lt;/p&gt;
&lt;p&gt;为接口设置：&lt;/p&gt;
&lt;p&gt;ospf cost xxx&lt;/p&gt;
&lt;p&gt;高优先级cost小，备选路由cost高即可&lt;/p&gt;
&lt;p&gt;同一条链路两端点的cost可不同，表达不同方向&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;一定要注意你的整条路由是否源自OSPF&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://demiurge-zby.github.io/p/buaa-cn-week8-%E6%9C%9F%E6%9C%AB%E6%A8%A1%E6%8B%9F/attention.png&#34;
	width=&#34;1045&#34;
	height=&#34;605&#34;
	srcset=&#34;https://demiurge-zby.github.io/p/buaa-cn-week8-%E6%9C%9F%E6%9C%AB%E6%A8%A1%E6%8B%9F/attention_hu5382100910137041603.png 480w, https://demiurge-zby.github.io/p/buaa-cn-week8-%E6%9C%9F%E6%9C%AB%E6%A8%A1%E6%8B%9F/attention_hu1404929334152734404.png 1024w&#34;
	loading=&#34;lazy&#34;
	
		alt=&#34;Attention!&#34;
	
	
		class=&#34;gallery-image&#34; 
		data-flex-grow=&#34;172&#34;
		data-flex-basis=&#34;414px&#34;
	
&gt;&lt;/p&gt;
&lt;p&gt;比如考试中要求两台PC之间采用S1-R2-R1优选路径&lt;/p&gt;
&lt;p&gt;而PC不在OSPF里，大家去PC都是靠的静态路由，那当然不能靠ospf的cost了&lt;/p&gt;
&lt;p&gt;S1-&amp;gt;PCB配的两条static设置优先级&lt;/p&gt;
&lt;p&gt;R1-&amp;gt;PCA配的两条static设置优先级即可&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h4 id=&#34;bgp-1&#34;&gt;bgp
&lt;/h4&gt;&lt;p&gt;可以通过route policy细调&lt;/p&gt;
&lt;p&gt;但这里也只讲直接配置的：&lt;/p&gt;
&lt;p&gt;bgp、address-family后&lt;/p&gt;
&lt;p&gt;default local-preference xxx&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;lp越大越优先选择&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;bgp、address-family后&lt;/p&gt;
&lt;p&gt;default med xxx&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;med越小越优先选择&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;需要注意lp作用于IBGP，MED作用于EBGP&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;其实严格意义不是这样，但是便于理解就这样说了&lt;/p&gt;
&lt;p&gt;优先级是lp&amp;gt;as-path&amp;gt;med&lt;/p&gt;
&lt;p&gt;但是在某些场景下会赋相同的默认值从而使其无效&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;p&gt;用例在bgp设计实验3:&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://demiurge-zby.github.io/p/buaa-cn-week8-%E6%9C%9F%E6%9C%AB%E6%A8%A1%E6%8B%9F/bgp.png&#34;
	width=&#34;895&#34;
	height=&#34;479&#34;
	srcset=&#34;https://demiurge-zby.github.io/p/buaa-cn-week8-%E6%9C%9F%E6%9C%AB%E6%A8%A1%E6%8B%9F/bgp_hu12490426778594655812.png 480w, https://demiurge-zby.github.io/p/buaa-cn-week8-%E6%9C%9F%E6%9C%AB%E6%A8%A1%E6%8B%9F/bgp_hu4445618484524059449.png 1024w&#34;
	loading=&#34;lazy&#34;
	
		alt=&#34;lp and med&#34;
	
	
		class=&#34;gallery-image&#34; 
		data-flex-grow=&#34;186&#34;
		data-flex-basis=&#34;448px&#34;
	
&gt;&lt;/p&gt;
&lt;p&gt;需要S2-R2-R1且R1-S1-S2&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;针对S2-R2-R1&lt;/p&gt;
&lt;p&gt;R2和S1属于IBGP竞争，调节lp&lt;/p&gt;
&lt;p&gt;针对R1-S1-S2&lt;/p&gt;
&lt;p&gt;S1和R2属于EBGP竞争，调节med&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h4 id=&#34;验证方法&#34;&gt;验证方法
&lt;/h4&gt;&lt;p&gt;在所有机器上开启：&lt;/p&gt;
&lt;p&gt;ip unr en&lt;/p&gt;
&lt;p&gt;ip ttl en&lt;/p&gt;
&lt;p&gt;然后tracert证明优选，断开优选证明备选。&lt;/p&gt;
&lt;h3 id=&#34;路由引入&#34;&gt;路由引入
&lt;/h3&gt;&lt;p&gt;一般常见的是对ospf的其中一员配置静态路由，&lt;/p&gt;
&lt;p&gt;然后进入他的ospf，&lt;/p&gt;
&lt;p&gt;import-route static&lt;/p&gt;
&lt;p&gt;就可以把这个静态路由借助OSPF传递。&lt;/p&gt;
&lt;p&gt;例如：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://demiurge-zby.github.io/p/buaa-cn-week8-%E6%9C%9F%E6%9C%AB%E6%A8%A1%E6%8B%9F/ex.png&#34;
	width=&#34;1226&#34;
	height=&#34;504&#34;
	srcset=&#34;https://demiurge-zby.github.io/p/buaa-cn-week8-%E6%9C%9F%E6%9C%AB%E6%A8%A1%E6%8B%9F/ex_hu3400124201659223299.png 480w, https://demiurge-zby.github.io/p/buaa-cn-week8-%E6%9C%9F%E6%9C%AB%E6%A8%A1%E6%8B%9F/ex_hu4508971993863621332.png 1024w&#34;
	loading=&#34;lazy&#34;
	
		alt=&#34;example&#34;
	
	
		class=&#34;gallery-image&#34; 
		data-flex-grow=&#34;243&#34;
		data-flex-basis=&#34;583px&#34;
	
&gt;&lt;/p&gt;
&lt;p&gt;本题便可以给R1配置到达192.168.5.0网段的静态路由，并引入OSPF，&lt;/p&gt;
&lt;p&gt;就可以让S1,R2直接学到192.168.5.0网段，无需专门配置静态路由。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;如果题干明确说了使用静态路由实现全网互通，就必须每个都专门配，不能利用路由引入。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;此外BGP也可以import-route，慎用，还是一点点network比较安全。&lt;/p&gt;
&lt;h3 id=&#34;状态转移图&#34;&gt;状态转移图
&lt;/h3&gt;&lt;p&gt;建议将指令和转移图全部会背。&lt;/p&gt;
&lt;h4 id=&#34;lcp协商过程&#34;&gt;LCP协商过程
&lt;/h4&gt;&lt;p&gt;initial&amp;mdash;&amp;mdash;&amp;mdash;LCP Open Event&amp;mdash;&amp;mdash;&amp;mdash;starting&lt;/p&gt;
&lt;p&gt;starting&amp;mdash;&amp;mdash;&amp;mdash;LCP Lower Up Event&amp;mdash;&amp;mdash;&amp;mdash;reqsent&lt;/p&gt;
&lt;p&gt;reqsent&amp;mdash;&amp;mdash;&amp;mdash;LCP RCR+ Event&amp;mdash;&amp;mdash;&amp;mdash;acksent    (RCR+:  Receive Config Good Request)&lt;/p&gt;
&lt;p&gt;acksent&amp;mdash;&amp;mdash;&amp;mdash;LCP RCA&amp;mdash;&amp;mdash;&amp;mdash;opened  (RCA:  Receive Config Ack Event)&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;作用于两个Router之间。&lt;/p&gt;
&lt;p&gt;为两台设备相连的Serial口配置：link-protocol ppp 并刷新配置：shutdown后undo shutdown&lt;/p&gt;
&lt;p&gt;进入R1用户态:&lt;/p&gt;
&lt;p&gt;debugging ppp all&lt;/p&gt;
&lt;p&gt;terminal debugging&lt;/p&gt;
&lt;p&gt;shutdown R2的无关Serial口&lt;/p&gt;
&lt;p&gt;重启R2的相关Serial口：shutdown后undo shutdown&lt;/p&gt;
&lt;h4 id=&#34;ipcp协商过程&#34;&gt;IPCP协商过程
&lt;/h4&gt;&lt;blockquote&gt;
&lt;p&gt;和LCP基本一致&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;initial&amp;mdash;&amp;mdash;&amp;mdash;IPCP Open Event&amp;mdash;&amp;mdash;&amp;mdash;starting&lt;/p&gt;
&lt;p&gt;starting&amp;mdash;&amp;mdash;&amp;mdash;IPCP Lower Up Event&amp;mdash;&amp;mdash;&amp;mdash;reqsent&lt;/p&gt;
&lt;p&gt;reqsent&amp;mdash;&amp;mdash;&amp;mdash;IPCP RCR+ Event&amp;mdash;&amp;mdash;&amp;mdash;acksent    (RCR+:  Receive Config Good Request)&lt;/p&gt;
&lt;p&gt;acksent&amp;mdash;&amp;mdash;&amp;mdash;IPCP RCA&amp;mdash;&amp;mdash;&amp;mdash; opened  (RCA:  Receive Config Ack Event)&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;操作也和LCP一样，或者说debugging ppp all的时候，&lt;/p&gt;
&lt;p&gt;LCP协商过程完成后，若有验证过程则需经过PAP/CHAP的验证过程，之后便进入IPCP的协商过程。&lt;/p&gt;
&lt;h4 id=&#34;pap验证过程&#34;&gt;PAP验证过程
&lt;/h4&gt;&lt;p&gt;initial&amp;mdash;&amp;mdash;&amp;mdash;PAP Server Lower Up Event&amp;mdash;&amp;mdash;&amp;mdash;ServerListen&lt;/p&gt;
&lt;p&gt;ServerListen&amp;mdash;&amp;mdash;&amp;mdash;PAP Receive Request Event&amp;mdash;&amp;mdash;&amp;mdash;WaitAAA&lt;/p&gt;
&lt;p&gt;WaitAAA&amp;mdash;&amp;mdash;&amp;mdash;PAP AAA Result Event&amp;mdash;&amp;mdash;&amp;mdash;ServerSuccess&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;R1配置：&lt;/p&gt;
&lt;p&gt;local-user RTB class network&lt;/p&gt;
&lt;p&gt;service-type ppp&lt;/p&gt;
&lt;p&gt;password simple aaa&lt;/p&gt;
&lt;p&gt;interface 对应串口&lt;/p&gt;
&lt;p&gt;ppp authentication-mode pap&lt;/p&gt;
&lt;p&gt;R2配置：&lt;/p&gt;
&lt;p&gt;interface 对应串口&lt;/p&gt;
&lt;p&gt;ppp pap local-user RTB password simple aaa&lt;/p&gt;
&lt;p&gt;进入R1用户态:&lt;/p&gt;
&lt;p&gt;debugging ppp pap all&lt;/p&gt;
&lt;p&gt;terminal debugging&lt;/p&gt;
&lt;p&gt;重启R1的相关Serial口：shutdown后undo shutdown&lt;/p&gt;
&lt;h4 id=&#34;chap验证过程&#34;&gt;CHAP验证过程
&lt;/h4&gt;&lt;p&gt;initial&amp;mdash;&amp;mdash;&amp;mdash;CHAP Server Lower Up Event&amp;mdash;&amp;mdash;&amp;mdash;SendChallenge&lt;/p&gt;
&lt;p&gt;SendChallenge&amp;mdash;&amp;mdash;&amp;mdash;CHAP Receive Response Event&amp;mdash;&amp;mdash;&amp;mdash;WaitingAAA&lt;/p&gt;
&lt;p&gt;WaitingAAA&amp;mdash;&amp;mdash;&amp;mdash;CHAP AAA Result Event&amp;mdash;&amp;mdash;&amp;mdash;Server Success&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;R1配置：&lt;/p&gt;
&lt;p&gt;local-user RTB class network&lt;/p&gt;
&lt;p&gt;service-type ppp&lt;/p&gt;
&lt;p&gt;password simple aaa&lt;/p&gt;
&lt;p&gt;interface 对应串口&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;下面两句和PAP不同&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;ppp authentication-mode chap&lt;/p&gt;
&lt;p&gt;ppp chap user RTA&lt;/p&gt;
&lt;p&gt;R2配置：&lt;/p&gt;
&lt;p&gt;local-user RTA class network&lt;/p&gt;
&lt;p&gt;service-type ppp&lt;/p&gt;
&lt;p&gt;password simple aaa&lt;/p&gt;
&lt;p&gt;interface 对应串口&lt;/p&gt;
&lt;p&gt;ppp chap user RTB&lt;/p&gt;
&lt;p&gt;ppp chap password simple aaa&lt;/p&gt;
&lt;p&gt;重启R1的相关Serial口：shutdown后undo shutdown&lt;/p&gt;
&lt;p&gt;进入R1用户态:&lt;/p&gt;
&lt;p&gt;debugging ppp chap all&lt;/p&gt;
&lt;p&gt;terminal debugging&lt;/p&gt;
&lt;p&gt;重启R1的相关Serial口：shutdown后undo shutdown&lt;/p&gt;
&lt;h4 id=&#34;ospf邻居状态&#34;&gt;OSPF邻居状态
&lt;/h4&gt;&lt;p&gt;DOWN-&amp;gt;INIT-&amp;gt;2-WAY-&amp;gt;EXSTART-&amp;gt;EXCHANGE-&amp;gt;LOADING-&amp;gt;FULL&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;进入R1用户态:&lt;/p&gt;
&lt;p&gt;debugging ospf event&lt;/p&gt;
&lt;p&gt;terminal debugging&lt;/p&gt;
&lt;p&gt;断开连线再连接即可观察到。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;前面的实验由于是serial之间，无法拔线，所以只能shutdown了&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h4 id=&#34;bgp协议状态&#34;&gt;BGP协议状态
&lt;/h4&gt;&lt;p&gt;IDLE&amp;mdash;&amp;mdash;&amp;mdash;ConnectRetry_Timer_Expires event、Manual start event&amp;mdash;&amp;mdash;&amp;mdash;CONNECT&lt;/p&gt;
&lt;p&gt;CONNECT&amp;mdash;&amp;mdash;&amp;mdash;TCP_CR_Acked event&amp;mdash;&amp;mdash;&amp;mdash;OPENSENT&lt;/p&gt;
&lt;p&gt;OPENSENT&amp;mdash;&amp;mdash;&amp;mdash;ReceiveOpenMessage Event&amp;mdash;&amp;mdash;&amp;mdash;OPENCONFIRM&lt;/p&gt;
&lt;p&gt;OPENCONFIRM&amp;mdash;&amp;mdash;&amp;mdash;ReceiveKeepAliveMsg event&amp;mdash;&amp;mdash;&amp;mdash;ESTABLISHED&lt;/p&gt;
&lt;p&gt;我当时实验没有观察到ACTIVE，完整图表见下图。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://demiurge-zby.github.io/p/buaa-cn-week8-%E6%9C%9F%E6%9C%AB%E6%A8%A1%E6%8B%9F/111.png&#34;
	width=&#34;781&#34;
	height=&#34;443&#34;
	srcset=&#34;https://demiurge-zby.github.io/p/buaa-cn-week8-%E6%9C%9F%E6%9C%AB%E6%A8%A1%E6%8B%9F/111_hu3298601391135473533.png 480w, https://demiurge-zby.github.io/p/buaa-cn-week8-%E6%9C%9F%E6%9C%AB%E6%A8%A1%E6%8B%9F/111_hu5673069657177805264.png 1024w&#34;
	loading=&#34;lazy&#34;
	
		alt=&#34;完整状态图&#34;
	
	
		class=&#34;gallery-image&#34; 
		data-flex-grow=&#34;176&#34;
		data-flex-basis=&#34;423px&#34;
	
&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;进入R1用户态:&lt;/p&gt;
&lt;p&gt;debugging bgp event&lt;/p&gt;
&lt;p&gt;terminal debugging&lt;/p&gt;
&lt;p&gt;reset bgp all 即可观察到。&lt;/p&gt;
&lt;h2 id=&#34;协议分析&#34;&gt;协议分析
&lt;/h2&gt;&lt;p&gt;理论相关知识在博客中或理论课已有讲述，在此仅做回顾。&lt;/p&gt;
&lt;h3 id=&#34;arp&#34;&gt;ARP
&lt;/h3&gt;&lt;p&gt;目的是根据下一跳的IP地址找到其MAC地址。&lt;/p&gt;
&lt;p&gt;有ARP Cache。&lt;/p&gt;
&lt;p&gt;ARP Request是广播，对方匹配后单播Reply回来。&lt;/p&gt;
&lt;h3 id=&#34;icmp&#34;&gt;ICMP
&lt;/h3&gt;&lt;p&gt;主要是ping和tracert（windows）。&lt;/p&gt;
&lt;p&gt;ICMP报文种类有很多。&lt;/p&gt;
&lt;p&gt;tracert（windows）的工作机理是发ttl逐步递增的ping。&lt;/p&gt;
&lt;p&gt;使用的是 &lt;strong&gt;Echo Request(类型8)&lt;/strong&gt; 和 &lt;strong&gt;Echo Reply(类型0)&lt;/strong&gt;。&lt;/p&gt;
&lt;h3 id=&#34;ospf-2&#34;&gt;OSPF
&lt;/h3&gt;&lt;p&gt;五类报文。Hello,DD,LSR,LSU,LSAck。&lt;/p&gt;
&lt;p&gt;DD主从关系协商过程的意义。&lt;/p&gt;
&lt;p&gt;详见：&lt;a href=&#34;https://demiurge-zby.github.io/p/buaa-cn-week3-ospf/?t=1780299669755#ospf报文及简单交互&#34; onclick=&#34;window.open(this.href,&#39;_blank&#39;);return false;&#34;&gt; Week3-OSPF&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;LSU里的LSA有五种。&lt;/p&gt;
&lt;p&gt;详见：&lt;a href=&#34;https://demiurge-zby.github.io/p/buaa-cn-week3-ospf/?t=1780299669755#什么是lsa&#34; onclick=&#34;window.open(this.href,&#39;_blank&#39;);return false;&#34;&gt; Week3-OSPF&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;注意五类LSA的范围。&lt;/p&gt;
&lt;h3 id=&#34;bgp-2&#34;&gt;BGP
&lt;/h3&gt;&lt;p&gt;network注入的意义（把本地路由表中已经存在的某条路由注入到 BGP 表中，并对外发布）。&lt;/p&gt;
&lt;p&gt;ping -a的意义（可检测 Loopback 能不能连通对侧 Loopback）。&lt;/p&gt;
&lt;p&gt;Notification与Update报文。&lt;/p&gt;
&lt;p&gt;黑洞问题。（路由聚合）&lt;/p&gt;
&lt;p&gt;ORIGIN属性。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;ORIGIN 表示这条 BGP 路由最早是怎么进入 BGP 的。&lt;/p&gt;
&lt;p&gt;i  IGP&lt;/p&gt;
&lt;p&gt;e  EGP&lt;/p&gt;
&lt;p&gt;?  incomplete&lt;/p&gt;
&lt;p&gt;用 network 命令注入通常是 i&lt;/p&gt;
&lt;p&gt;import-route XXX 注入通常是 ?&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;PATH属性。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;PATH 记录了经过的AS号， 越靠前越近。&lt;/p&gt;
&lt;p&gt;有两个重要作用：防环、选路。&lt;/p&gt;
&lt;p&gt;防环规则：如果一台 BGP 路由器收到的路由里，AS_PATH 包含自己的 AS 号，就丢弃。&lt;/p&gt;
&lt;p&gt;选路规则：AS_PATH越短越好。(当然选路还收到lp，med影响)&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;next-hop属性。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;next-hop 表示：去往某个 BGP 路由时，下一跳应该交给谁。&lt;/p&gt;
&lt;p&gt;这是 BGP 里非常容易出问题的属性。&lt;/p&gt;
&lt;p&gt;eBGP 和 iBGP 行为不一样：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;eBGP 传路由时，默认会把 next-hop 改成自己&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;iBGP 传路由时，默认不改 next-hop，还用接收来的原路由的next-hop。&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;所以我们往往对ibgp手动配next-hop-local，把下一跳改成自己。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3 id=&#34;tcp-1&#34;&gt;TCP
&lt;/h3&gt;&lt;p&gt;相较于UDP的优缺点（实时性与正确性的考量）。&lt;/p&gt;
&lt;p&gt;三次握手与四次挥手（SYN,FIN）。&lt;/p&gt;
&lt;p&gt;确认号。&lt;/p&gt;
&lt;p&gt;TCP、UDP、IP头部长度。（20B、8B、20B，结合以太网MTU=1500）&lt;/p&gt;
&lt;p&gt;零窗口探测报文的意义与时间规律（翻倍）。&lt;/p&gt;
&lt;p&gt;SRTT的计算（学习率）。&lt;/p&gt;
&lt;p&gt;RTO的变化规律（翻倍）。&lt;/p&gt;
&lt;p&gt;慢启动（一个RTT翻倍）、拥塞避免（一个RTT加1）、快恢复快重传（收到三个重复ACK，ssthresh减半）。&lt;/p&gt;
&lt;p&gt;tcpsndwnddata的cwnd窗口是以segment为单位，应当乘上1460才是字节单位。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;注意tcpsndwnddata里是以报文数为记录单位而不是时间，应当分析出来慢启动时的指数倍增。&lt;/p&gt;
&lt;p&gt;即：每收到一个ACK报文，snd_cwnd加一。看似线性。&lt;/p&gt;
&lt;p&gt;但当前处于慢启动状态，一个RTT时间内收到的ACK呈指数增长，&lt;/p&gt;
&lt;p&gt;一个RTT时间内cwnd也是如此呈指数增长。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id=&#34;往年常考题目&#34;&gt;往年常考题目
&lt;/h2&gt;&lt;p&gt;看似是常考题目，实则已经是我能扒到的全部了。。&lt;/p&gt;
&lt;h3 id=&#34;icmp-1&#34;&gt;ICMP
&lt;/h3&gt;&lt;blockquote&gt;
&lt;p&gt;在 PCB 上启动报文捕获，运行 &lt;code&gt;tracert 192.168.5.2&lt;/code&gt;，写出运行结果，分析截获的报文中有几种 ICMP 报文，有何作用？并写出每种报文的组成部分。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;每一跳对应一次 TTL 探测，TTL=1 到第一跳，TTL=2 到第二跳，直到目的主机 192.168.5.2 回复。&lt;/p&gt;
&lt;p&gt;截获报文中主要有 &lt;strong&gt;3 类 ICMP 报文&lt;/strong&gt;：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;ICMP Echo Request&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;PCB 发出的探测报文，tracert 通过逐步增大 TTL 来探测路径。&lt;/li&gt;
&lt;li&gt;Type=8，Code=0。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;ICMP Time Exceeded&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;中间路由器发现 TTL 减为 0，丢弃报文，并返回此超时报文，用来告诉源主机我就是这一跳。&lt;/li&gt;
&lt;li&gt;Type=11，Code=0。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;ICMP Echo Reply&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;目的地址 192.168.5.2 收到 Echo Request 后返回，应答成功，表示 tracert 到达终点。&lt;/li&gt;
&lt;li&gt;Type=0，Code=0。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;blockquote&gt;
&lt;p&gt;截获PCA ping PCB过程中每一跳的 ICMP 报文并上传。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;这题的难点主要在于熟练使用HUB实现中间设备间的报文捕获。&lt;/p&gt;
&lt;p&gt;要做的事情是把两台中间设备的直接连接改为通过HUB间接相连，&lt;/p&gt;
&lt;p&gt;然后选取一台PC与HUB相连，即可在此pc上通过wireshark捕获报文。&lt;/p&gt;
&lt;p&gt;建议直接使用PCC（上传配置的机器），因为其IP地址已经设置为自动分配，不易冲突。&lt;/p&gt;
&lt;h3 id=&#34;ospf-3&#34;&gt;OSPF
&lt;/h3&gt;&lt;blockquote&gt;
&lt;p&gt;在 R1 上有多少个 LSDB？多少个 LSA？并写出这些 LSA 所属的种类和作用。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;LSDB 数量取决于路由器所属的 OSPF 区域数，每个区域一个 LSDB。&lt;/p&gt;
&lt;p&gt;LSA 数量指该路由器 LSDB 中保存的链路状态通告条目数，可通过dis ospf lsdb查看。&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Type 1 Router-LSA&lt;/strong&gt;：由每台路由器产生，描述本路由器的接口、链路状态和开销，只在本区域内泛洪。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Type 2 Network-LSA&lt;/strong&gt;：由 DR 产生，描述一个广播网络/NBMA 网络中有哪些路由器连接在该网段，只在本区域内泛洪。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Type 3 Summary-LSA&lt;/strong&gt;：由 ABR 产生，把一个区域内的网段路由通告到其他区域。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Type 4 ASBR-Summary-LSA&lt;/strong&gt;：由 ABR 产生，告诉其他区域如何到达 ASBR。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Type 5 AS-External-LSA&lt;/strong&gt;：由 ASBR 产生，描述 OSPF 自治系统外部路由，比如静态路由、RIP/BGP 引入路由。&lt;/li&gt;
&lt;/ol&gt;
&lt;blockquote&gt;
&lt;p&gt;在 R1 和 S2 之间截获完整的 OSPF 协商报文，写出 DR 和 BDR 的选举结果，并结合截获报文，简述其 DR 选举的过程。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;选举结果：&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;DR&lt;/strong&gt;：优先级最高的路由器；若优先级相同，Router ID 最大者为 DR。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;BDR&lt;/strong&gt;：除 DR 外，次高者为 BDR。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;选举过程：&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;重启 OSPF 后先发送 Hello 报文。&lt;/li&gt;
&lt;li&gt;Hello Packet中携带了本端的 Router ID、Priority、当前认为的 DR/BDR、邻居列表等字段。&lt;/li&gt;
&lt;li&gt;初始时 DR/BDR 可能为 0.0.0.0，表示尚未选出。&lt;/li&gt;
&lt;li&gt;路由器收到对方 Hello 后，比较 OSPF Priority；Priority 为 0 的不参与选举。&lt;/li&gt;
&lt;li&gt;根据优先级和Router ID 先选 BDR，再选 DR。&lt;/li&gt;
&lt;li&gt;选举完成后，后续 Hello 报文中的 DR/BDR 字段会填写最终结果。&lt;/li&gt;
&lt;/ol&gt;
&lt;blockquote&gt;
&lt;p&gt;在 R1 和 S1 之间截获完整的 OSPF 报文，保存并上传。写出 DD 报文的结构，写出主从路由器，说明为什么要确认主从关系？并描述 DD 报文的交互过程。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;DD 报文主体主要字段：&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Interface MTU：接口 MTU。&lt;/li&gt;
&lt;li&gt;Options：支持的 OSPF 可选能力。&lt;/li&gt;
&lt;li&gt;I：Init，表示第一个 DD 报文，开始协商 DD 主从关系。&lt;/li&gt;
&lt;li&gt;M：More，表示后面还有 DD 报文。&lt;/li&gt;
&lt;li&gt;MS：Master/Slave，表示主从身份，Master 为 1。&lt;/li&gt;
&lt;li&gt;DD Sequence Number：DD 序列号，用于保证 DD 报文有序可靠交换。&lt;/li&gt;
&lt;li&gt;LSA Header：LSA 摘要信息，不携带完整 LSA 内容。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Router ID 大者为 Master，小者为 Slave。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;为什么确认主从关系：&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;为了避免双方同时控制 DD 序列号导致混乱。&lt;/p&gt;
&lt;p&gt;确认主从后，Master 负责产生和递增 DD Sequence Number，Slave 只响应 Master 的序列号。&lt;/p&gt;
&lt;p&gt;（注意这个序列号和 TCP 有 0 个关系）&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;DD 交互过程：&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;peer 进入 ExStart 状态，双方互发第一个 DD 报文，I=1, M=1, MS=1，都声称自己是 Master。&lt;/li&gt;
&lt;li&gt;双方比较 Router ID，Router ID 大者成为 Master，小者成为 Slave。&lt;/li&gt;
&lt;li&gt;Slave 用与 Master 的 DD 报文相等 的序列号发出回复。&lt;/li&gt;
&lt;li&gt;peer 进入 ExChange状态。Master 收到 Slave 回复后，将序列号加 1，发送携带 LSA Header 的 DD 报文。&lt;/li&gt;
&lt;li&gt;Slave 继续用与 Master 的 DD 报文相等的序列号发出回复。&lt;/li&gt;
&lt;li&gt;双方通过 M 位判断是否还有更多 DD 报文。&lt;/li&gt;
&lt;li&gt;当双方 DD 交换完成后，进入 Loading 状态，根据 DD 中发现的不同，发送 LSR 请求完整 LSA。&lt;/li&gt;
&lt;/ol&gt;
&lt;blockquote&gt;
&lt;p&gt;画出以 R1 为根的 OSPF 路由计算的最短路径树。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;直接以 R1 为根，以 cost 为权值构建最小生成树即可。&lt;/p&gt;
&lt;p&gt;难点在作图方面：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;一个大圆圈表示设备。 填上设备名称和 router id。&lt;/li&gt;
&lt;li&gt;画出各设备结点构成的树，边使用双向箭头表示。&lt;/li&gt;
&lt;li&gt;对每条边标记cost值，以及端点的IP地址。&lt;/li&gt;
&lt;li&gt;容易发现每条边也代表一个网段。垂直于边画一条线，再画出TransNet(长椅状)网段。标记网段的IP。&lt;/li&gt;
&lt;li&gt;对于在最小生成树上不连接其他设备，而是仅与根设备直连的网段（末梢网络），应作为StubNet(矩形)与根设备相连，同样记录cost值。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;给大家一个组网的例子，红色线表示最小生成树。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://demiurge-zby.github.io/p/buaa-cn-week8-%E6%9C%9F%E6%9C%AB%E6%A8%A1%E6%8B%9F/net.png&#34;
	width=&#34;768&#34;
	height=&#34;586&#34;
	srcset=&#34;https://demiurge-zby.github.io/p/buaa-cn-week8-%E6%9C%9F%E6%9C%AB%E6%A8%A1%E6%8B%9F/net_hu2252749840728263161.png 480w, https://demiurge-zby.github.io/p/buaa-cn-week8-%E6%9C%9F%E6%9C%AB%E6%A8%A1%E6%8B%9F/net_hu1700690418651362117.png 1024w&#34;
	loading=&#34;lazy&#34;
	
		alt=&#34;net&#34;
	
	
		class=&#34;gallery-image&#34; 
		data-flex-grow=&#34;131&#34;
		data-flex-basis=&#34;314px&#34;
	
&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://demiurge-zby.github.io/p/buaa-cn-week8-%E6%9C%9F%E6%9C%AB%E6%A8%A1%E6%8B%9F/tree.png&#34;
	width=&#34;742&#34;
	height=&#34;597&#34;
	srcset=&#34;https://demiurge-zby.github.io/p/buaa-cn-week8-%E6%9C%9F%E6%9C%AB%E6%A8%A1%E6%8B%9F/tree_hu14823032323605969239.png 480w, https://demiurge-zby.github.io/p/buaa-cn-week8-%E6%9C%9F%E6%9C%AB%E6%A8%A1%E6%8B%9F/tree_hu13231840555322262784.png 1024w&#34;
	loading=&#34;lazy&#34;
	
		alt=&#34;生成树图例&#34;
	
	
		class=&#34;gallery-image&#34; 
		data-flex-grow=&#34;124&#34;
		data-flex-basis=&#34;298px&#34;
	
&gt;&lt;/p&gt;
&lt;h3 id=&#34;tcp-2&#34;&gt;TCP
&lt;/h3&gt;&lt;h4 id=&#34;中途shutdown&#34;&gt;中途shutdown
&lt;/h4&gt;&lt;blockquote&gt;
&lt;p&gt;超时重传开始的报文序号？在发生报文超时重传时，RTT 和 RTO 值有何变化？特别是 RTO 值有何特定变化规律？为什么？继续正常报文传输时 RTT 和 RTO 值又有何变化？&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;超时重传开始的报文序号是&lt;strong&gt;链路断开后第一个没有收到 ACK 的 TCP 数据段序号&lt;/strong&gt;，也就是抓包中第一个标记为 TCP Retransmission 的报文的 Seq。&lt;/p&gt;
&lt;p&gt;超时重传时间差规律：&lt;/p&gt;
&lt;p&gt;第一次超时后重传，之后重传间隔大致按 &lt;strong&gt;指数退避&lt;/strong&gt; 增长。&lt;/p&gt;
&lt;p&gt;原因是链路关闭后 ACK 回不来，发送端认为网络拥塞或路径不可达，于是 &lt;strong&gt;TCP 重传定时器超时&lt;/strong&gt;，并按指数退避增大等待时间，避免继续大量发送加重网络负担。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;RTT&lt;/strong&gt;：因为重传报文的 ACK 无法判断对应原报文还是重传报文，通常不用于更新 RTT，RTT 估计可能暂停或不可靠。(Karn 算法)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;RTO&lt;/strong&gt;：每次超时后按指数退避增大。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;链路恢复、继续正常传输后：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;RTT&lt;/strong&gt;：重新根据正常 ACK 样本更新，逐渐恢复到实际网络时延附近。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;RTO&lt;/strong&gt;：随着 RTT/RTT 偏差重新估计，逐渐下降到较合理值。&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;设置休眠&#34;&gt;设置休眠
&lt;/h4&gt;&lt;blockquote&gt;
&lt;p&gt;给出 TCP 连接建立后，数据传输对应的滑动窗口变化的过程和规律，并解释为什么。&lt;/p&gt;
&lt;p&gt;列出零窗口探查报文的序号和报文发送的时间，解释其过程和时间规律。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;数据传输开始时，发送窗口由 min(cwnd, rwnd) 决定。初期接收缓存还充足，rwnd 较大，主要受拥塞窗口 cwnd 限制；TCP 处于慢启动，收到 ACK 后 cwnd 增大，所以发送窗口逐渐增大。&lt;/p&gt;
&lt;p&gt;接收端休眠后，应用层不读缓存，接收缓存逐渐被占满，通告窗口 rwnd 逐渐减小，发送窗口随之缩小，最后变为 0，发送方停止正常发送数据。&lt;/p&gt;
&lt;p&gt;出现 0 窗口后，发送方不能继续发送正常数据，但会发送零窗口探查报文，防止接收方窗口重新打开的通知丢失后双方永久等待。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;若窗口仍为 0，发送方继续探查，时间间隔通常逐渐增大，近似&lt;strong&gt;指数退避&lt;/strong&gt;。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;若接收方通告非零窗口，发送方恢复正常传输。&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;报文发送的时间可以在报文详细信息的最外层看到。&lt;/p&gt;
&lt;h4 id=&#34;丢包与快重传&#34;&gt;丢包与快重传
&lt;/h4&gt;&lt;blockquote&gt;
&lt;p&gt;请写出前三个重复 ACK 的报文序号。在第三个重复 ACK 报文到达后，发送报文发生什么变化？为什么？&lt;/p&gt;
&lt;p&gt;在此期间，ssthresh 和 cwnd 有何变化？RTT 和 RTO 有何变化？为什么？&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;接收方连续发出的、&lt;strong&gt;ACK 号相同&lt;/strong&gt;的三个 ACK，一直在说自己还在等这个字节开始的数据。&lt;/p&gt;
&lt;p&gt;这种情况一般被作为丢包的标志。&lt;/p&gt;
&lt;p&gt;第三个重复 ACK 到达后，发送方会&lt;strong&gt;立即重传丢失的报文段&lt;/strong&gt;，不再等待超时定时器到期。&lt;/p&gt;
&lt;p&gt;与超时不同，发送方正常收到了ACK，因此网络只是发生了丢包，TCP 触发&lt;strong&gt;快速重传&lt;/strong&gt;，并且 ssthresh和cwnd变为原cwnd的一半，并进入拥塞避免，cwnd 线性增长。&lt;/p&gt;
&lt;p&gt;因为没有发生超时，RTO &lt;strong&gt;不会指数退避翻倍&lt;/strong&gt;。&lt;/p&gt;
&lt;p&gt;RTT也基本不变，因为无法判断 ACK 是确认原报文还是重传报文，重传报文的 RTT 不用于更新 RTT 估计。&lt;/p&gt;
&lt;h4 id=&#34;正常传输&#34;&gt;正常传输
&lt;/h4&gt;&lt;blockquote&gt;
&lt;p&gt;填写数据传输前N个报文的报文序号，源IP，目的IP，左边沿，指针，右边沿&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;注意DATA报文和ACK报文对窗口的影响是不同的。&lt;/p&gt;
&lt;p&gt;DATA改变指针，ACK改变左边沿和右边沿。&lt;/p&gt;
&lt;p&gt;具体值可以在tcpsndwnddata.txt里面找。&lt;/p&gt;
&lt;h3 id=&#34;ftp&#34;&gt;FTP
&lt;/h3&gt;&lt;blockquote&gt;
&lt;p&gt;开启报文捕获，访问 FTP 服务器，并下载一个文件。保存、上传和分析截获的 FTP 协议报文，其所基于的传输层协议是什么？其熟知端口号和用途是什么？所用的命令是什么？写出 FTP 协议工作的过程。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;FTP 基于 &lt;strong&gt;TCP&lt;/strong&gt;，因为它需要可靠、有序的文件传输。&lt;/p&gt;
&lt;p&gt;TCP 21号端口：&lt;strong&gt;控制连接&lt;/strong&gt;，用于登录、认证、发送命令和接收响应&lt;/p&gt;
&lt;p&gt;TCP 20号端口：&lt;strong&gt;数据连接&lt;/strong&gt;，主动模式下服务器用 20 端口建立数据连接传输文件，被动模式下数据连接不一定用 20 端口，而是服务器临时开放一个高端口给Client连接。&lt;/p&gt;
&lt;p&gt;常用命令，考试根据报文如实填写即可：&lt;/p&gt;
&lt;p&gt;USER 用户名      登录用户名&lt;/p&gt;
&lt;p&gt;PASS 密码        登录密码&lt;/p&gt;
&lt;p&gt;SYST             查询服务器系统类型&lt;/p&gt;
&lt;p&gt;PWD              查询当前目录&lt;/p&gt;
&lt;p&gt;TYPE I           设置二进制传输&lt;/p&gt;
&lt;p&gt;PASV / PORT      建立数据连接方式&lt;/p&gt;
&lt;p&gt;LIST / RETR      列目录 / 下载文件&lt;/p&gt;
&lt;p&gt;QUIT             退出&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;FTP 工作过程&lt;/strong&gt;（在此主要理解结构，考试根据实际报文情况填写）：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;C -&amp;gt; S：TCP SYN，目的端口 21&lt;/li&gt;
&lt;li&gt;S -&amp;gt; C：TCP SYN ACK，源端口 21&lt;/li&gt;
&lt;li&gt;C -&amp;gt; S：TCP ACK，控制连接建立&lt;/li&gt;
&lt;li&gt;S -&amp;gt; C：220，FTP 服务就绪&lt;/li&gt;
&lt;li&gt;C-&amp;gt; S：USER 用户名&lt;/li&gt;
&lt;li&gt;S -&amp;gt; C：331，需要密码&lt;/li&gt;
&lt;li&gt;C -&amp;gt; S：PASS 密码&lt;/li&gt;
&lt;li&gt;S -&amp;gt; C：230，登录成功&lt;/li&gt;
&lt;/ol&gt;
&lt;hr&gt;
&lt;p&gt;TCP SYN/ACK，数据连接建立（主动/被动）&lt;/p&gt;
&lt;p&gt;C -&amp;gt; S：RETR 文件名，请求下载文件&lt;/p&gt;
&lt;p&gt;S -&amp;gt; C：150，准备打开数据连接并传输文件&lt;/p&gt;
&lt;p&gt;文件传完后，数据连接 TCP FIN/ACK 挥手关闭&lt;/p&gt;
&lt;hr&gt;
&lt;ol&gt;
&lt;li&gt;S -&amp;gt; C：226 Transfer complete，文件传输完成&lt;/li&gt;
&lt;li&gt;C -&amp;gt; S：QUIT&lt;/li&gt;
&lt;li&gt;S -&amp;gt; C：221 Goodbye&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;状态转移&#34;&gt;状态转移
&lt;/h3&gt;&lt;p&gt;常考的是PAP、OSPF与BGP。&lt;/p&gt;
&lt;p&gt;其中前者已提供配置命令，需要当场完成PAP配置、debug信息截图与画状态转移图。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;所以会背了也还是要会配！ 背下来只是以防万一。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;后两者考试时往往将命令书写作为题目之一填写。&lt;/p&gt;
&lt;p&gt;倒也简单，分别是&lt;/p&gt;
&lt;p&gt;debugging ospf event&lt;/p&gt;
&lt;p&gt;terminal debugging&lt;/p&gt;
&lt;p&gt;和&lt;/p&gt;
&lt;p&gt;debugging bgp event&lt;/p&gt;
&lt;p&gt;terminal debugging&lt;/p&gt;
&lt;h2 id=&#34;配置上传&#34;&gt;配置上传
&lt;/h2&gt;&lt;p&gt;留一台干净的电脑，比如PCC。&lt;/p&gt;
&lt;p&gt;将其IP地址设置为自动获取。&lt;/p&gt;
&lt;p&gt;打开PCC的PuTTY，依次将PCC串口与S1,S2,R1,R2,R3,R4的CONSOLE口相连。&lt;/p&gt;
&lt;p&gt;每次连接后，ctrl+G或者dis cu，然后按空格进行快速加载，加载完毕后秒切下一台。&lt;/p&gt;
&lt;p&gt;全部加载完毕后，直接点击左上角菜单项的copy all to clipboard，&lt;/p&gt;
&lt;p&gt;在桌面新建“组号座位号-学号姓名.txt”文本文件，粘贴内容。&lt;/p&gt;
&lt;p&gt;为PCC连接校园网，上传至FTP。&lt;/p&gt;
&lt;h2 id=&#34;结语&#34;&gt;结语
&lt;/h2&gt;&lt;p&gt;祝顺利。&lt;/p&gt;
</description>
        </item>
        <item>
        <title>BUAA CN Week7 SDN</title>
        <link>https://demiurge-zby.github.io/p/buaa-cn-week7-sdn/</link>
        <pubDate>Sat, 23 May 2026 20:15:30 +0800</pubDate>
        
        <guid>https://demiurge-zby.github.io/p/buaa-cn-week7-sdn/</guid>
        <description>&lt;img src="https://demiurge-zby.github.io/p/buaa-cn-week7-sdn/cry.png" alt="Featured image of post BUAA CN Week7 SDN" /&gt;&lt;h2 id=&#34;说在前面&#34;&gt;说在前面
&lt;/h2&gt;&lt;p&gt;本次课最重要的内容是听清楚期末考试安排。&lt;/p&gt;
&lt;p&gt;本次实验比较特殊，需要在虚拟机上完成。&lt;/p&gt;
&lt;p&gt;建议提前下载好ftp里share_folder里面sdn的文件夹。&lt;/p&gt;
&lt;p&gt;该文件夹有本次实验需要的虚拟机环境以及firewall.py。&lt;/p&gt;
&lt;p&gt;因此本次实验虽然是线下上机，但是操作完全在自己电脑上，且两人不能并行工作。&lt;/p&gt;
&lt;h2 id=&#34;实验部分&#34;&gt;实验部分
&lt;/h2&gt;&lt;p&gt;sdn：软件控制网络。义如其名。&lt;/p&gt;
&lt;p&gt;实验过程非常详细，跟着指导书操作就没有问题。&lt;/p&gt;
&lt;p&gt;可能出现的问题：&lt;/p&gt;
&lt;p&gt;firewall.py在vim复制出现缩进错误。&lt;/p&gt;
&lt;p&gt;解决方案：&lt;/p&gt;
&lt;p&gt;先vim一个txt文件，就会发现复制后的缩进又正常了。&lt;/p&gt;
&lt;p&gt;然后再cp为py文件。&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;可能出现的问题：&lt;/p&gt;
&lt;p&gt;设计型实验未能拦截ICMP&lt;/p&gt;
&lt;p&gt;解决方案：&lt;/p&gt;
&lt;p&gt;把流表清一下：sh ovs-ofctl -O OpenFlow13 del-flows s1&lt;/p&gt;
&lt;h2 id=&#34;后记&#34;&gt;后记
&lt;/h2&gt;&lt;p&gt;稍后会出一个期末复习帖。&lt;/p&gt;
</description>
        </item>
        <item>
        <title>BUAA CN Week6 A层</title>
        <link>https://demiurge-zby.github.io/p/buaa-cn-week6-a%E5%B1%82/</link>
        <pubDate>Fri, 15 May 2026 20:15:30 +0800</pubDate>
        
        <guid>https://demiurge-zby.github.io/p/buaa-cn-week6-a%E5%B1%82/</guid>
        <description>&lt;img src="https://demiurge-zby.github.io/p/buaa-cn-week6-a%E5%B1%82/milk.png" alt="Featured image of post BUAA CN Week6 A层" /&gt;&lt;h2 id=&#34;说在前面&#34;&gt;说在前面
&lt;/h2&gt;&lt;p&gt;本次博客就相对精简一点。&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;NAT属于基本技能，需要掌握。其余做好实验即可。&lt;/li&gt;
&lt;li&gt;难点主要在于各种应用的使用，尤其是邮件。&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;实验部分&#34;&gt;实验部分
&lt;/h2&gt;&lt;ol&gt;
&lt;li&gt;递归查询与迭代查询是理论知识，建议补习。&lt;/li&gt;
&lt;li&gt;DHCP报文筛选时使用bootp。因为DHCP是bootp上的扩展。&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;后记&#34;&gt;后记
&lt;/h2&gt;&lt;p&gt;应用层也不是很重要，会看这篇博客的人可能也只有个位数。&lt;/p&gt;
&lt;p&gt;这个时候23级的同学大多数已经把实验做完了，24级同学预习又完全没必要做到太深的程度。&lt;/p&gt;
&lt;p&gt;此外应用上的具体问题找老师助教解决即可，在这里讲解意义不大。&lt;/p&gt;
&lt;p&gt;这篇博客差不多就是充数的吧。嗯对。&lt;/p&gt;
&lt;p&gt;也没有什么要重新补习的知识点。&lt;/p&gt;
</description>
        </item>
        <item>
        <title>BUAA CN Week5 BGP</title>
        <link>https://demiurge-zby.github.io/p/buaa-cn-week5-bgp/</link>
        <pubDate>Mon, 11 May 2026 19:15:30 +0800</pubDate>
        
        <guid>https://demiurge-zby.github.io/p/buaa-cn-week5-bgp/</guid>
        <description>&lt;img src="https://demiurge-zby.github.io/p/buaa-cn-week5-bgp/love.png" alt="Featured image of post BUAA CN Week5 BGP" /&gt;&lt;h2 id=&#34;说在前面&#34;&gt;说在前面
&lt;/h2&gt;&lt;p&gt;久违的线下上机是怎样的体验呢？&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;接触不良还在追我，，&lt;/p&gt;
&lt;p&gt;请一定使用能卡紧的线！&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;除此之外呢，请你一定要提前阅读共享文档。&lt;/p&gt;
&lt;p&gt;链接我都懒得贴了。&lt;/p&gt;
&lt;p&gt;我们的设备比课本上更先进一点，因此指令常常有不一致的地方。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;最后，请你一定记得在每次重启后，&lt;/p&gt;
&lt;p&gt;完成上机必做任务（尤其是路由器vlan1）&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;理论知识&#34;&gt;理论知识
&lt;/h2&gt;&lt;p&gt;我们简单回顾一下理论课中对BGP的认识：&lt;/p&gt;
&lt;p&gt;和RIP、OSPF一样，BGP是在网络层章节学习到的一种路由选择协议。&lt;/p&gt;
&lt;p&gt;其中&lt;strong&gt;RIP和OSPF都是IGP，在同一AS内进行&lt;/strong&gt;。（前者为DV后者为LS）&lt;/p&gt;
&lt;p&gt;而BGP是EGP范畴内的，主要实现的是&lt;strong&gt;跨AS的路由选择&lt;/strong&gt;。（算法为：Path-Vector）&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;算法逻辑与DV类似，不过实际考量时会有多种依据。&lt;/p&gt;
&lt;p&gt;常用的是 &lt;strong&gt;AS_PATH长度&lt;/strong&gt;，即基于经过的AS个数来判断。&lt;/p&gt;
&lt;p&gt;此外还有两条人为添加的属性偏好：&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;local preference 优先级最高&lt;/strong&gt;。数值越高越优先去。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;MED优先级低于AS_PATH&lt;/strong&gt;。数值越低越优先去。&lt;/p&gt;
&lt;p&gt;(MED可以视为对方的推荐度，只有AS_PATH一致才会考虑MED)&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;跨AS的路由选择需要看两个表：&lt;/p&gt;
&lt;p&gt;BGP表(AS间)和Routing表(AS内)，两者合一可以视为Forwarding表。&lt;/p&gt;
&lt;h2 id=&#34;实验部分&#34;&gt;实验部分
&lt;/h2&gt;&lt;p&gt;本次实验操作相对简单，&lt;/p&gt;
&lt;p&gt;主要是因为许多实验的组网完全不变，仅仅是增加了几个LoopBack。&lt;/p&gt;
&lt;p&gt;但是实验背后的原理依旧有大量理论课未能涉及的内容。&lt;/p&gt;
&lt;h3 id=&#34;路由聚合&#34;&gt;路由聚合
&lt;/h3&gt;&lt;p&gt;路由聚合机制本身可能会触发&lt;strong&gt;黑洞&lt;/strong&gt;。&lt;/p&gt;
&lt;p&gt;黑洞不难想象为一个&lt;/p&gt;
&lt;p&gt;报文经过此处就会沦陷的地方。&lt;/p&gt;
&lt;h4 id=&#34;啥黑洞&#34;&gt;啥？黑洞
&lt;/h4&gt;&lt;p&gt;因为它将多个网段聚合为一个大网段，&lt;/p&gt;
&lt;p&gt;如果小网段崩溃，由于聚合路由存在，&lt;/p&gt;
&lt;p&gt;报文依然可以&lt;strong&gt;被正确路由到该网段&lt;/strong&gt;，&lt;/p&gt;
&lt;p&gt;然后丢失。 也就是黑洞。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;聚合可以视为路由器在宣称自己拥有&lt;strong&gt;很可能比实际更大&lt;/strong&gt;的地址空间。&lt;/p&gt;
&lt;p&gt;一旦流量想去往聚合范围内、但实际不存在的地址，就会导致数据包在传输后被丢弃。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h4 id=&#34;关bgp啥事&#34;&gt;关BGP啥事
&lt;/h4&gt;&lt;p&gt;在AS内部，&lt;strong&gt;全域的可见性&lt;/strong&gt;通常能快速修复这种不精确带来的黑洞。&lt;/p&gt;
&lt;p&gt;但在BGP这种跨AS背景下，黑洞问题就尤为突出。&lt;/p&gt;
&lt;p&gt;AS间的&lt;strong&gt;信息隔离&lt;/strong&gt;使得聚合的发起者无法将内部明细网络的失效信息及时传递给外部，&lt;/p&gt;
&lt;p&gt;只要聚合范围内&lt;strong&gt;仍有一条有效路由&lt;/strong&gt;，聚合路由便会被维持，&lt;/p&gt;
&lt;p&gt;从而导致一个AS内部的故障变成了影响整个互联网的持续性黑洞。&lt;/p&gt;
&lt;h3 id=&#34;同步机制&#34;&gt;同步机制
&lt;/h3&gt;&lt;p&gt;我们直接来看课本定义：&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;BGP 规定：一个 BGP 路由器不把从  &lt;em&gt;内部 BGP 对等体&lt;/em&gt;  得知的路由信息通告给  &lt;em&gt;外部对等体&lt;/em&gt; ，除非该路由信息  &lt;em&gt;也能通过 IGP&lt;/em&gt;  得知，这就是 BGP 的同步机制。&lt;/strong&gt;&lt;/p&gt;
&lt;h4 id=&#34;啥是bgp对等体&#34;&gt;啥是BGP对等体
&lt;/h4&gt;&lt;p&gt;可以理解为建立了BGP对话的两台路由器。&lt;/p&gt;
&lt;p&gt;分为IBGP对等体与EBGP对等体。&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;设想这样一个场景：&lt;/p&gt;
&lt;p&gt;AS1 RA &amp;mdash;&amp;mdash;-  AS2  R1 &amp;mdash;- AS2 R0 &amp;mdash;&amp;ndash; AS2 R2 &amp;mdash;&amp;mdash;- AS3 RB&lt;/p&gt;
&lt;p&gt;其中RA和R1、RB和R2是EBGP对等体。&lt;/p&gt;
&lt;p&gt;R1和R2是IBGP对等体。&lt;/p&gt;
&lt;p&gt;R0是纯IGP路由器，没有BGP表。&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;那么就会有：&lt;/p&gt;
&lt;p&gt;R2通过EBGP得知到RB的路由，并通过IGP传递给R1。&lt;/p&gt;
&lt;p&gt;那R1能不能直接告诉RA怎么去RB呢？&lt;/p&gt;
&lt;h4 id=&#34;如果告诉你&#34;&gt;如果告诉你
&lt;/h4&gt;&lt;p&gt;那同理 RB 也知道怎么去RA了。&lt;/p&gt;
&lt;p&gt;可以ping通了&lt;/p&gt;
&lt;p&gt;吗？&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;同步机制，本质上是&lt;strong&gt;不懂BGP路由器&lt;/strong&gt;的需要被同步那些它不懂的BGP路由。&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;IGP的链路包含R0，&lt;/p&gt;
&lt;p&gt;R0也确实传递了BGP信息没错，&lt;/p&gt;
&lt;p&gt;但是R0在此过程中没能学习到BGP，也不认识其他AS。&lt;/p&gt;
&lt;p&gt;因此，如果RA ping RB，&lt;/p&gt;
&lt;p&gt;报文在传递到R0之后，就被R0销毁了。&lt;/p&gt;
&lt;h4 id=&#34;又是黑洞&#34;&gt;又是黑洞？
&lt;/h4&gt;&lt;p&gt;没错，这也是&lt;strong&gt;黑洞&lt;/strong&gt;。&lt;/p&gt;
&lt;p&gt;总之就是发送的时候，路由表欺骗了我能到，有路由，结果发到路上，被销毁了。&lt;/p&gt;
&lt;p&gt;这种情况最好是不能发送，&lt;/p&gt;
&lt;p&gt;也就是路由表团结一致，早点告诉我此路不通。&lt;/p&gt;
&lt;h4 id=&#34;怎么样才能告诉你&#34;&gt;怎么样才能告诉你
&lt;/h4&gt;&lt;p&gt;如果早知道这个R0啥也不懂，&lt;/p&gt;
&lt;p&gt;R1肯定不会去告诉RA，&lt;/p&gt;
&lt;p&gt;不会让RA以为自己能去RB。&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;这也就是同步机制：&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;一个 BGP 路由器不把从  &lt;em&gt;内部 BGP 对等体&lt;/em&gt;  得知的路由信息通告给  &lt;em&gt;外部对等体&lt;/em&gt; ，除非该路由信息  &lt;em&gt;也能通过 IGP&lt;/em&gt;  得知。&lt;/strong&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;因此，只需要给R0配好静态路由，&lt;/p&gt;
&lt;p&gt;并通过IGP传递给R1和R2，&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;让R1和R2知道R0已经学会了，&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;就满足了同步机制，&lt;/p&gt;
&lt;p&gt;也就能&lt;strong&gt;在规避黑洞的基础上&lt;/strong&gt;让PCA ping 通 PCB了。&lt;/p&gt;
&lt;h2 id=&#34;后记&#34;&gt;后记
&lt;/h2&gt;&lt;p&gt;好累好累好累。。。。&lt;/p&gt;
&lt;p&gt;先睡了待会再写。&lt;/p&gt;
</description>
        </item>
        <item>
        <title>BUAA CN Week4 T层</title>
        <link>https://demiurge-zby.github.io/p/buaa-cn-week4-t%E5%B1%82/</link>
        <pubDate>Thu, 30 Apr 2026 19:15:30 +0800</pubDate>
        
        <guid>https://demiurge-zby.github.io/p/buaa-cn-week4-t%E5%B1%82/</guid>
        <description>&lt;img src="https://demiurge-zby.github.io/p/buaa-cn-week4-t%E5%B1%82/aaaa.png" alt="Featured image of post BUAA CN Week4 T层" /&gt;&lt;h2 id=&#34;说在前面&#34;&gt;说在前面
&lt;/h2&gt;&lt;p&gt;本周是五一假期周，但是实验的进度并不停滞。&lt;/p&gt;
&lt;p&gt;学生需自行预约时间完成传输层的实验内容。&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;实验本身的操作难度约等于0，而理论分析的含量非常高。&lt;/p&gt;
&lt;p&gt;TCP在理论课中已占了较大的篇幅，因此本次博客不强调理论知识，&lt;/p&gt;
&lt;p&gt;着重讲解linux线上平台的使用。&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;上篇博客我们使用的是与机房环境更加相似的Winxp系统，&lt;/p&gt;
&lt;p&gt;这次TCP实验则需要我们使用Linux系统进行操作。&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;还是老样子，我把需要注意的细节先放在最前面：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;在第一次博客中便提到这个链接：&lt;a href=&#34;https://docs.qq.com/doc/DVXJTdkV1UFJFcWZz&#34; onclick=&#34;window.open(this.href,&#39;_blank&#39;);return false;&#34;&gt;
网络实验常见问题解答&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;它应该能解决你绝大多数的问题，例如登录账号密码，如何连接中间设备，如何配置主机IP，如何修改sequence号为具体数值等等。&lt;/p&gt;
&lt;p&gt;下面我就讲文档里没有的内容。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;PC与中间设备的对应关系和之前是一样的。虽然这次桌面上没有快捷方式，但是在终端minicom之后对应的中间设备仍然是唯一确定的。&lt;/p&gt;
&lt;p&gt;PCA：S1、PCB：S2、PCC：R1、PCD：R2&lt;/p&gt;
&lt;p&gt;你问我怎么知道的？ dis cu 再结合实验验证即可确定。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;PCB一般来说有Eth0和Eth1两个网络，请一定注意配置IP地址时，连接的是你组网的那个端口。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;linux的窗口关闭/最大化/最小化位于左上角。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;linux好像不支持双击。打开文件夹都得右键Open。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;无意间探索到的一些快捷键：（&lt;strong&gt;超级终端&lt;/strong&gt;均可使用）&lt;/p&gt;
&lt;p&gt;ctrl+L = dis ip r，可以快速查看路由表信息&lt;/p&gt;
&lt;p&gt;ctrl+G = dis cu，可以快速查看当前设备的配置&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;实验部分&#34;&gt;实验部分
&lt;/h2&gt;&lt;p&gt;正如前文所说，本次实验组网很简单，而难点在于分析。&lt;/p&gt;
&lt;p&gt;首先提醒大家TCP的三个实验前需要记录一下&lt;strong&gt;发送方初始序号&lt;/strong&gt;，实验报告要填。&lt;/p&gt;
&lt;p&gt;TCP实验主要考察了：连接控制、流量控制、拥塞控制。&lt;/p&gt;
&lt;h3 id=&#34;连接控制&#34;&gt;连接控制
&lt;/h3&gt;&lt;p&gt;其实就是三次握手和四次挥手。&lt;/p&gt;
&lt;p&gt;这是理论课的重点，这里就简单概括几条：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;建立连接是SYN，结束连接是FIN。&lt;/li&gt;
&lt;li&gt;建立连接时，报文的TCP Header会有Option来约定MSS以及是否SACK等内容。&lt;/li&gt;
&lt;li&gt;建立：Client发出SYN请求，Server回应请求并发出SYN请求，Client回应请求。&lt;/li&gt;
&lt;li&gt;结束：Client发出FIN请求，Server回应请求（此时还可以发数据），Server发出FIN请求，Client回应请求。&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;滑动窗口&#34;&gt;滑动窗口
&lt;/h3&gt;&lt;p&gt;需要注意拥塞窗口常常写成以报文数为单位，而发送窗口与接收窗口以字节数为单位，中间有1460的倍数关系。&lt;/p&gt;
&lt;p&gt;下面解释几个名词。&lt;/p&gt;
&lt;p&gt;rcv_wnd：接收窗口的大小，来自于ACK报文的TCP Header信息。&lt;/p&gt;
&lt;p&gt;snd_wnd_left：发送窗口的最左侧，也即已发出且尚未确认的最早字节号。&lt;/p&gt;
&lt;p&gt;snd_wnd_pointer：当前正在发送的字节号。&lt;/p&gt;
&lt;p&gt;snd_wnd_point-left：已发出且尚未确认的字节数。&lt;/p&gt;
&lt;p&gt;snd_wnd_left+cwnd：拥塞窗口限制下的发送窗口右边缘。&lt;/p&gt;
&lt;p&gt;snd_wnd_left+rcv_wnd：接收窗口限制下的发送窗口右边缘。&lt;/p&gt;
&lt;p&gt;发送窗口右边沿：上面两行中的最小者作为真正的发送窗口右边缘。&lt;/p&gt;
&lt;p&gt;通告的接收窗口：ACK报文视角下的rcv_wnd。&lt;/p&gt;
&lt;p&gt;接收窗口左边沿：当前已接收未确认的最早字节号，数值等同于对应字节的snd_wnd_left。&lt;/p&gt;
&lt;p&gt;接收窗口指针：当前正在接受的字节号，数值等同于对应字节的snd_wnd_pointer。&lt;/p&gt;
&lt;p&gt;接收窗口右边沿：数值等同于对应字节的snd_wnd_left+rcv_wnd。&lt;/p&gt;
&lt;p&gt;在接收缓存中的数据量（即未确认的数据）：数值等同于对应字节的snd_wnd_point-left。&lt;/p&gt;
&lt;p&gt;具体知识见理论。这是理论重点。&lt;/p&gt;
&lt;p&gt;关注零窗口报文Zero-Window及其探测报文Keep-Alive。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;注意理论课讲的保活计时器虽然也是Keep Alive，&lt;/p&gt;
&lt;p&gt;但目的完全不同，保活计时器是用于Server端建立连接后迟迟收不到请求的情况，&lt;/p&gt;
&lt;p&gt;而零窗口探测报文只是用于询问对方现在是否愿意接受字节（观测对方ACK报文的rcv_wnd）&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3 id=&#34;拥塞控制&#34;&gt;拥塞控制
&lt;/h3&gt;&lt;p&gt;这位更是理论重重点，大题必考。&lt;/p&gt;
&lt;p&gt;没啥讲的必要，写了也0个人会看。&lt;/p&gt;
&lt;h2 id=&#34;后记&#34;&gt;后记
&lt;/h2&gt;&lt;p&gt;UDP后续再补，这篇博客目前很水，&lt;/p&gt;
&lt;p&gt;不过水就水吧，确实没有太多需要说的。&lt;/p&gt;
&lt;p&gt;先这样发了。&lt;/p&gt;
&lt;h2 id=&#34;后后记&#34;&gt;后后记
&lt;/h2&gt;&lt;p&gt;UDP实验更是简单啊同学们。&lt;/p&gt;
&lt;p&gt;简单提醒两点：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;有些同学会出现连ping都ping不通的现象，&lt;/p&gt;
&lt;p&gt;这大多数情况是因为你的虚拟机遗留有前人的环境，&lt;/p&gt;
&lt;p&gt;reset saved-configuration Y&lt;/p&gt;
&lt;p&gt;然后reboot N Y 即可。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;明明只想看UDP报文却筛选到一堆乱七八糟的？&lt;/p&gt;
&lt;p&gt;LLMNR NBNS这些是应用层协议，他们的传输层也是UDP哦。&lt;/p&gt;
&lt;p&gt;那怎么进行筛选？&lt;/p&gt;
&lt;p&gt;使用 &lt;code&gt;udp and data&lt;/code&gt; 即可。&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
</description>
        </item>
        <item>
        <title>BUAA CN Week3.5 OSPF-Online</title>
        <link>https://demiurge-zby.github.io/p/buaa-cn-week3.5-ospf-online/</link>
        <pubDate>Sun, 26 Apr 2026 19:15:30 +0800</pubDate>
        
        <guid>https://demiurge-zby.github.io/p/buaa-cn-week3.5-ospf-online/</guid>
        <description>&lt;img src="https://demiurge-zby.github.io/p/buaa-cn-week3.5-ospf-online/aaa.png" alt="Featured image of post BUAA CN Week3.5 OSPF-Online" /&gt;&lt;h2 id=&#34;说在前面&#34;&gt;说在前面
&lt;/h2&gt;&lt;p&gt;通过自行预约实验平台，我们完成了OSPF实验中上次未能完成的内容，&lt;/p&gt;
&lt;p&gt;顺便也熟悉了一下线上平台的使用方法。&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;结果又用了整整4个小时才做完。&lt;/p&gt;
&lt;p&gt;因此我打算写下这篇文章，帮助大家更迅速地上手实验平台。&lt;/p&gt;
&lt;h2 id=&#34;vmware-workstation-pro&#34;&gt;VMware Workstation Pro
&lt;/h2&gt;&lt;p&gt;下载链接：&lt;/p&gt;
&lt;a href=&#34;https://knowledge.broadcom.com/external/article?articleNumber=344595&#34; onclick=&#34;window.open(this.href,&#39;_blank&#39;);return false;&#34;&gt;
     点击我进入官方下载页面 &lt;/a&gt;
&lt;p&gt;有一些点需要注意：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;你必须在broadcom注册账号&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;在下载前你可能会看到这个：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://demiurge-zby.github.io/p/buaa-cn-week3.5-ospf-online/no.png&#34;
	width=&#34;343&#34;
	height=&#34;61&#34;
	srcset=&#34;https://demiurge-zby.github.io/p/buaa-cn-week3.5-ospf-online/no_hu17319676374304149983.png 480w, https://demiurge-zby.github.io/p/buaa-cn-week3.5-ospf-online/no_hu12163373324084061163.png 1024w&#34;
	loading=&#34;lazy&#34;
	
		alt=&#34;can you agree?&#34;
	
	
		class=&#34;gallery-image&#34; 
		data-flex-grow=&#34;562&#34;
		data-flex-basis=&#34;1349px&#34;
	
&gt;&lt;/p&gt;
&lt;p&gt;然后发现你无法勾选。&lt;/p&gt;
&lt;p&gt;经过尝试，你只需要点击Term and Conditions真的进去看一看，就可以勾选了。&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;然后安装完毕后，点击File-&amp;gt;Connect to Server.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://demiurge-zby.github.io/p/buaa-cn-week3.5-ospf-online/link.png&#34;
	width=&#34;448&#34;
	height=&#34;437&#34;
	srcset=&#34;https://demiurge-zby.github.io/p/buaa-cn-week3.5-ospf-online/link_hu9713582860141826466.png 480w, https://demiurge-zby.github.io/p/buaa-cn-week3.5-ospf-online/link_hu17906105122798335604.png 1024w&#34;
	loading=&#34;lazy&#34;
	
		alt=&#34;如何连接实验平台&#34;
	
	
		class=&#34;gallery-image&#34; 
		data-flex-grow=&#34;102&#34;
		data-flex-basis=&#34;246px&#34;
	
&gt;&lt;/p&gt;
&lt;p&gt;输入相关信息即可连接。&lt;/p&gt;
&lt;h2 id=&#34;组网连接&#34;&gt;组网连接
&lt;/h2&gt;&lt;p&gt;点击上面一栏的选项即可添加/删除该设备。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://demiurge-zby.github.io/p/buaa-cn-week3.5-ospf-online/web.png&#34;
	width=&#34;335&#34;
	height=&#34;356&#34;
	srcset=&#34;https://demiurge-zby.github.io/p/buaa-cn-week3.5-ospf-online/web_hu7542808278685431397.png 480w, https://demiurge-zby.github.io/p/buaa-cn-week3.5-ospf-online/web_hu6284205153599459988.png 1024w&#34;
	loading=&#34;lazy&#34;
	
		alt=&#34;组网图示&#34;
	
	
		class=&#34;gallery-image&#34; 
		data-flex-grow=&#34;94&#34;
		data-flex-basis=&#34;225px&#34;
	
&gt;&lt;/p&gt;
&lt;p&gt;右键设备可以显示设备的接口，点击可选择某接口。它将于你下次右键选择的接口相连。&lt;/p&gt;
&lt;p&gt;配置完成后一定要点击&lt;strong&gt;实验组网-&amp;gt;提交&lt;/strong&gt;。提交了才是连上了。&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;接口连接时一定要谨慎，一旦连错一组，你大概率就需要点击&lt;strong&gt;一键还原&lt;/strong&gt;回到空白状态。&lt;/p&gt;
&lt;p&gt;因为接口之间一旦连接，无法取消，只能选择断连，但不能将接口从占用状态解放。&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;此外这个一键还原也非常的&lt;strong&gt;鸡肋&lt;/strong&gt;，每次清空都需要&lt;strong&gt;等很久&lt;/strong&gt;，&lt;/p&gt;
&lt;p&gt;但它真的&lt;strong&gt;只是把组网&lt;/strong&gt;清空，各种配置还会遗留，还得你自己删。&lt;/p&gt;
&lt;p&gt;不过也是有值得夸的地方：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://demiurge-zby.github.io/p/buaa-cn-week3.5-ospf-online/listen.png&#34;
	width=&#34;766&#34;
	height=&#34;182&#34;
	srcset=&#34;https://demiurge-zby.github.io/p/buaa-cn-week3.5-ospf-online/listen_hu10206324384279252608.png 480w, https://demiurge-zby.github.io/p/buaa-cn-week3.5-ospf-online/listen_hu12099478744398527969.png 1024w&#34;
	loading=&#34;lazy&#34;
	
		alt=&#34;很方便的监听功能&#34;
	
	
		class=&#34;gallery-image&#34; 
		data-flex-grow=&#34;420&#34;
		data-flex-basis=&#34;1010px&#34;
	
&gt;&lt;/p&gt;
&lt;p&gt;不需要集线器，你可以直接设置让哪台主机监听哪个端口。&lt;/p&gt;
&lt;h2 id=&#34;超级终端&#34;&gt;超级终端
&lt;/h2&gt;&lt;p&gt;可以看到四台机子的桌面上分别自带S1，S2，R1，R2的超级终端入口。&lt;/p&gt;
&lt;p&gt;这一点还算是比较方便。&lt;/p&gt;
&lt;p&gt;但当然也会有输入卡顿，方向键容易失灵，无法跨虚拟机复制粘贴等等烦人的点。&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;有一点需要注意：&lt;/p&gt;
&lt;p&gt;如果不想总是看见下图，学会善用  &lt;code&gt;？&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://demiurge-zby.github.io/p/buaa-cn-week3.5-ospf-online/wrong.png&#34;
	width=&#34;754&#34;
	height=&#34;46&#34;
	srcset=&#34;https://demiurge-zby.github.io/p/buaa-cn-week3.5-ospf-online/wrong_hu3662424281727637481.png 480w, https://demiurge-zby.github.io/p/buaa-cn-week3.5-ospf-online/wrong_hu11005351169840758526.png 1024w&#34;
	loading=&#34;lazy&#34;
	
		alt=&#34;哈哈太着急了吧 你又输错了&#34;
	
	
		class=&#34;gallery-image&#34; 
		data-flex-grow=&#34;1639&#34;
		data-flex-basis=&#34;3933px&#34;
	
&gt;&lt;/p&gt;
&lt;h2 id=&#34;实验部分&#34;&gt;实验部分
&lt;/h2&gt;&lt;p&gt;这篇博客主要还是讲解入门实验平台的。因此这一部分就简略一点。&lt;/p&gt;
&lt;p&gt;事实上涉及到的知识点基本在上次博客都讲过了。&lt;/p&gt;
&lt;p&gt;两个实验都非常简单，过程也算顺利。（上次实验的线路质量很影响实验进度！！不紧的线不要侥幸地用）&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;实验6中 tracert一直失败，应该是有防火墙。理论课上也讲过这个命令可以用来hack。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;设计型实验1需要注意将外部路由引入OSPF要执行： import-route static&lt;/p&gt;
&lt;p&gt;设计型实验2的备份设计其实就是cost的设计，从而实现冗余链路的优先级设置。&lt;/p&gt;
&lt;p&gt;高优先级链路不通时，其冗余链路自然就被OSPF重新计算出来了。&lt;/p&gt;
&lt;h2 id=&#34;后记&#34;&gt;后记
&lt;/h2&gt;&lt;p&gt;没啥想说的。&lt;/p&gt;
&lt;p&gt;实验平台一周好像可以约16个小时，建议趁低谷期积极抢占。&lt;/p&gt;
&lt;p&gt;截图写博客好麻烦。希望你们可以看明白。&lt;/p&gt;
</description>
        </item>
        <item>
        <title>BUAA CN Week3 OSPF</title>
        <link>https://demiurge-zby.github.io/p/buaa-cn-week3-ospf/</link>
        <pubDate>Sat, 25 Apr 2026 22:15:30 +0800</pubDate>
        
        <guid>https://demiurge-zby.github.io/p/buaa-cn-week3-ospf/</guid>
        <description>&lt;img src="https://demiurge-zby.github.io/p/buaa-cn-week3-ospf/cv.png" alt="Featured image of post BUAA CN Week3 OSPF" /&gt;&lt;h2 id=&#34;说在前面&#34;&gt;说在前面
&lt;/h2&gt;&lt;p&gt;计网理论课就这样结束了，还是有点感慨。&lt;/p&gt;
&lt;p&gt;据说期末要进考期。其实是一门像数据库一样，适合考前系统学习的课程。&lt;/p&gt;
&lt;p&gt;不过已经学了也没关系！说不定能帮上计网实验？&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;strong&gt;实则基本帮不上&lt;/strong&gt;。至少这次实验让我痛彻心扉。&lt;/p&gt;
&lt;p&gt;理论课由于时间限制，只是草草讲了有所谓DV、LS算法，&lt;/p&gt;
&lt;p&gt;而且因为DV算法更好笔试考察，理论课对OSPF的讲解可以说是一笔带过。&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;但无论如何，我们先复习一下：&lt;/p&gt;
&lt;h3 id=&#34;什么是ospf&#34;&gt;什么是ospf
&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Link-State的核心逻辑就是互相传递已知的链路信息，&lt;/p&gt;
&lt;p&gt;一致收敛到每个路由器都拥有完整的带权拓扑图（也即链接状态数据库，lsdb），&lt;/p&gt;
&lt;p&gt;然后对拓扑图执行Dijkstra算法。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;OSPF采用L-S算法，使用基于带宽的metric，封装于IP报文，&lt;/p&gt;
&lt;p&gt;协议号为89，组播地址为&lt;strong&gt;224.0.0.5与224.0.0.6&lt;/strong&gt;。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;OSPF有Area的概念，一个Area包含多个网段。&lt;/p&gt;
&lt;p&gt;其中&lt;strong&gt;Area0称为Backbone区域&lt;/strong&gt;。其他所有区域必须与Area0相连。&lt;/p&gt;
&lt;p&gt;Area内部独立进行最短路径计算。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;OSPF有5类报文：Hello、DD（DBD）、LSR、LSU、LSAck。&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;接下来讲解一些应对本次实验课，你应当知道的一些内容。&lt;/p&gt;
&lt;h3 id=&#34;ospf相关指令&#34;&gt;ospf相关指令
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;display ospf   信息很多，可以试着找找&lt;/li&gt;
&lt;li&gt;display ospf peer  邻居信息&lt;/li&gt;
&lt;li&gt;display ospf lsdb  显示&lt;strong&gt;LSA&lt;/strong&gt;（LSA是什么？）&lt;/li&gt;
&lt;li&gt;network xxx yyy area z 代表将xxx网段都接入area z 需要注意 yyy代表的是mask的&lt;strong&gt;反码&lt;/strong&gt;！！&lt;/li&gt;
&lt;li&gt;reset ospf process  重启OSPF，可用于更新DR和Router-id（这俩又是？）&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;什么是loopback&#34;&gt;什么是Loopback
&lt;/h3&gt;&lt;p&gt;Loopback 可以是路由器的一种&lt;strong&gt;逻辑虚接口&lt;/strong&gt;。&lt;/p&gt;
&lt;p&gt;它的特点是永久&lt;strong&gt;物理状态恒为 Up&lt;/strong&gt;，也就是永远连接，不受物理网线、接口插拔影响。&lt;/p&gt;
&lt;h3 id=&#34;什么是router-id&#34;&gt;什么是router id
&lt;/h3&gt;&lt;p&gt;这是路由器的一种&lt;strong&gt;唯一标识&lt;/strong&gt;。&lt;/p&gt;
&lt;p&gt;可以通过命令&lt;strong&gt;router id XXX&lt;/strong&gt; 来直接配置。&lt;/p&gt;
&lt;p&gt;没有主动配置时，默认是优先选取&lt;strong&gt;环回接口（Loopback）中最大的 IP 地址&lt;/strong&gt;，其次是自动选取所有物理接口中&lt;strong&gt;状态为 Up&lt;/strong&gt; 的&lt;strong&gt;最大&lt;/strong&gt; IP 地址，若所有接口均无 IP / 未启用，就无法自动生成 Router-ID。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Router ID 通常在 OSPF 进程启动时确定&lt;/strong&gt;，后续对其更改需重启 OSPF 进程后才生效。&lt;/p&gt;
&lt;h3 id=&#34;什么是lsa&#34;&gt;什么是LSA
&lt;/h3&gt;&lt;p&gt;LSA存储着Link-State信息的单元。有很多类，我们需要掌握5类，它们的功能分别是：&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;一类 LSA（router）&lt;/strong&gt;：每台路由器生成，描述&lt;strong&gt;本路由器&lt;/strong&gt;链路，区域内泛洪（注意泛洪≠广播）。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;二类 LSA（network）&lt;/strong&gt;：由 DR 生成，DR汇聚了&lt;strong&gt;同一网段&lt;/strong&gt;成员清单，区域内泛洪。这个信息告诉哪些IP是同一子网。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;三类 LSA（summary）&lt;/strong&gt;：由 ABR 生成，将&lt;strong&gt;某区域的路由概要&lt;/strong&gt;发布向其他区域。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;四类 LSA（asbr）&lt;/strong&gt;：由 ABR 生成，通告 &lt;strong&gt;ASBR 路由器的位置&lt;/strong&gt;。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;五类 LSA（external）&lt;/strong&gt;：由 ASBR 生成，传递引入的&lt;strong&gt;外部路由&lt;/strong&gt;，在整个 OSPF 自治系统内泛洪。&lt;/p&gt;
&lt;h3 id=&#34;什么是dr&#34;&gt;什么是DR
&lt;/h3&gt;&lt;p&gt;DR是每个&lt;strong&gt;广播网段&lt;/strong&gt;选举出的一个代表，作为&lt;strong&gt;二类LSA&lt;/strong&gt;的生成者。&lt;/p&gt;
&lt;p&gt;选举逻辑是优先级数值更大者，若相同则是router id更大者。&lt;/p&gt;
&lt;p&gt;优先级为0则为放弃参选DR/BDR。&lt;/p&gt;
&lt;p&gt;选出DR后，再选出次大者作为BDR。&lt;/p&gt;
&lt;h3 id=&#34;什么是bdr&#34;&gt;什么是BDR
&lt;/h3&gt;&lt;p&gt;在 &lt;strong&gt;DR执行&lt;/strong&gt; reset ospf process 后，&lt;strong&gt;BDR成为新的DR&lt;/strong&gt;，按原规则重新选举BDR。&lt;/p&gt;
&lt;p&gt;在 &lt;strong&gt;BDR执行&lt;/strong&gt; reset ospf process 后，按规则重新选举BDR（原BDR也参与选举）。&lt;/p&gt;
&lt;p&gt;其他路由器执行时，&lt;strong&gt;不影响 DR、BDR 角色&lt;/strong&gt;。&lt;/p&gt;
&lt;h3 id=&#34;什么是abr&#34;&gt;什么是ABR
&lt;/h3&gt;&lt;p&gt;ABR是同时位于Area 0 和其他普通区域的路由器。&lt;/p&gt;
&lt;p&gt;他掌握多区域信息，还拥有跨区域沟通能力，所以可以负责在区域之间传递路由信息（&lt;strong&gt;三类 LSA&lt;/strong&gt;）。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;四类 LSA&lt;/strong&gt; 可以教大家导航到ASBR。&lt;/p&gt;
&lt;h3 id=&#34;什么是asbr&#34;&gt;什么是ASBR
&lt;/h3&gt;&lt;p&gt;ASBR 是负责把 OSPF 域外路由引入 OSPF 的路由器。&lt;/p&gt;
&lt;p&gt;用人话说，就是他有例如&lt;strong&gt;静态路由、RIP等其他协议&lt;/strong&gt;这种渠道得到的&lt;strong&gt;路由信息&lt;/strong&gt;。&lt;/p&gt;
&lt;p&gt;他可以发布&lt;strong&gt;五类LSA&lt;/strong&gt;可以传递这些外部路由，让其他人也学习到。&lt;/p&gt;
&lt;p&gt;这下知道为啥需要四类LSA了：&lt;/p&gt;
&lt;p&gt;我学习外部路由时，只知道这个dest对应的下一跳是ASBR，怎么到达这个ASBR就需要ABR讲清楚。&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;说了这么多我觉得也差不多了。&lt;/p&gt;
&lt;p&gt;具体LSA是什么结构，怎么实现上述的这些功能，就需要从实验中学习了。&lt;/p&gt;
&lt;h2 id=&#34;静态路由&#34;&gt;静态路由
&lt;/h2&gt;&lt;p&gt;注意选择套件二的同学也要完成静态路由的学习，也就是RIP的1,2,3,6题。&lt;/p&gt;
&lt;p&gt;这道题挺简单的，但是笔者被卡了很久，因为在做上机必做的undo interface vlan 1时，我手贱给交换机也执行了vlan 1的shutdown。&lt;/p&gt;
&lt;p&gt;哈哈，那还说啥了。能ping通就有鬼了。&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;需要掌握的知识理论课都学过：&lt;/p&gt;
&lt;p&gt;0.0.0.0/0是默认，因为他就是最大的网，互联网。&lt;/p&gt;
&lt;h2 id=&#34;ospf报文及简单交互&#34;&gt;OSPF报文及简单交互
&lt;/h2&gt;&lt;p&gt;前面提到OSPF有5类报文：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Hello（Type 1，Hello）&lt;/strong&gt;
发现邻居、维持邻居、参与 DR/BDR 选举。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;DD/DBD（Type 2，Database Description）&lt;/strong&gt;
交换 LSDB 的&lt;strong&gt;目录摘要&lt;/strong&gt;，先看彼此有什么 LSA。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;LSR（Type 3，Link State Request）&lt;/strong&gt;
看到你有我没有的 LSA，就点名请求。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;LSU（Type 4，Link State Update）&lt;/strong&gt;
&lt;strong&gt;真正发送&lt;/strong&gt; LSA 内容（一个 LSU 可带多个 LSA）。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;LSAck（Type 5，Link State Acknowledgment）&lt;/strong&gt;
确认收到 LSA，保证泛洪可靠。&lt;/li&gt;
&lt;/ol&gt;
&lt;hr&gt;
&lt;p&gt;具体来讲：&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;strong&gt;Down -&amp;gt; Init -&amp;gt; 2-Way     靠 Hello&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;收到对方 Hello，看到自己 RID 出现在对方邻居列表，进入 2-Way。&lt;/p&gt;
&lt;p&gt;在广播网段里，非 DR/BDR 之间常停在 2-Way；与 DR/BDR 会继续到 Full。&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;strong&gt;2-Way -&amp;gt; ExStart   开始谈 DD 规则&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;双方先协商 DD 的&lt;strong&gt;主从关系&lt;/strong&gt;和初始序列号。（此SM非彼SM）&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;主从是为了避免Exchange阶段双方同时主导 DD。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Master&lt;/strong&gt; 控制 DD 交换节奏和序列号推进，Slave跟随并确认。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;双方先发带&lt;strong&gt;协商&lt;/strong&gt;标志的 DD。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;何为协商？ I(Init)=1,我们初次见面，这就是协商的意思。&lt;/p&gt;
&lt;p&gt;刚见面时，都想当Master，而且后续也还有话要说(More)，&lt;/p&gt;
&lt;p&gt;所以MS=1,M=1&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;然后这一轮结束后&lt;strong&gt;Router ID 大&lt;/strong&gt;的一方成为 Master。Master 的seq被定为初始 DD sequence number，并在后续 DD 中主导递增。&lt;/p&gt;
&lt;p&gt;保证会话有序的逻辑是：Master 发一个 DD（含 seq），Slave 用&lt;strong&gt;相同 seq 应答&lt;/strong&gt;其对应 DD。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;注意这里的seq不是你TCP的那个seq与ack！别搞混了&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;所以接下来应该是Slave回应Master的第一句话，用Master第一句话的seq。&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;strong&gt;ExStart -&amp;gt; Exchange  大量 DD 交换&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;互相发送 DD 摘要，知道你有什么、我缺什么。&lt;/p&gt;
&lt;p&gt;发送的过程满足I=0，M的MS=1，S的MS=0，M的seq是上次交流＋1，S的seq与M的seq相同。&lt;/p&gt;
&lt;p&gt;直到双方摘要交换完毕，M=0，进入 Loading。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;这里可以为大家写一个交流示例&lt;/p&gt;
&lt;p&gt;M-&amp;gt;S (seq = A, I =1, MS =1, M =1)&lt;/p&gt;
&lt;p&gt;S-&amp;gt;M (seq = B, I =1, MS =1, M =1)&lt;/p&gt;
&lt;p&gt;然后完成协商，S给出回应：&lt;/p&gt;
&lt;p&gt;S-&amp;gt;M (seq = A, I =0, MS =0, M =1)&lt;/p&gt;
&lt;p&gt;然后Master开始主导对话进行exchange：&lt;/p&gt;
&lt;p&gt;M-&amp;gt;S (seq = A+1, I =0, MS =1, M =1)&lt;/p&gt;
&lt;p&gt;S-&amp;gt;M (seq = A+1, I =0, MS =0, M =1)&lt;/p&gt;
&lt;p&gt;然后说完了：&lt;/p&gt;
&lt;p&gt;M-&amp;gt;S (seq = A+n, I =0, MS =1, M =0)&lt;/p&gt;
&lt;p&gt;S-&amp;gt;M (seq = A+n, I =0, MS =0, M =0)&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;p&gt;&lt;strong&gt;Exchange -&amp;gt; Loading  疯狂学习LSA中&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;我缺哪些就发 LSR。&lt;/p&gt;
&lt;p&gt;对方用 LSU 回复具体 LSA。&lt;/p&gt;
&lt;p&gt;收到后回 LSAck。&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;strong&gt;Loading -&amp;gt; Full 数据库同步完成&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;邻接完成，后续拓扑变化直接用 LSU/LSAck 增量同步。&lt;/p&gt;
&lt;h2 id=&#34;后记&#34;&gt;后记
&lt;/h2&gt;&lt;p&gt;就先写这么多吧。笔者区域划分实验还没做完。&lt;/p&gt;
&lt;p&gt;这一次写的比较详细，因为本人确实也吃了没预习的亏，在前面的地方卡了很久，一个小实验就差不多一个小时。&lt;/p&gt;
&lt;p&gt;依旧给出一些经验：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;实验课前的预习非常重要。请把这个预习当成其他实验课的课下部分来看。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;善用dis cu进行调试。(display current-configuration)&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;找老师答疑解惑可能会扣除少量分数。（未独立完成）&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
</description>
        </item>
        <item>
        <title>BUAA CN Week2 N层</title>
        <link>https://demiurge-zby.github.io/p/buaa-cn-week2-n%E5%B1%82/</link>
        <pubDate>Fri, 17 Apr 2026 20:15:30 +0800</pubDate>
        
        <guid>https://demiurge-zby.github.io/p/buaa-cn-week2-n%E5%B1%82/</guid>
        <description>&lt;img src="https://demiurge-zby.github.io/p/buaa-cn-week2-n%E5%B1%82/%E6%9C%AB%E4%B8%96%E8%AE%BA.png" alt="Featured image of post BUAA CN Week2 N层" /&gt;&lt;h2 id=&#34;说在前面&#34;&gt;说在前面
&lt;/h2&gt;&lt;p&gt;做实验的时候我就在想，我是否有能力写好这篇博客。&lt;/p&gt;
&lt;p&gt;本次实验做完之后，没有充沛的分享欲，而只是劫后余生的感慨。&lt;/p&gt;
&lt;p&gt;明明是N层实验，但整体来说和D层实验的感觉十分相似，你需要熟练展现上次实验所培养你的能力与素养。&lt;/p&gt;
&lt;p&gt;但除此之外，本次实验还要求你熟络ARP和ICMP，尤其是它们在报文中的封装。&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;一些提醒：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;小程序传图片时一定要&lt;strong&gt;及时&lt;/strong&gt;，晚一点就无法再上传。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;传的图片尽可能展示&lt;strong&gt;核心内容&lt;/strong&gt;，若缺乏重点可能拿不到9.5。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;报文直接筛选好 &lt;strong&gt;arp or icmp&lt;/strong&gt;。本次实验就只涉及这两种。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;如何&lt;strong&gt;修改PC的IP地址&lt;/strong&gt;？&lt;/p&gt;
&lt;p&gt;控制面板-&amp;gt;网络和共享中心-&amp;gt;&lt;strong&gt;左侧栏&lt;/strong&gt;“更改适配器设置”-&amp;gt;&lt;strong&gt;右键&lt;/strong&gt;“本地连接”-&amp;gt;点击&lt;strong&gt;属性&lt;/strong&gt;-&amp;gt;双击&lt;strong&gt;IPv4&lt;/strong&gt;项即可进入修改，可修改本机IP地址、子网掩码和缺省网关。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;不同网段为啥还要分不同VLAN？&lt;/p&gt;
&lt;p&gt;不同网段确实拥有&lt;strong&gt;不同的广播号&lt;/strong&gt;，但是&lt;strong&gt;不同广播号不代表不同广播域&lt;/strong&gt;！！&lt;/p&gt;
&lt;p&gt;不加处理的话，大家都在缺省VLAN里，&lt;strong&gt;处于同一广播域&lt;/strong&gt;。&lt;/p&gt;
&lt;p&gt;广播号只能决定我是否接受，但是仍然&lt;strong&gt;会被泛洪&lt;/strong&gt;到！&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;N层&lt;/strong&gt;的IP管理当然管不到&lt;strong&gt;D层&lt;/strong&gt;的传输。&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;arp&#34;&gt;ARP
&lt;/h2&gt;&lt;p&gt;在理论课上，我们只是知道：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;A想要B的MAC地址，发出ARP报文，上面写着A的IP地址、A的MAC地址以及B的IP地址。&lt;/li&gt;
&lt;li&gt;ARP报文被&lt;strong&gt;广播&lt;/strong&gt;，同广播域内如果有B，B将&lt;strong&gt;单播&lt;/strong&gt;回一个ARP报文。&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;但在实验课，你需要掌握：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;ARP有一个&lt;strong&gt;缓存的表&lt;/strong&gt;。&lt;/li&gt;
&lt;li&gt;PC的ARP缓存表在cmd直接&lt;strong&gt;arp -a&lt;/strong&gt;就可以看到。中间设备则需要在PuTTY上&lt;strong&gt;display arp&lt;/strong&gt;。&lt;/li&gt;
&lt;li&gt;如果&lt;strong&gt;下一跳&lt;/strong&gt;不在ARP缓存表里，我就要发ARP去找到&lt;strong&gt;下一跳&lt;/strong&gt;的MAC地址。&lt;/li&gt;
&lt;li&gt;对于跨网段的ping，下一跳当然是&lt;strong&gt;缺省网关&lt;/strong&gt;。&lt;/li&gt;
&lt;li&gt;ARP request &lt;strong&gt;广播&lt;/strong&gt;时，目标MAC地址是&lt;strong&gt;ffff-ffff-ffff&lt;/strong&gt;，不过在报文中目标MAC地址&lt;strong&gt;显示为全0&lt;/strong&gt;。&lt;/li&gt;
&lt;/ol&gt;
&lt;hr&gt;
&lt;p&gt;ICMP的理论课讲得倒比较详细，实验涉及的也很浅，不作解释。&lt;/p&gt;
&lt;h2 id=&#34;跨交换机vlan间路由实验&#34;&gt;跨交换机VLAN间路由实验
&lt;/h2&gt;&lt;p&gt;下面重点讲这个实验的ARP与ICMP报文分析。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://demiurge-zby.github.io/p/buaa-cn-week2-n%E5%B1%82/VLAN.png&#34;
	width=&#34;746&#34;
	height=&#34;274&#34;
	srcset=&#34;https://demiurge-zby.github.io/p/buaa-cn-week2-n%E5%B1%82/VLAN_hu2206616019484067559.png 480w, https://demiurge-zby.github.io/p/buaa-cn-week2-n%E5%B1%82/VLAN_hu1471815309571818971.png 1024w&#34;
	loading=&#34;lazy&#34;
	
		alt=&#34;组网图&#34;
	
	
		class=&#34;gallery-image&#34; 
		data-flex-grow=&#34;272&#34;
		data-flex-basis=&#34;653px&#34;
	
&gt;&lt;/p&gt;
&lt;p&gt;首先这道实验题以&lt;strong&gt;分析&lt;/strong&gt;为主。因为有大量步骤，凭实验不能单步观测变化情况。&lt;/p&gt;
&lt;p&gt;此外，要知道S1是&lt;strong&gt;三层交换机&lt;/strong&gt;，有跨网段路由功能。S2是双层交换机，只是个同网段内引路的。&lt;/p&gt;
&lt;p&gt;接下来，我们就从理论角度，分析这样一个删去全部缓存的组网如何实现PCC ping PCD。&lt;/p&gt;
&lt;h3 id=&#34;pcc想知道下一跳&#34;&gt;PCC想知道下一跳
&lt;/h3&gt;&lt;p&gt;PCC和PCD经过计算发现属于不同网段。&lt;/p&gt;
&lt;p&gt;PCC要把ICMP(ping request)发给缺省网关——192.168.2.1，也就是S1的VLAN2接口。&lt;/p&gt;
&lt;p&gt;PCC的下一跳就是192.168.2.1。&lt;/p&gt;
&lt;p&gt;PCC的ARP Cache是空的。&lt;/p&gt;
&lt;p&gt;PCC要向192.168.2.1发送&lt;strong&gt;ARP request报文&lt;/strong&gt;。&lt;/p&gt;
&lt;p&gt;Source: 192.168.2.11 PCC_MAC&lt;/p&gt;
&lt;p&gt;Dest: 192.168.2.1 FFFF-FFFF-FFFF&lt;/p&gt;
&lt;h4 id=&#34;路过交换机s2&#34;&gt;路过交换机S2
&lt;/h4&gt;&lt;p&gt;要知道这个ARP报文的信息很明确，&lt;strong&gt;不会再改变了&lt;/strong&gt;。&lt;/p&gt;
&lt;p&gt;S2只是一个路由，一个&lt;strong&gt;搬运工&lt;/strong&gt;，告诉你往哪个端口走，仅此而已。&lt;/p&gt;
&lt;p&gt;MAC表也是这样简单，谁给我发了东西，我就把&lt;strong&gt;source(mac+vlan)和它进来的端口&lt;/strong&gt;学习下来。&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;不过交换机还有一个功能，就是管理VLAN。毕竟VLAN是D层的事情。&lt;/p&gt;
&lt;p&gt;交换机的端口就是划分VLAN的工具。你从这个口进来，那你就是这个VLAN。&lt;/p&gt;
&lt;p&gt;端口分为&lt;strong&gt;access/trunk/hybrid&lt;/strong&gt;这三种。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;access是我们一般理解的那种，一个端口只对应一个vlan，广播泛洪的时候只对同VLAN的全部端口。&lt;/p&gt;
&lt;p&gt;所以一进来我就知道你是哪个VLAN，就&lt;strong&gt;先给你打上tag&lt;/strong&gt;。&lt;/p&gt;
&lt;p&gt;相应地，从access口出去**不需要打（需要去掉）**tag，同样因为从我这出去的VLAN号是可以确定的。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;trunk的特点是一个端口支持多种vlan。因此从它出去&lt;strong&gt;要带上&lt;/strong&gt;vlan tag。&lt;/p&gt;
&lt;p&gt;需要注意&lt;del&gt;其实也不需要注意&lt;/del&gt;，每对trunk端口都有一个PVID，PVID用于适配无VLAN时代的设备。所以如果VLAN号为PVID，就相当于无Tag，出去的时候也要去掉tag。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;hybrid更自由，&lt;strong&gt;可以指定&lt;/strong&gt;出去时某些vlan带tag，某些vlan不带tag。&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;好嘞，铺垫这么多，一鼓作气讲清楚吧！&lt;/p&gt;
&lt;h5 id=&#34;step-1&#34;&gt;Step 1
&lt;/h5&gt;&lt;p&gt;首先是PCC发了&lt;strong&gt;ARP广播&lt;/strong&gt;，只可惜只广播到了S2这里。&lt;/p&gt;
&lt;p&gt;此为Step1。&lt;/p&gt;
&lt;h5 id=&#34;step-2&#34;&gt;Step 2
&lt;/h5&gt;&lt;p&gt;S2首先收到报文&lt;strong&gt;先学习MAC表&lt;/strong&gt;，PCC_MAC对应GE1/0/1。&lt;/p&gt;
&lt;p&gt;然后为报文&lt;strong&gt;打上VLAN Tag&lt;/strong&gt;=2（因为S2的GE1/0/1是&lt;strong&gt;access VLAN 2&lt;/strong&gt;）。&lt;/p&gt;
&lt;p&gt;然后S2要&lt;strong&gt;继续广播&lt;/strong&gt;，发现支持VLAN2的只有GE1/0/1和GE1/0/13，除了自己之外，就只能给trunk口GE1/0/13了。&lt;/p&gt;
&lt;p&gt;从trunk口出，&lt;strong&gt;不去除&lt;/strong&gt;tag。&lt;/p&gt;
&lt;p&gt;因此从GE1/0/13发送了含tag VLAN id=2的报文。&lt;/p&gt;
&lt;p&gt;此为Step2。&lt;/p&gt;
&lt;h3 id=&#34;s1回应pcc的arp报文&#34;&gt;S1回应PCC的ARP报文
&lt;/h3&gt;&lt;h4 id=&#34;step-3&#34;&gt;Step 3
&lt;/h4&gt;&lt;p&gt;首先S1作为交换机，收到报文肯定也是先&lt;strong&gt;学习MAC表&lt;/strong&gt;，PCC_MAC对应GE1/0/13。&lt;/p&gt;
&lt;p&gt;但同时作为N层相关设备，随便收到一个报文也会直接&lt;strong&gt;学习ARP Cache&lt;/strong&gt;，192.168.2.11对应PCC_MAC。&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;PCC向192.168.2.1发送的ARP request报文是：&lt;/p&gt;
&lt;p&gt;Source: 192.168.2.11 PCC_MAC&lt;/p&gt;
&lt;p&gt;Dest: 192.168.2.1 FFFF-FFFF-FFFF&lt;/p&gt;
&lt;p&gt;而S1的VLAN2接口就是192.68.2.1。&lt;/p&gt;
&lt;p&gt;所以S1应当把VLAN2接口的MAC地址传回PCC。&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;因为&lt;strong&gt;刚学到MAC表里PCC_MAC对应GE1/0/13&lt;/strong&gt;，所以ARP reply直接从这个trunk口发出去。&lt;/p&gt;
&lt;p&gt;从trunk口&lt;strong&gt;出去要带tag&lt;/strong&gt;，因为是从VLAN2接口发的，所以VLAN id = 2。&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;192.168.2.1向192.168.2.11发送的ARP reply报文是：&lt;/p&gt;
&lt;p&gt;Source: 192.168.2.1 VLAN2_MAC&lt;/p&gt;
&lt;p&gt;Dest: 192.168.2.11 PCC_MAC&lt;/p&gt;
&lt;p&gt;此为Step3。&lt;/p&gt;
&lt;h4 id=&#34;再次路过s2&#34;&gt;再次路过S2
&lt;/h4&gt;&lt;h5 id=&#34;step-4&#34;&gt;Step 4
&lt;/h5&gt;&lt;p&gt;S2首先收到报文&lt;strong&gt;先学习MAC表&lt;/strong&gt;，VLAN2_MAC对应GE1/0/13。&lt;/p&gt;
&lt;p&gt;S2要继续&lt;strong&gt;单播&lt;/strong&gt;，发现PCC_MAC对应GE1/0/1。&lt;/p&gt;
&lt;p&gt;从access口出，&lt;strong&gt;去除tag&lt;/strong&gt;。&lt;/p&gt;
&lt;p&gt;此为Step4。&lt;/p&gt;
&lt;h3 id=&#34;pcc向下一跳发出icmp-echo-request&#34;&gt;PCC向下一跳发出ICMP-ECHO-REQUEST
&lt;/h3&gt;&lt;h4 id=&#34;step-5&#34;&gt;Step 5
&lt;/h4&gt;&lt;p&gt;PCC收到了报文，直接&lt;strong&gt;学习ARP&lt;/strong&gt;：192.168.2.1对应VLAN2_MAC。&lt;/p&gt;
&lt;p&gt;这下终于知道了，我要去ping PCD了！&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;之前我知道N层的Source和Dest，但是一直不知道D层对应的下一跳应该是谁，现在&lt;strong&gt;终于可以封装报文&lt;/strong&gt;了。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Source IP：192.168.2.11&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Dest IP：192.168.3.11&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Source MAC：PCC_MAC&lt;/strong&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Dest MAC：VLAN2_MAC&lt;/strong&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;此为Step5。&lt;/p&gt;
&lt;h4 id=&#34;step-6&#34;&gt;Step 6
&lt;/h4&gt;&lt;p&gt;依旧经过交换机S2。&lt;/p&gt;
&lt;p&gt;S2首先学习：PCC_MAC，啊嘞，这个学过了。&lt;/p&gt;
&lt;p&gt;然后access口进，所以带tag vlan2。&lt;/p&gt;
&lt;p&gt;接下来&lt;strong&gt;和Step2不同&lt;/strong&gt;的是，现在是&lt;strong&gt;单播&lt;/strong&gt;！&lt;/p&gt;
&lt;p&gt;所以要&lt;strong&gt;查表&lt;/strong&gt;，目标是VLAN2_MAC，这个也学过。那很好！不然就又要广播了。&lt;/p&gt;
&lt;p&gt;直接从trunk口GE1/0/13出，不去tag。&lt;/p&gt;
&lt;p&gt;此为step6。&lt;/p&gt;
&lt;h3 id=&#34;icmp报文更改&#34;&gt;ICMP报文更改！
&lt;/h3&gt;&lt;p&gt;ICMP报文发了一半，把第一段D层打通了。&lt;/p&gt;
&lt;p&gt;接力棒传到S1的interface vlan2这里来了。&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;接下来经过某种判断逻辑&lt;del&gt;你可以不知道&lt;/del&gt;，但很显然S1知道。&lt;/p&gt;
&lt;p&gt;S1知道它该把报文交付给网络层处理了。&lt;/p&gt;
&lt;p&gt;然后ICMP报文成功地从interface vlan3出来了。&lt;/p&gt;
&lt;p&gt;ICMP报文的N层没有改变，而外部的D层则换成了路由器选择的新路由：&lt;/p&gt;
&lt;p&gt;VLAN3_MAC，到它的下一跳：PCD。&lt;/p&gt;
&lt;p&gt;ICMP报文的内容正式变为：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Source IP：192.168.2.11&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Dest IP：192.168.3.11&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Source MAC：VLAN3_MAC&lt;/strong&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Dest MAC：PCD_MAC&lt;/strong&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;int-vlan3想知道下一跳&#34;&gt;int VLAN3想知道下一跳
&lt;/h3&gt;&lt;h4 id=&#34;step-7-8&#34;&gt;Step 7-8
&lt;/h4&gt;&lt;p&gt;再次审视报文内容。&lt;/p&gt;
&lt;p&gt;PCD_MAC是未知的。&lt;/p&gt;
&lt;p&gt;我需要——ARP！&lt;/p&gt;
&lt;p&gt;接下来便是和Step1-2如出一辙。&lt;/p&gt;
&lt;p&gt;此为step7-8。&lt;/p&gt;
&lt;h3 id=&#34;pcd回应s1的arp报文&#34;&gt;PCD回应S1的ARP报文
&lt;/h3&gt;&lt;h4 id=&#34;step-9-10&#34;&gt;Step 9-10
&lt;/h4&gt;&lt;p&gt;其实你知道这个和Step3-4如出一辙。&lt;/p&gt;
&lt;p&gt;但是为了标题工整一点，就写这么几句话占个位置。&lt;/p&gt;
&lt;p&gt;此为step9-10。&lt;/p&gt;
&lt;h3 id=&#34;int-vlan3向下一跳发出icmp-echo-request&#34;&gt;int VLAN3向下一跳发出ICMP-ECHO-REQUEST
&lt;/h3&gt;&lt;h4 id=&#34;step-11-12&#34;&gt;Step 11-12
&lt;/h4&gt;&lt;p&gt;以防你不知道，在刚刚ARP的request与reply中，PCD和int VLAN3学到了ARP Cache，S2学到了MAC表。&lt;/p&gt;
&lt;p&gt;这一段和Step5-6也只能说如出一辙了。&lt;/p&gt;
&lt;p&gt;此为step11-12。&lt;/p&gt;
&lt;h3 id=&#34;pcd向下一跳发出icmp-echo-reply&#34;&gt;PCD向下一跳发出ICMP-ECHO-REPLY
&lt;/h3&gt;&lt;p&gt;诶诶你PCD怎么就能直接发reply？不用ARP？&lt;/p&gt;
&lt;p&gt;好吧我写这个问题纯粹无聊打几个字。。&lt;/p&gt;
&lt;p&gt;都叫reply了，PCD早就学进ARP Cache了。&lt;/p&gt;
&lt;h4 id=&#34;step-13-16&#34;&gt;Step 13-16
&lt;/h4&gt;&lt;p&gt;哎哟我真不想写了。&lt;/p&gt;
&lt;p&gt;Step13-14就是Step5-6，Step15-16就是Step11-12。&lt;/p&gt;
&lt;p&gt;此为step13-16。&lt;/p&gt;
&lt;h2 id=&#34;后记&#34;&gt;后记
&lt;/h2&gt;&lt;p&gt;一写就又写了三个小时。&lt;/p&gt;
&lt;p&gt;不过确实是弄明白了不少当时不太清楚的问题。&lt;/p&gt;
&lt;p&gt;我特意把StepX也写进了标题里，方便你直接去跳转~&lt;/p&gt;
&lt;p&gt;写博客本意是对问题的再思考，但如果还能帮到你们就太好了！&lt;/p&gt;
</description>
        </item>
        <item>
        <title>BUAA CN Week1 入门&#43;D层</title>
        <link>https://demiurge-zby.github.io/p/buaa-cn-week1-%E5%85%A5%E9%97%A8-d%E5%B1%82/</link>
        <pubDate>Sun, 12 Apr 2026 11:15:30 +0800</pubDate>
        
        <guid>https://demiurge-zby.github.io/p/buaa-cn-week1-%E5%85%A5%E9%97%A8-d%E5%B1%82/</guid>
        <description>&lt;img src="https://demiurge-zby.github.io/p/buaa-cn-week1-%E5%85%A5%E9%97%A8-d%E5%B1%82/12345.png" alt="Featured image of post BUAA CN Week1 入门&#43;D层" /&gt;&lt;h2 id=&#34;说在前面&#34;&gt;说在前面
&lt;/h2&gt;&lt;h3 id=&#34;课程基本信息&#34;&gt;课程基本信息
&lt;/h3&gt;&lt;p&gt;作为计网实验的Week1博客，首先要介绍一下这门课程的基本信息。&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;实验时间&lt;/strong&gt;：取决于老师什么时候叫停。&lt;/p&gt;
&lt;p&gt;上午班一般时间最充裕，大概能从&lt;strong&gt;8点到12点半&lt;/strong&gt;。&lt;/p&gt;
&lt;p&gt;下午班则是&lt;strong&gt;2点到6点&lt;/strong&gt;，因为老师在7点上课前还需要吃饭。&lt;/p&gt;
&lt;p&gt;晚上的时间就&lt;strong&gt;略显紧张&lt;/strong&gt;，大概可以从&lt;strong&gt;7点到10点半&lt;/strong&gt;。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;实验报告&lt;/strong&gt;：&lt;/p&gt;
&lt;a href=&#34;PDF.pdf&#34; onclick=&#34;window.open(this.href,&#39;_blank&#39;);return false;&#34;&gt;
  点击我获取获取获取一个2026年实验报告电子版
&lt;/a&gt;
&lt;p&gt;课程组为同学们准备好了所有实验的实验报告并&lt;strong&gt;装订成册&lt;/strong&gt;。&lt;/p&gt;
&lt;p&gt;实验报告的本子&lt;strong&gt;当堂收发&lt;/strong&gt;，因此只能在实验课上完成。&lt;/p&gt;
&lt;p&gt;如果课上未能完成，需要自行设法完成实验，将实验报告电子版打印并完成，下次实验课时夹入册中。&lt;/p&gt;
&lt;p&gt;实验报告的形式不是编译那样的长篇大作，而是类似于CO、OS实验报告的&lt;strong&gt;思考题&lt;/strong&gt;。&lt;/p&gt;
&lt;p&gt;题目的内容主要是实验&lt;strong&gt;操作&lt;/strong&gt;的考察、实验&lt;strong&gt;现象&lt;/strong&gt;的记录以及&lt;strong&gt;原因&lt;/strong&gt;分析。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;实验设备&lt;/strong&gt;：两个人占用两张桌子，即&lt;strong&gt;四台电脑和桌子间的&lt;/strong&gt;路由器、交换机等设备。每张桌子上有两台主机，两张桌子间为其他中间设备。两人的座位编号一般分别为&lt;strong&gt;B和C&lt;/strong&gt;。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;实验流程&lt;/strong&gt;：老师先讲解本次的实验内容，约用时40-80min。&lt;/p&gt;
&lt;p&gt;之后大家以组为单位自行完成实验及实验报告。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;考核方式&lt;/strong&gt;：除实验报告外，部分班级需要在完成每部分小实验后向助教/老师提供关键中间步骤展示（类似于电设）。不过2506及以后的小朋友们可能已经没有电设这门课了。。&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;参考资料&#34;&gt;参考资料
&lt;/h3&gt;&lt;p&gt;最重要的是我们的&lt;strong&gt;狼书&lt;/strong&gt;！&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://demiurge-zby.github.io/p/buaa-cn-week1-%E5%85%A5%E9%97%A8-d%E5%B1%82/book.png&#34;
	width=&#34;525&#34;
	height=&#34;438&#34;
	srcset=&#34;https://demiurge-zby.github.io/p/buaa-cn-week1-%E5%85%A5%E9%97%A8-d%E5%B1%82/book_hu10659397059888303881.png 480w, https://demiurge-zby.github.io/p/buaa-cn-week1-%E5%85%A5%E9%97%A8-d%E5%B1%82/book_hu8276250984292623455.png 1024w&#34;
	loading=&#34;lazy&#34;
	
		alt=&#34;狼书&#34;
	
	
		class=&#34;gallery-image&#34; 
		data-flex-grow=&#34;119&#34;
		data-flex-basis=&#34;287px&#34;
	
&gt;&lt;/p&gt;
&lt;p&gt;实验报告上的题目基本上都是狼书上的，因此&lt;strong&gt;跟着狼书的图组装，跟着狼书的命令敲&lt;/strong&gt;就行了。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;跟上狼书的节奏！&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;需要注意有的时候我们的设备和狼书并不完全对应，比如书本上用的是R1的Ethernet 0/1，虽然我们的R1提供的是Gigabit Ethernet 0/1 ，但功能是一样的，只需要把指令里的E改成GE就行。&lt;/p&gt;
&lt;p&gt;下面这个链接也很有用！现场看会很有帮助，提前看反而不知道在说啥。&lt;/p&gt;
&lt;a href=&#34;https://docs.qq.com/doc/DVXJTdkV1UFJFcWZz&#34; onclick=&#34;window.open(this.href,&#39;_blank&#39;);return false;&#34;&gt;
网络实验常见问题解答&lt;/a&gt;
&lt;p&gt;实验配套的PPT也有一定作用，不过狼书已经足够了，狼书解决不了的问题可以试着在PPT找找。&lt;/p&gt;
&lt;p&gt;此外还可以&lt;strong&gt;参考&lt;/strong&gt;学长流传的实验报告电子版。但是仅供参考，不要盲目相信，更不能明目张胆抄袭。&lt;/p&gt;
&lt;h3 id=&#34;注意事项&#34;&gt;注意事项
&lt;/h3&gt;&lt;p&gt;因为笔者也只上了一节课，所以摸索出来的东西并不是很多，但应该还算有用，希望能帮助到你们。&lt;/p&gt;
&lt;ol start=&#34;0&#34;&gt;
&lt;li&gt;
&lt;p&gt;首先是老师们都会要求的：&lt;/p&gt;
&lt;p&gt;点击下方箭头查看详情。&lt;/p&gt;
&lt;details&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt; 1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 6
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 7
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 8
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 9
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;10
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;11
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;12
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;13
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;14
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;15
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;16
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;17
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;18
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;19
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;20
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;21
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;22
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;23
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;24
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;25
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;26
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;27
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;28
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;29
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;30
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;31
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;32
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;33
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;34
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;35
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;36
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;37
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;38
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;39
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;40
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;41
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;42
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;43
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;44
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;45
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;46
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;47
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;48
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-txt&#34; data-lang=&#34;txt&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;每次实验开始必做操作：
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;1. 所有设备开机后，选择一台PC连接校园网；
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;2. PC访问ftp://10.111.1.29/download文件夹，下载“每次实验开始必做操作.TXT”
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;3. 打开该文本文件，依次完成下列操作：
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;一、批量shutdown两台交换机的所有万兆端口
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;本学期网络实验室增加部署SDN实验环境，交换机S1和S2之间配置了万兆光接口，并联了两根光纤。
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;为了避免这些并联链路及生成树协议（STP）对其它实验两台交换机相连链路产生影响，
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;请同学们在开始做实验前，批量shutdown两台交换机所有的万兆端口。
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;具体操作：
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;1.选中下列命令脚本并点复制；
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;2.打开putty软件，连接交换机console口，单击鼠标右键，将脚本中的命令灌入交换机。
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;也就完成了批量shutdown万兆端口的任务。
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;system-view
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;#
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;interface Ten-GigabitEthernet1/0/25
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt; shutdown
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;#
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;interface Ten-GigabitEthernet1/0/26
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt; shutdown
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;#
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;interface Ten-GigabitEthernet1/0/27
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt; shutdown
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;#
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;interface Ten-GigabitEthernet1/0/28
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt; shutdown
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;#
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;二、删除所有路由器上的 interface vlan 1接口
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;路由器出厂设置中默认配置了interface vlan 1接口（ip address 192.168.0.1 ），实验前首先将这个接口删除（undo），以免这个接口地址自动参与router id 选举，影响ospf或bgp协议的正常工作。
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;具体操作：
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;1.选中下列命令脚本并点复制；
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;2. 打开putty软件，连接路由器console口，单击鼠标右键，将脚本中的命令灌入交换机。
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;也就完成了批量shutdown万兆端口的任务。
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;system-view
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;#
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;undo interface vlan 1
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;#
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;三、禁用网络实验室PC机相关的虚拟网卡
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;网络实验室PC机的虚拟网卡可能会对实验产生不良影响，建议根据具体实验内容，开机后首先将相关虚拟网卡禁用。例如：
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;1. 组播实验禁用所有虚拟网卡。
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;2. TCP实验禁用virtualbox虚拟网卡。
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;问AI时拍的一张图。很幸运拍了照片，可以帮大家对设备形成更直观的感受。&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;img src=&#34;https://demiurge-zby.github.io/p/buaa-cn-week1-%E5%85%A5%E9%97%A8-d%E5%B1%82/111.png&#34;
	width=&#34;1706&#34;
	height=&#34;1279&#34;
	srcset=&#34;https://demiurge-zby.github.io/p/buaa-cn-week1-%E5%85%A5%E9%97%A8-d%E5%B1%82/111_hu11910324477144601989.png 480w, https://demiurge-zby.github.io/p/buaa-cn-week1-%E5%85%A5%E9%97%A8-d%E5%B1%82/111_hu7309369829178803912.png 1024w&#34;
	loading=&#34;lazy&#34;
	
		alt=&#34;所谓的桌子间的中间设备的部分预览图&#34;
	
	
		class=&#34;gallery-image&#34; 
		data-flex-grow=&#34;133&#34;
		data-flex-basis=&#34;320px&#34;
	
&gt;&lt;/p&gt;
&lt;ol start=&#34;2&#34;&gt;
&lt;li&gt;
&lt;p&gt;区分PC串口和网口。&lt;strong&gt;串口一般用来连接console&lt;/strong&gt;。网口用于连接交换机、路由器端口、校园网等通信业务。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;只有&lt;strong&gt;连接了console&lt;/strong&gt;的PC才能在PuTTY中键入命令。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;只有&lt;strong&gt;连接了console&lt;/strong&gt;的PC才能在wireshark上捕获报文。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;putty中键入命令时注意自己&lt;strong&gt;在不在system view&lt;/strong&gt;（在系统视图中时为&lt;code&gt;方括号&lt;/code&gt;，否则为&lt;code&gt;尖括号&lt;/code&gt;）。&lt;/p&gt;
&lt;p&gt;有的命令不能在系统视图执行。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;putty中键入命令时可以&lt;strong&gt;简写、善用Tab&lt;/strong&gt;，如interface写作inter。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;putty中某些指令的结果过长，不能直接完全显示，会出现MORE字样，&lt;strong&gt;点击Enter&lt;/strong&gt;即可显示下一行内容。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;undo&lt;/strong&gt;+原指令大概率也是合法的指令。甚至可能是原指令相反含义的唯一表达。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;狼书上的某些语句表达和实际设备的&lt;strong&gt;版本不匹配&lt;/strong&gt;。 自己搜索和尝试即可。&lt;/p&gt;
&lt;p&gt;如undo stp enable就无法运行，需要undo stp global enable。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;如何使用wireshark截取报文：已连接console后，点击左上角蓝色shark类似的图案就开始记录了，点击红色终止。双击某一报文可以查看&lt;strong&gt;各层&lt;/strong&gt;详细信息。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://demiurge-zby.github.io/p/buaa-cn-week1-%E5%85%A5%E9%97%A8-d%E5%B1%82/wireshark.png&#34;
	width=&#34;500&#34;
	height=&#34;212&#34;
	srcset=&#34;https://demiurge-zby.github.io/p/buaa-cn-week1-%E5%85%A5%E9%97%A8-d%E5%B1%82/wireshark_hu17440580751570202113.png 480w, https://demiurge-zby.github.io/p/buaa-cn-week1-%E5%85%A5%E9%97%A8-d%E5%B1%82/wireshark_hu15741785692897310093.png 1024w&#34;
	loading=&#34;lazy&#34;
	
		alt=&#34;wireshark界面&#34;
	
	
		class=&#34;gallery-image&#34; 
		data-flex-grow=&#34;235&#34;
		data-flex-basis=&#34;566px&#34;
	
&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;博客风格&#34;&gt;博客风格
&lt;/h3&gt;&lt;p&gt;为了避免影响各位同学的实验体验，也节省笔者的时间，在后续的具体实验内容部分，我将不针对实验题目直接给出分析与答案，而是只分享一些做实验时的感受与经验。&lt;/p&gt;
&lt;h2 id=&#34;实验入门&#34;&gt;实验入门
&lt;/h2&gt;&lt;p&gt;这部分没有具体的实验内容。&lt;/p&gt;
&lt;p&gt;puTTY的使用：一堆洋文，啥也不用管直接Open就行了。（对于本周的实验）&lt;/p&gt;
&lt;p&gt;敲击display current-configuration，记得善用简写与Tab。&lt;/p&gt;
&lt;h2 id=&#34;数据链路层实验&#34;&gt;数据链路层实验
&lt;/h2&gt;&lt;p&gt;wireshark中点击一个报文，页面最下面那串十六进制就是报文内容。&lt;/p&gt;
&lt;p&gt;ping是在PC的cmd中执行的。&lt;/p&gt;
&lt;p&gt;ping给一个未连接的IP，可以收到由自己发送的报文，从而得到自己的IP地址。&lt;/p&gt;
&lt;p&gt;MAC地址可以在报文详细内容里找到。&lt;/p&gt;
&lt;p&gt;广播风暴实验做之前先检查STP是否确实关闭，触发风暴后观察到现象便可立刻停止截取报文，或直接拔掉console线，以免PC直接死机。&lt;/p&gt;
&lt;p&gt;查看MAC表、端口聚合、VLAN、LCP、PAP、CHAP等内容跟着狼书和PPT走就没什么大问题。&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;比较有趣的是跨交换机VLAN实验。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://demiurge-zby.github.io/p/buaa-cn-week1-%E5%85%A5%E9%97%A8-d%E5%B1%82/exp.png&#34;
	width=&#34;978&#34;
	height=&#34;335&#34;
	srcset=&#34;https://demiurge-zby.github.io/p/buaa-cn-week1-%E5%85%A5%E9%97%A8-d%E5%B1%82/exp_hu2468036183959324987.png 480w, https://demiurge-zby.github.io/p/buaa-cn-week1-%E5%85%A5%E9%97%A8-d%E5%B1%82/exp_hu1334938971059786595.png 1024w&#34;
	loading=&#34;lazy&#34;
	
		alt=&#34;跨交换机VLAN&#34;
	
	
		class=&#34;gallery-image&#34; 
		data-flex-grow=&#34;291&#34;
		data-flex-basis=&#34;700px&#34;
	
&gt;&lt;/p&gt;
&lt;p&gt;要求PCA去pingPCC，并截获PCA-&amp;gt;S1,S1-&amp;gt;S2,S2-&amp;gt;PCC三段报文的内容。&lt;/p&gt;
&lt;p&gt;PCA和PCC直接连console看就可以了，关键是S1-&amp;gt;S2如何观察？&lt;/p&gt;
&lt;p&gt;我们可以发现目前实验中PCB、PCD和VLAN3其实只是摆设，所以直接选其中一台机子用来监视。&lt;/p&gt;
&lt;p&gt;我们需要利用集线器，让S1-&amp;gt;S2也能广播到PCB去，也即S1-&amp;gt;HUB-&amp;gt;PCB与S2。&lt;/p&gt;
&lt;p&gt;这时候把S1的console和PCB串口连，就可以让PCB截获S1-&amp;gt;S2的报文了。&lt;/p&gt;
&lt;p&gt;有人问那你S1的console不是还要跟PCA连吗，PCA咋办？&lt;/p&gt;
&lt;p&gt;那PCA你就先截一下呗，再ping一下PCB去截就行了。&lt;/p&gt;
&lt;h2 id=&#34;后记&#34;&gt;后记
&lt;/h2&gt;&lt;p&gt;没有什么东西想说。&lt;/p&gt;
&lt;p&gt;自己对这些知识的了解也不算深刻，正确性更是不能保证。&lt;/p&gt;
&lt;p&gt;写这些东西的时候也更发现自己对某些东西的理解并不到位，并且在逃避着某些问题。&lt;/p&gt;
</description>
        </item>
        
    </channel>
</rss>
