eve community edition 2.0.3-92_v1.4.1.ova

OVF(Open Virtualization Format:开放虚拟化格式 )和
OVA(Open Virtualization Appliance:开放虚拟化设备)
appliance 器具

collaborative 合作的;协力完成的
translation 翻译;译文;译本;转化
Collaborative Translation Framework
ctfmon.exe与CTF加载程序密切相关,其中CTF是Collaborative Translation Framework的缩写。 此任务管理器进程主要用于在Win10专业版上提供服务语言和语音识别。

unified 统一;

Eve-NG (default root password is ‘eve’)
Use http://192.168.231.138/

官方推荐使用火狐
web login ,admin eve

iol mirror,cisco ios over Linux

cisco iol
cisco iol switch(mls)

adventerprise
cisco and enterprise

iol镜像导入
1.winscp:上传网络设备镜像到,eve虚拟机上,/opt/unetlab/addons/iol/bin/
2.生成iol许可证:在eve的web中左侧,generate iol license,屏幕右上方提示,生成成功,
此时,在/opt/unetlab/addons/iol/bin/ 里会多出一个iourc文件,
3.改名字:必须以l2-或者l3-,作为开头,例如 l2-adventerpriseK9_M_15.2_rion_20151103.bin
4.修复权限:/opt/unetlab/wrappers/unl_wrapper -a fixpermissions
在eve控制台web界面左侧,小扳手图标,fix permissions后,屏幕右上角提示修复成功,

l2-ADVENTERPRISEK9_M_15.2_IRON_20151103.bin
//l2-AdvEnterpriseK9-M_152_May_2018.bin
l2-ADVIPSERVICESK9-M-15.2-IRON-20170202.bin
//l3-AdvEnterpriseK9-M2_157_3_May_2018.bin

vandyke software securecrt 8.3

cdp,cisco discovery protocol
odr,按需路由选择,

cdp run
no cdp run

int e 0/0
no cdp enable

R1(config-if)#no shut
R1(config-if)#ip add
*May 16 06:11:02.067: %LINK-3-UPDOWN: Interface Ethernet0/0, changed state to up
*May 16 06:11:03.072: %LINEPROTO-5-UPDOWN: Line protocol on Interface Ethernet0/0, changed state to up

dialog 对话,问答

router odr
end
odr ,on demand stub routes

保存当前修改/运行的配置:

1.router#write

/将 RAM 中的当前配置存储到NVRAM 中,下次路由器启动就是执行保存的配置

2.router#Copy running-config startup-config

/命令与write 效果一样

show cdp neighbor
show ip route

variably
可变地
show cdp nei detail
odr,完全自动化不需要network,思科私有协议

R1(config-if)#do ping 3.3.3.3 source 1.1.1.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 3.3.3.3, timeout is 2 seconds:
Packet sent with a source address of 1.1.1.1
!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/1 ms

首先翻译一下Type escape sequence to abort,你就知道他大概是干嘛的了。
Type做动词用意为输入,
escape sequence是转义序列的意思,转义序列就是多个转义字符,转义字符的意思就是当你按下某些键时会触发特定的命令。
整句话的意思就是------->输入转义序列以终止。
终止的实际上就是你的ping或者traceroute程序。因为有的时候需要使用到扩展的ping或traceroute,
一下ping出去1w个包,如果你想终止这个ping只需要使用转义序列就可以了。
但是Cisco的IOS并没有明确告诉你这个序列是什么。(实际上这个序列是Shift+Ctrl+6)

结论这句话的意思就是----------->Shift和Ctrl和6一起按以终止ping或traceroute程序

rip,response响应报文携带路由信息,周期更新,
show ip int br

router rip
在rip中network 使用的方式是主类宣告,即A类地址掩码8,B类地址掩码16,C类地址掩码24

routing information protocol

Routing Information Sources:
Gateway Distance Last Update
192.168.13.3 120 00:00:03
192.168.12.2 120 00:00:17
Routing Information Sources,表示从这些地址收到了rip路由更新,
关闭了自动汇总以后,那么就可以按照路由的掩码来发送。
一般我们都建议no auto-summary,因为这样可以实现精确查找。
在RIPv1版本中的 no auto-sunmmary 是没有意义的,即使你打上了no auto-summary也没用,因为RIPv1本来就不支持关闭自动汇总。原因在于RIPv1版本的数据包当中,没有标识掩码的字段,所以RIPv1版即使你no auto-summary也没有意义

R1(config-router)#do sh ip rip data
1.0.0.0/8 auto-summary
1.1.1.0/24 directly connected, Loopback0
2.0.0.0/8 auto-summary
2.2.2.0/24
[1] via 192.168.12.2, 00:00:24, Ethernet0/0
3.0.0.0/8 auto-summary
3.3.3.0/24
[1] via 192.168.13.3, 00:00:25, Ethernet0/1
192.168.12.0/24 auto-summary
192.168.12.0/24 directly connected, Ethernet0/0
192.168.13.0/24 auto-summary
192.168.13.0/24 directly connected, Ethernet0/1
192.168.23.0/24 auto-summary
192.168.23.0/24
[1] via 192.168.13.3, 00:00:25, Ethernet0/1
[1] via 192.168.12.2, 00:00:24, Ethernet0/0

R1(config-router)#do sh ip route rip
Codes: L - local, C - connected, S - static, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2
i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
ia - IS-IS inter area, * - candidate default, U - per-user static route
o - ODR, P - periodic downloaded static route, H - NHRP, l - LISP
a - application route
+ - replicated route, % - next hop override

Gateway of last resort is not set

  2.0.0.0/24 is subnetted, 1 subnets

R 2.2.2.0 [120/1] via 192.168.12.2, 00:00:13, Ethernet0/0
3.0.0.0/24 is subnetted, 1 subnets
R 3.3.3.0 [120/1] via 192.168.13.3, 00:00:16, Ethernet0/1
R 192.168.23.0/24 [120/1] via 192.168.13.3, 00:00:16, Ethernet0/1
[120/1] via 192.168.12.2, 00:00:13, Ethernet0/0

update timer,更新, rip 向邻居发送路由更新,周期性
invalid timer,失效, 当180秒没收到更新,则此路由失效,
hold down timer,抑制,180秒,路由防环
flushed timer,刷新,240秒,当240秒没有收到更新,则此路由,从路由表移除,

clear ip route *
刷新路由表

ripv2部署,
router rip
version 2
no auto-summary
network 0.0.0.0

show ip route
show ip rip database

无类,classless,不遵循A/B/C类的默认规定
version2 触发更新,增量更新,
version1 周期更新

路由更新会告知对方怎样走包
触发更新,无视周期更新的规定,只要发现网络拓扑变化就立即发出路由更新包
rip,bellman-Ford 贝尔曼福特算法,2manDesign

route loop 路由环路
默认路由,ip route 0.0.0.0 0.0.0.0 10.10.10.1

show ip interface brief
Interface IP-Address OK? Method Status Protocol
Ethernet0/0 192.168.1.1 YES manual up up

tracert 要关闭 域名解析,否则解析会很慢
no ip do lo
R2(config)#no ip domain ?
list Domain name to complete unqualified host names
lookup Enable IP Domain Name System hostname translation
multicast Define the domain name for multicast address lookups
name Define the default domain name
retry Specify times to retry sending a DNS query
round-robin Round-robin multiple IP addresses in cache
timeout Specify timeout waiting for response to a DNS query

R2(config)#no ip domain lookup

直连的网段上的两个路由器,不需要互相路由更新,两个在同一个网段里,

R1(config-router)#do sh ip protocol
Routing Protocol is “rip”
Outgoing update filter list for all interfaces is not set
Incoming update filter list for all interfaces is not set
Sending updates every 30 seconds, next due in 12 seconds
Invalid after 180 seconds, hold down 180, flushed after 240
Redistributing: rip
Default version control: send version 2, receive version 2
Interface Send Recv Triggered RIP Key-chain
Ethernet0/0 2 2
Loopback0 2 2
Automatic network summarization is not in effect
Maximum path: 4
Routing for Networks:
0.0.0.0
Routing Information Sources:
Gateway Distance Last Update
192.168.12.2 120 00:00:25
Distance: (default is 120)

R1(config)#do sh ip rou rip
Codes: L - local, C - connected, S - static, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2
i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
ia - IS-IS inter area, * - candidate default, U - per-user static route
o - ODR, P - periodic downloaded static route, H - NHRP, l - LISP
a - application route
+ - replicated route, % - next hop override

Gateway of last resort is not set

  2.0.0.0/24 is subnetted, 1 subnets

R 2.2.2.0 [120/1] via 192.168.12.2, 00:00:11, Ethernet0/0
172.168.0.0/24 is subnetted, 4 subnets
R 172.168.1.0 [120/1] via 192.168.12.2, 00:00:11, Ethernet0/0
R 172.168.2.0 [120/1] via 192.168.12.2, 00:00:11, Ethernet0/0
R 172.168.3.0 [120/1] via 192.168.12.2, 00:00:11, Ethernet0/0
R 172.168.100.0 [120/1] via 192.168.12.2, 00:00:11, Ethernet0/0

R1(config)#do clear ip route * //现网慎用,路由条目存在多的话会对网络设备资源消耗很大
R1(config)#do sh ip route rip
Codes: L - local, C - connected, S - static, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2
i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
ia - IS-IS inter area, * - candidate default, U - per-user static route
o - ODR, P - periodic downloaded static route, H - NHRP, l - LISP
a - application route
+ - replicated route, % - next hop override

Gateway of last resort is not set

  2.0.0.0/24 is subnetted, 1 subnets

R 2.2.2.0 [120/1] via 192.168.12.2, 00:00:18, Ethernet0/0
R 172.168.0.0/16 [120/1] via 192.168.12.2, 00:00:18, Ethernet0/0

R2(config-if)#do sh ip int br
Interface IP-Address OK? Method Status Protocol
Ethernet0/0 192.168.12.2 YES manual up up
Ethernet0/1 unassigned YES unset administratively down down
Ethernet0/2 unassigned YES unset administratively down down
Ethernet0/3 unassigned YES unset administratively down down
Loopback0 2.2.2.2 YES manual up up
Loopback1 172.168.1.1 YES manual up up
Loopback2 172.168.2.1 YES manual up up
Loopback3 172.168.3.1 YES manual up up
Loopback4 172.168.100.1 YES manual up up

chain 链条链子,音趁

R1#sh ip rout br
Translating “br”…domain server (255.255.255.255)
^
% Invalid input detected at ‘^’ marker.

R1(config)#no ip domain lookup

key chain,钥匙链

R1(config-keychain-key)#do sh key chain
Key-chain test:
key 1 – text “test”
accept lifetime (always valid) - (always valid) [valid now]
send lifetime (always valid) - (always valid) [valid now]
钥匙链,名字,
钥匙链,第一把钥匙,key 1
钥匙链,钥匙密钥,test

R1(config-if)#ip rip aut mode md5

R1(config-if)#do sh run int e0/0
Building configuration…
Current configuration : 100 bytes
!
interface Ethernet0/0
ip address 192.168.12.1 255.255.255.0
ip rip authentication mode md5
end

R1(config-if)#ip rip au key ?
WORD name of key-chain

R1(config-if)#do sh run int e0/0
Building configuration…
Current configuration : 138 bytes
!
interface Ethernet0/0
ip address 192.168.12.1 255.255.255.0
ip rip authentication mode md5
ip rip authentication key-chain test
end

R1(config-if)#do sh ip route rip
2.0.0.0/24 is subnetted, 1 subnets
R 2.2.2.0/24 is possibly down,
routing via 192.168.12.2, Ethern
8.0.0.0/24 is subnetted, 1 subnets
R 8.8.8.0/24 is possibly down,
routing via 192.168.12.2, Ethern
R 172.168.0.0/16 is possibly down, routing via 192.168.12.2, Ethernet0/0

R1(config-if)#do clear ip route *

debug ip rip
un all //关闭debug

R1(config-if)#do sh ip route rip
2.0.0.0/24 is subnetted, 1 subnets
R 2.2.2.0 [120/1] via 192.168.12.2, 00:00:01, Ethernet0/0
8.0.0.0/24 is subnetted, 1 subnets
R 8.8.8.0 [120/1] via 192.168.12.2, 00:00:01, Ethernet0/0
R 172.168.0.0/16 [120/1] via 192.168.12.2, 00:00:01, Ethernet0/0

CISCO设备如何路由器模拟PC

1.关闭路由器的路由功能

PC1(config)#no ip routing

2.配置PC网关

PC1(config)#ip default-gateway 192.168.1.254

3.配置IP地址

PC1(config)#int f0/0PC1(config-if)#ip add 192.168.1.1 255.255.255.0PC1(config-if)#no shutdown

4.关闭其他玩意

PC1(config)#no ip domain-lookup

Router(config-router)#do sh ip rip data
192.168.1.0/24 auto-summary
192.168.1.0/24 directly connected, Ethernet0/1
192.168.12.0/24 auto-summary
192.168.12.0/24 directly connected, Ethernet0/0

Router(config)#no ip do lo

Router(config-router)#passive-interface e0/1
Router(config-router)#do sh ip pro
Passive Interface(s):
Ethernet0/1

nbma网络,例如帧中继,在nbma网络下,是不支持广播和组播的,

originate 起源;发源;创立;发端于

debug ip rip
unall

(config)#route?
route-map route-tag router

R3(config-router)#do sh ip rip da
9.0.0.0/8 auto-summary
9.9.9.0/24 directly connected, Loopback0
192.168.13.0/24 auto-summary
192.168.13.0/24 directly connected, Ethernet0/0

1.(config-router)#do sh ip route rip
2.(config-router)#do sh ip route
3.(config-router)#do sh ip rip data

eigrp,enhanced inter gateway route protocol
收敛之王,2013年后成为公有标准,与ospf收敛速度不相上下,
rip是话痨,eigrp不是定期更新,采用触发更新和增量更新
拓扑变更,
可以做c类的超网
5 key值,带宽和延迟,
不等价负载均衡
pdm 协议无关模块
rtp,可靠传输协议 ,重传和确认
hello,update,query,reply,ack
router eigrp 90
no au
net 12.1.1.0 0.0.0.255
邻居表,拓扑表,路由表,
neighbor table,topology table,routing table,
第一层关系,第二层关系,第三层关系

next-hop router,interface
router A,eth0

network,feasible distance,advertised distance,eigrp neighbor,
10.1.1.0/24,2000,1000,routerA (e0)

network,metric(feasible distance),outbound interface,next hop(eigrp neighbor)
10.1.1.0/24,2000,e0,router A

feasible
英 [ˈfiːzəbl]
美 [ˈfiːzəbl]
adj. 可行的; 行得通的

advertised
英 [ˈædvətaɪzd]
美 [ˈædvərtaɪzd]
v. (为…)做广告; 登广告; (在报纸、公共场所公告牌、互联网等上)公布,征聘; 展现,宣传(自己的事)

单播到需要路由信息的路由器,更新包
internal route=1.1.1.0 255.255.255.0

当某条路由条目丢失了,就会去邻居查询query,

对query进行响应,使用reply

ack,单播,包含在hello中,没有数据,对更新update,查询query,应答reply进行确认,

dual,扩散更新算法,不知道就问,一直扩散的问下去,直到网络边缘,

show ip eigrp interface detail

srtt,平滑回程时间

rto,retransmission timeout,重传超时

组播切换到单播方式,之前,有一个,组播流计时器,multicast flow timer,
单播之间,时间间隔,是rto,当进行了一次单播重传后,在rto的时间内未接收到ack,就进行下一次单播重传

16次后,还没收到邻居ack,则宣告邻居失效,将从失效邻居那里收到的一切,路由条目,都删掉,
rto=srtt的多次平均值

(neighbor table)
hello,i am routerA,who is on the link
hello,i am routerB

(topology table)
update,here is my complete routing information,(routerB send)
ack,thanks for the information,

update,here is my complete routing information,(routerA send)
ack,thanks for the information

(routing table)
converged biDirection
converged
英 [kənˈvɜːdʒd]
美 [kənˈvɜːrdʒd]
v. 汇集; 聚集; 集中

router eigrp automomous-system,自治系统编号
network network-number wildcard-mask,反掩码
AS号必须一致,如果不一致,eigrp的邻居关系将无法建立,

不加反掩码就是主类宣告,
通配符掩码反掩码,0表示精确匹配,所以被称为反掩码

srtt,平滑,平均,往返时间,(ms)
smooth round trip timer

rto,retransmission timeout
重传超时,

计算,最佳无环路径,备用路径,
DUAL, diffusing update algorithm

可行距离,FD,
可行后继路由器,FS
通告距离,AD,
可行条件,FC

diffusing
英 [dɪˈfjuːzɪŋ]
美 [dɪˈfjuːzɪŋ]
v. 传播; 普及; 使分散; 散布;

feasible
英 [ˈfiːzəbl]
美 [ˈfiːzəbl]
adj. 可行的; 行得通的

FD:Feasible Distance(可行性距离),用来描述从本台路由器去往目的网段的距离
AD:Advertised Distance(通告距离),从邻居去往目的网段的距离
Successor:后继路由器,去往目的网段的所有路径中,最优的路径(会放入路由表)
FS:Feasible Successor(可行后继路由器),除了最佳路径,满足FC条件的其他路径(会放入拓扑表)
FC:Feasible Condition(可行性条件),只有满足此条件的才会放入拓扑表中。
FC的规则是(放入拓扑表的条伯):本条路径的AD必须要小于最佳路径的FD,才放入拓扑表中

candidate
英 [ˈkændɪdət]
美 [ˈkændɪdət]
n. 候选人; (竞选或求职的)申请人; 投考者; 应试者; 参加考试的人

external
英 [ɪkˈstɜːnl]
美 [ɪkˈstɜːrnl]
adj. 外部的; 外面的; 外界的; 外来的

陷入主动状态 sia
当路由器进入主动状态,并因此发起查询,仅当收到每个查询的应答后,该路由才会脱离主动状态并进入被动状态。
SIA(陷入主动状态):如果路由器在3分钟(默认时间,主动定时器)内没有收到对查询的应答,路由将陷入主动状态Stuck-in-Active(SIA)
stuck
英 [stʌk]
美 [stʌk]
adj. 动不了; 无法移动; 卡住; 陷住

stub
英 [stʌb]
美 [stʌb]
n. (烟、铅笔等的)残余部分,残端; 存根; 票根

clear ip ospf process

100,000,000bit
cost=100M/接口带宽
hello,建立/维护ospf邻居关系
dbd,链路状态数据库描述信息,描述的是lsdb中lsa的头部列表,数据库描述报文(Database Description),
lsr,链路状态请求,向ospf邻居,请求链路状态信息,
lsu,链路状态更新,包含一条/多条,lsa
lsack,确认报文,

lsack,用来,对lsu进行确认,是可靠的传输机制,属于显式确认,

link state advertisement,链路状态通告
1.邻接路由器的信息,
2.直连链路的信息,
3.跨区域的信息,

路由器lsa,宣告此lsa的路由器,谁都可以,
每台路由器都会产生此lsa,
描述,
路由器直连接口的状态和cost值,
但只能在此接口所在的区域内进行传输,

如果一个路由器的全部接口,都在同一个ospf区域,那么这个路由器就被称为,内部路由器,internal router,IR,

区域边界,路由器,area border router,ABR,连接了多个区域的路由器,负责在区域之间传递路由信息,

骨干,路由器,backbone router ,BR,只要有一个接口在area0中,就是骨干路由器,

自治系统,边界路由器,autonomous system boundary router,将ospf区域之外(即不运行ospf路由协议的区域,例rip)的路由引入,

路由器lsa,网络lsa,描述区域内的网络拓扑和ip网段信息,只能在区域内泛洪,被称为区域内部路由

网络汇总lsa,描述一个区域内的路由信息,并传递给其他区域,被称为区域间路由,

asbr汇总lsa,伴生路由,目的是让大家知道怎么能到达asbr,

as外部lsa,描述的是ospf区域之外的路由,一旦生成就会在整个ospf内扩散,通常是静态路由或其他路由协议的路由

运行ospf的路由器就一定会生成 type-1 lsa,描述了直连的接口状态和接口cost值,

用 两个link来描述一个p2p接口类型链路,
type-1 lsa 的主要用途,就是帮助其他路由器,绘制出,网络拓扑和网段的具体信息,这两个link中,
前一个,用来绘制拓扑,后一个用来描述这个链路的网段信息,
link,链接类型=1,表示点对点的链接到另一个路由器,
link,链接类型=3,表示接入一个末梢网络,

type-2 lsa,告知ma网络的,掩码,ma中所有路由器的router-id,

发现,网段的信息,就是知道网段的,网络地址,网络掩码,

区域内部路由,intra-area route ,

abr只能把自己直连的intra-area route 通告给area0,但不能将它知道的区域间路由通告给area0,

ospf,防环机制
1.区域间路由,必须通过area0中转,逻辑上就是以area0为中心,其他区域为分支的,星型逻辑结构,
2.abr只能给area0它自己直连的区域内部路由,它知道的域间路由是不能告诉给area0的,

type-4 lsa

单个区域内,路由 计算,type-1 lsa 和 type-2 lsa
域外路由,rip 静态
type-5 lsa,描述域外路由,可以在整个的ospf域内泛洪,由asbr引入域外路由
ospf域内的所有路由器就知道了,到达域外的路由,同时还需要知道,引入这些外部路由的asbr的位置,

type-4 lsa,叫做 asbr summary lsa,asbr汇总lsa,由abr(和asbr在同一个区域)生成,是一条到达asbr的主机路由,
路由器不会把,通过type-4 lsa 计算出来的,到达asbr的路由,加载到,全局路由表中,
而是存放在一个特殊的,数据表里,
display ospf abr-asbr
一台路由器,收到type-5 lsa后,需要检查,是否可以到达,引入这条外部路由的asbr,当可以到达的时候,路由器才会使用type-5 lsa 进行路由计算,

type-5 lsa,as外部lsa,as external lsa,

转发地址,forwarding addresss,FA,
0.0.0.0,去往外部网段的流量,发送到,引入这个外部网段路由的asbr,
非0.0.0.0,去往外部网段的流量,发送到,转发地址FA

外部路由标记,external route tag,对外部路由进行分类标记,起到部署路由策略的作用

E位,外部路由度量值类型
假如,一条type-5 lsa的外部cost是B,ospf域内某个路由器X,到达生成此条type-5 lsa的asbr的cost是A
0,metric-type-1,X计算出的,这条外部路由的,cost是A+B
1,metric-type-2,X计算出的,这条外部路由的,cost是B

type-7 lsa,
非完全末梢区域外部 las,not-so-stubby area external lsa,
报文格式和type-5 lsa 一样,
不能进入area0,
只能在nssa,not-so-stubby area,泛洪,
stubby
英 [ˈstʌbi]
美 [ˈstʌbi]
adj. 短而粗的; 矮壮的

so stubby 如此矮小

ospf,常规区域,特殊区域,
nssa,禁止,来自 area0 的type-5 lsa 进入,因此,减少了nssa 区域内泛洪的 lsa数量,也减少了nssa区域中路由器的路由表项,从而给路由器减少了负担,
nssa 内的路由器,可以引入外部路由,使用type-7 lsa 描述,但只能在 这个nssa中泛洪,不允许进入area0
nssa 区域内的 abr,会将,在nssa内泛洪的 type-7 lsa,转换成,type-5 lsa,从而让type-7 lsa 中的
外部路由,可以进入area0和其他area中,达到外部路由在 ospf域内传播的目的,

ospf,周期,泛洪,lsa,30分钟(1800秒)
避免网络中,ospf流量过大,
减少,不必要的,带宽消耗,
但,当拓扑变化,ospf就不会等待周期泛洪了,而是会,立即执行 lsa 的,触发更新,以便网络快速收敛,

ospf ,lsa头部的三个关键字段,链路状态类型,链路状态id,通告路由器,这个三元组可以标识一个lsa

路由器,接收lsa,并加载到lsdb中,
是否应该替换lsdb中三元组相同的lsa,使用,链路状态序列号,老化时间,校验和,判断lsa的新旧
max age ,3600秒,60分钟, 一个小时,老化时间
老化时间差额,max age diff,900秒,15分钟,
1.当,两个实例,老化时间差额大于900,就是不同的实例,其中老化时间,值小的是新的,
2.当,两个实例,老化时间差额不大于900,就是同一个实例,

1.lsa 的新实例会,覆盖,旧的实例,
2.相同的实例,只保留,先前收到的lsa,而不进行替换,

lsdb中的,lsa,都有老化时间,最长存在3600秒,如果超过此值,就从lsdb中删除,
lsdb删除lsa的情况有两种:
1.老化时间>maxage,路由器,自动,删除,
2.收到,毒化路由,泛洪中的lsa的老化时间是maxage,收到这种lsa的路由器会更新自己lsdb中的lsa,更新后,再从lsdb中移除

LSA,描述,网络拓扑,网段信息,

为了,减少lsa 的泛洪,减小路由器lsdb的规模,减小路由器的性能损耗,引入了,多区域,概念
1、每个区域,独立,维护一套自己的lsdb
2、每个区域,单独,运行spf算法,
3、每个区域内,拓扑变更,不会对整个ospf带来过大的影响,
4、可以支持,更大规模的网络,

stub
英 [stʌb]
美 [stʌb]
n. (烟、铅笔等的)残余部分,残端; 存根; 票根

stub area不会把type-5 lsa 传播到stub area,
由于type-5 lsa 无法进入 stub area中,所以tpye-4 lsa 也没必要在stub area 中泛洪,因此连接 stub area 的abr 也不会向 stub area 发送 type-4 lsa,
所以,stub area中的路由器就没有去往stub area外部的,具体路由,让路由表的规模减小,设备资源消耗降低,
但,stub area 还是需要访问区域外的网络的,这时候,abr就会向 stub area 注入,默认路由,
这样 stub area 中去往区域外的流量,就通过,默认路由,先送到abr上,再由abr继续路由出去,

完全末梢网络,totally stub area,
abr阻挡,描述,域间路由的type-3 lsa 进入,区域内只有type-1 lsa 和 type-2 lsa ,还有指向abr的默认路由,路由表极度精简,
没有type-3 lsa,但存在type-3 默认路由 lsa,

not-so-stub area,
非末梢区域,非abr可以引入少量外部路由,使用type-7 lsa 描述,

在 nssa上,进一步减少lsa 的泛洪,把type-3 lsa 阻挡掉,叫,totally nssa,

hello interval,
router dead interval,4X helloInterval
LSA refresh timer,1800s,LSA sequence +1
LSA maxAge,3600s,delete LSA from LSDB,

DBD/DD数据库描述报文(Database Description),

空DBD,用来选master/slave,目的是由谁来决定DD序号
lsu,是有lack来进行确认的,而DBD/DD是没有lack进行确认的,所以需要序号和确认号来保证可靠,
exchange
英 [ɪksˈtʃeɪndʒ]
美 [ɪksˈtʃeɪndʒ]
n. 交换; 互换; 交流

左到右:
ex-start,我开始交换信息,因为我的routerId是1.1,DBD(seq=x,I=1,M=1,MS=1)
右到左:
exchange,不,我开始交换信息,因为我的routerID比你高,以我为准,DBD(seq=y,I=1,M=1,MS=1)
左到右:
exchange,好的,这是我的链路状态数据库的汇总信息,DBD(seq=y,I=0,M=1,MS=0)
右到左:
exchange,收到,这是我的链路状态数据库的汇总信息,DBD(seq=y+1,I=0,M=1,MS=1)

I位,init,置1,用于协商,主从,置0,表示,主从协商结束,
M位,more,置1,后续,会有DBD/DD报文,更新过来,置0,这是我最后的一个DBD/DD报文,
MS位,master,置1,我是master

选举规则,router-id,大的是master

右到左:
loading,这是我的链路状态数据库的汇总信息,DBD(seq=y+n,I=0,M=0,MS=1)
左到右:
full,这是我的链路状态数据库的汇总信息,DBD(seq=y+n,I=0,M=0,MS=0)

左到右:
full,我需要你处,完整的,关于,172.16.10.0网络的信息,LSR
右到左:
full,这是172.16.10.0网络的信息,LSU
左到右:
full,收到,谢谢,ACK

slave 跟着 master 给的序号走,master消息中变了序号,slave在回给master的序号就要变,
例如:master说话,这次用K这个序号,slave回答,好的,用的就是这个序号K

debug ip ospf adj
clear ip ospf process
undebug all

LSA-type 1(router-LSA)
LS type router-LSA (1)
link type 2 -connection to a transit network

transit 通过;运送过;【天】(天体)经过;过境;运输;中转;运送

debug ip ospf adj
OSPF adjacency debugging is on

desktop 62.4
thounderD 19.7
Windows 31.2
delivery 34.8
pF 11.6
pF86 23.1
users 414
pD 14.5

接口up后,一旦收到hello包,就进入initial状态,
当接口收到的hello包中有自己的router-id,就进入two-way状态,

建立邻接关系后,进入exstart准启动状态,选DBD的master,以及定义DD的sequence,

exchange,是选举完毕master后(I=0,MS=0),开始交换非空的DBD,带有LSA头部信息,

loading,看DBD里的LSA头部,发现自己数据库没有的LSA就发送LSR,邻居收到LSR就回应LSU,收到LSU就回送LSAck确认,

full,不再有LSR/LSU,所有邻居都有相同的,链路状态,数据库

之后,维持邻居关系,定期发送hello包

隐式确认,通过报文中的,确认号字段,进行确认,方法是:确认号与上一个报文的序列号相同,
显示确认,通过LSAck,进行确认,

LSU,只在两种情况下发送,不是周期性发送
1.建立邻居关系时,
2,拓扑发生变化时,
平时只发送hello包维系邻居关系,

每隔30分钟,把,每一条LSA记录,扩散一次,30分钟被称为LSA刷新时间,
每当记录被扩散一次,序列号都加1,

router ospf process-id
network ip-address wildcard-mask area area-id

DR选举,
1.优先级
2.路由器ID

Rcv New Type-2 LSA, LSID 192.168.1.2, Adv-Rtr 2.2.2.2, Seq# 80000001, Age 1, Area 0
Rcv New Type-1 LSA, LSID 2.2.2.2, Adv-Rtr 2.2.2.2, Seq# 80000002, Age 40, Area 0
Rcv Changed Type-1 LSA, LSID 2.2.2.2, Adv-Rtr 2.2.2.2, Seq# 80000003, Age 1, Area 0

Neighbor 2.2.2.2, Interface Ethernet0/0 state changes from DOWN to INIT
Neighbor 2.2.2.2, Interface Ethernet0/0 state changes from INIT to 2WAY
Neighbor 2.2.2.2, Interface Ethernet0/0 state changes from 2WAY to EXSTART
Neighbor 2.2.2.2, Interface Ethernet0/0 state changes from EXSTART to EXCHANGE
Neighbor 2.2.2.2, Interface Ethernet0/0 state changes from EXCHANGE to LOADING
Neighbor 2.2.2.2, Interface Ethernet0/0 state changes from LOADING to FULL

Interface Ethernet0/0 state changes from DOWN to WAITING
Interface Ethernet0/0 state changes from WAITING to DROTHER
Interface Ethernet0/0 state changes from DROTHER to BDR

R1#sh ip ospf int brief
Interface PID Area IP Address/Mask Cost State Nbrs F/C
Lo0 110 0 1.1.1.1/24 1 LOOP 0/0
Et0/0 110 0 192.168.1.1/24 10 BDR 1/1

R1#sh ip ospf int ether 0/0
Ethernet0/0 is up, line protocol is up
Internet Address 192.168.1.1/24, Area 0, Attached via Network Statement
Process ID 110, Router ID 1.1.1.1, Network Type BROADCAST, Cost: 10
Topology-MTID Cost Disabled Shutdown Topology Name
0 10 no no Base
Transmit Delay is 1 sec, State BDR, Priority 1
Designated Router (ID) 2.2.2.2, Interface address 192.168.1.2
Backup Designated router (ID) 1.1.1.1, Interface address 192.168.1.1
Timer intervals configured, Hello 10, Dead 40, Wait 40, Retransmit 5
oob-resync timeout 40
Hello due in 00:00:07
Supports Link-local Signaling (LLS)
Cisco NSF helper support enabled
IETF NSF helper support enabled
Index 1/1, flood queue length 0
Next 0x0(0)/0x0(0)
Last flood scan length is 1, maximum is 1
Last flood scan time is 0 msec, maximum is 0 msec
Neighbor Count is 1, Adjacent neighbor count is 1
Adjacent with neighbor 2.2.2.2 (Designated Router)
Suppress hello for 0 neighbor(s)

R1#sh ip ospf nei
Neighbor ID Pri State Dead Time Address Interface
2.2.2.2 1 FULL/DR 00:00:35 192.168.1.2 Ethernet0/0

R1#sh ip ospf rib
OSPF Router with ID (1.1.1.1) (Process ID 110)
Base Topology (MTID 0)
OSPF local RIB
Codes: * - Best, > - Installed in global RIB

  • 1.1.1.1/32, Intra, cost 1, area 0, Connected
    via 1.1.1.1, Loopback0
    *> 2.2.2.2/32, Intra, cost 11, area 0
    via 192.168.1.2, Ethernet0/0
  • 192.168.1.0/24, Intra, cost 10, area 0, Connected
    via 192.168.1.1, Ethernet0/0

rib Routing Information Base (RIB)

show ip ospf 显示ospf 路由器id、ospf定时器、LSA信息
show ip ospf interface type 显示各种定时器、邻接关系
show ip route ospf 显示路由器学习到的ospf路由条目,
show ip protocols 显示ip路由协议参数
debug ip ospf events 显示ospf相关事件
debug ip ospf adj 跟踪邻接关系的建立和中止
debug ip ospf packet 查看正在传输的ospf分组,

simulator
英 [ˈsɪmjuleɪtə®]
美 [ˈsɪmjuleɪtər]
n. 模拟装置

NS全称为Network Simulator,
GNS3 全称是 Graphical Network Simulator,

clear ip ospf process

R1#sh run | section router ospf
router ospf 110
router-id 1.1.1.1
network 0.0.0.0 255.255.255.255 area 0

section Filter a section of output

R1#sh run int e0/0
Building configuration…
Current configuration : 67 bytes
!
interface Ethernet0/0
ip address 192.168.1.1 255.255.255.0
end

R1(config)# default int e0/3
Interface Ethernet0/3 set to default configuration
Building configuration。。。

R1(config)#do sh ip ospf interface e0/0
Ethernet0/0 is up, line protocol is up
Internet Address 192.168.1.1/24, Area 0, Attached via Network Statement
Process ID 110, Router ID 1.1.1.1, Network Type BROADCAST, Cost: 10

R1(config)#do sh int e0/0
Ethernet0/0 is up, line protocol is up
Hardware is AmdP2, address is aabb.cc00.1000 (bia aabb.cc00.1000)
Internet address is 192.168.1.1/24
MTU 1500 bytes, BW 10000 Kbit/sec, DLY 1000 usec,
reliability 255/255, txload 1/255, rxload 1/255
Encapsulation ARPA, loopback not set
Keepalive set (10 sec)
ARP type: ARPA, ARP Timeout 04:00:00
Last input 00:00:03, output 00:00:02, output hang never
Last clearing of “show interface” counters never
Input queue: 0/75/0/0 (size/max/drops/flushes); Total output drops: 0
Queueing strategy: fifo
Output queue: 0/40 (size/max)
5 minute input rate 0 bits/sec, 0 packets/sec
5 minute output rate 0 bits/sec, 0 packets/sec
212 packets input, 28244 bytes, 0 no buffer
Received 206 broadcasts (0 IP multicasts)
0 runts, 0 giants, 0 throttles
0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored
0 input packets with dribble condition detected
366 packets output, 37713 bytes, 0 underruns
0 output errors, 0 collisions, 1 interface resets
0 unknown protocol drops
0 babbles, 0 late collision, 0 deferred
0 lost carrier, 0 no carrier
0 output buffer failures, 0 output buffers swapped out

R1#sh ip ospf int l0
Loopback0 is up, line protocol is up
Internet Address 1.1.1.1/24, Area 0, Attached via Network Statement
Process ID 110, Router ID 1.1.1.1, Network Type LOOPBACK, Cost: 1
Topology-MTID Cost Disabled Shutdown Topology Name
0 1 no no Base
Loopback interface is treated as a stub Host

R1(config-if)#do sh ip ospf route
OSPF Router with ID (1.1.1.1) (Process ID 110)
Base Topology (MTID 0)
Area BACKBONE(0)
Intra-area Route List

  • 192.168.1.0/24, Intra, cost 10, area 0, Connected
    via 192.168.1.1, Ethernet0/0
  • 1.1.1.0/24, Intra, cost 1, area 0, Connected
    via 1.1.1.1, Loopback0
    *> 2.2.2.2/32, Intra, cost 11, area 0
    via 192.168.1.2, Ethernet0/0

R1(config-if)#do sh ip route ospf
Codes: L - local, C - connected, S - static, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2
i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
ia - IS-IS inter area, * - candidate default, U - per-user static route
o - ODR, P - periodic downloaded static route, H - NHRP, l - LISP
a - application route
+ - replicated route, % - next hop override
Gateway of last resort is not set
2.0.0.0/32 is subnetted, 1 subnets
O 2.2.2.2 [110/11] via 192.168.1.2, 01:13:50, Ethernet0/0

R1(config-if)#do sh ip ospf route
R1(config-if)#do sh ip route ospf

二层mtu=payload
目的mac6字节+源mac6字节+类型字段2字节+fcs4字节=18字节

Windows-cmd,ping 命令后面跟的数值,其实就是icmp中data的大小,例ping -l 1472,真正出去的包大小,是1472+8+20,就是1500字节,
而,在cisco 设备上,ping 命令后面跟着的size,指的是整个ip包的大小,不会再去加上20和8了,

R2#sh ip ospf interface
Loopback0 is up, line protocol is up
Internet Address 2.2.2.2/24, Area 0, Attached via Network Statement
Process ID 110, Router ID 2.2.2.2, Network Type LOOPBACK, Cost: 1
Topology-MTID Cost Disabled Shutdown Topology Name
0 1 no no Base
Loopback interface is treated as a stub Host
Ethernet0/0 is up, line protocol is up
Internet Address 192.168.1.2/24, Area 0, Attached via Network Statement
Process ID 110, Router ID 2.2.2.2, Network Type BROADCAST, Cost: 10
Topology-MTID Cost Disabled Shutdown Topology Name
0 10 no no Base
Transmit Delay is 1 sec, State DR, Priority 1
Designated Router (ID) 2.2.2.2, Interface address 192.168.1.2
Backup Designated router (ID) 1.1.1.1, Interface address 192.168.1.1
Timer intervals configured, Hello 10, Dead 40, Wait 40, Retransmit 5
oob-resync timeout 40
Hello due in 00:00:02
Supports Link-local Signaling (LLS)
Cisco NSF helper support enabled
IETF NSF helper support enabled
Index 1/1, flood queue length 0
Next 0x0(0)/0x0(0)
Last flood scan length is 0, maximum is 1
Last flood scan time is 0 msec, maximum is 1 msec
Neighbor Count is 1, Adjacent neighbor count is 1
Adjacent with neighbor 1.1.1.1 (Backup Designated Router)
Suppress hello for 0 neighbor(s)

与路由器直连的,链路,包括,使用的接口,包括,链路的类型,包括,cost值,这些就是拓扑信息,
二类,net link states(area 0)
只在ma的网络中才有,关于dr的,dr的ip地址,dr的router-id
在ospf中,serial链路一个接口,被算作两个link

R1#sh ip ospf data router
router Router link states
OSPF Router with ID (1.1.1.1) (Process ID 110)

            Router Link States (Area 0)

LS age: 1845
Options: (No TOS-capability, DC)
LS Type: Router Links
Link State ID: 1.1.1.1
Advertising Router: 1.1.1.1
LS Seq Number: 80000003
Checksum: 0x5FD3
Length: 48
Number of Links: 2

Link connected to: a Stub Network(Link ID) Network/subnet number: 1.1.1.1(Link Data) Network Mask: 255.255.255.255Number of MTID metrics: 0TOS 0 Metrics: 1Link connected to: a Transit Network(Link ID) Designated Router address: 192.168.1.2(Link Data) Router Interface address: 192.168.1.1Number of MTID metrics: 0TOS 0 Metrics: 10

LS age: 1846
Options: (No TOS-capability, DC)
LS Type: Router Links
Link State ID: 2.2.2.2
Advertising Router: 2.2.2.2
LS Seq Number: 80000003
Checksum: 0x4FD6
Length: 48
Number of Links: 2

Link connected to: a Stub Network(Link ID) Network/subnet number: 2.2.2.2(Link Data) Network Mask: 255.255.255.255Number of MTID metrics: 0TOS 0 Metrics: 1Link connected to: a Transit Network(Link ID) Designated Router address: 192.168.1.2(Link Data) Router Interface address: 192.168.1.2Number of MTID metrics: 0TOS 0 Metrics: 10

router Router link states

R1#sh ip ospf data router self

        OSPF Router with ID (1.1.1.1) (Process ID 110)Router Link States (Area 0)

LS age: 941
Options: (No TOS-capability, DC)
LS Type: Router Links
Link State ID: 1.1.1.1
Advertising Router: 1.1.1.1
LS Seq Number: 80000004
Checksum: 0x5DD4
Length: 48
Number of Links: 2

Link connected to: a Stub Network(Link ID) Network/subnet number: 1.1.1.1(Link Data) Network Mask: 255.255.255.255Number of MTID metrics: 0TOS 0 Metrics: 1Link connected to: a Transit Network(Link ID) Designated Router address: 192.168.1.2(Link Data) Router Interface address: 192.168.1.1Number of MTID metrics: 0TOS 0 Metrics: 10

拓扑信息,R4连接着另外一台路由器R5,R5的router-id是95.5.5.5,R4通过192.168.45.4这个本地接口与R5相连,

topology,i have a neighbor,i use interface e0/0 connect him

描述拓扑的lsa,是不带matric的,

R1#sh ip ospf data network

        OSPF Router with ID (1.1.1.1) (Process ID 110)Net Link States (Area 0)

Routing Bit Set on this LSA in topology Base with MTID 0
LS age: 1266
Options: (No TOS-capability, DC)
LS Type: Network Links
Link State ID: 192.168.1.2 (address of Designated Router)
Advertising Router: 2.2.2.2
LS Seq Number: 80000004
Checksum: 0x3B3
Length: 32
Network Mask: /24
Attached Router: 2.2.2.2
Attached Router: 1.1.1.1

type=3
192.168.2.0
subnetmask 255.255.255.0
metric=128

show ip route
O IA 192.168.12.0/24【110/66】 via 192.168.36.3,00:20:41,fastethernet0/0
IA-ospf inter area

个人理解,ospf区域间路由,是接力传播,所以,实际上的,数据流量也是接力传播,

因为协议之间不能直接沟通计算,进程间也是独立进行转发和运算的
重发布来实现路由共享

不同协议的度量计算逻辑不同,重发布后,无法直接使用原协议的开销值
ASBR将不携带A协议原先所定的开销值,而是在共享到B协议时,由ABSR在路由中添加一个新的起始度量值

将A协议发布到B协议上,是将ASBR上所有通过A协议学到的及ASBR宣告在A协议的所有直连网段的路由,全部共享到B协议中

重发布后会删除原协议的开销值而添加种子度量

R1#sh ip ospf border-routers

Metric Type:2(Larger than any link state path)
External Type:Type 1(metric is specified in the same units as interface cost)

默认E2的cost值,永恒是20(seed cost ,种子值),当为E2时,不累加cost,也就是不管经历了几个路由器,E2的cost值总是20,

metric的计算,从源路由器更新过来的方向上,沿途所有路由器的,入接口的,累加值,

administrative distance ,一种路由协议的路由可信度
信任等级就叫管理距离
缩写:AD
在自治系统内部,如RIP协议是根据路径传递的跳数来决定路径长短也就是传输距离,
这是两种不同单位的度量值,我们没法进行比较。
这样我们就可以统一单位从而衡量不同协议的路径开销从而选出最优路径。

正常情况下,管理距离越小,它的优先级就越高,也就是可信度越高。

对于两种不同的路由协议到一个目的地的路由信息,
路由器,首先,根据管理距离决定相信哪一个协议。

AD值越低,则它的优先级越高。
一个管理距离是一个从0——255的整数值,
0是最可信赖的,
而255则意味着不会有业务量通过这个路由。

思科路由器:
直连接口 0
静态路由 1
OSPF 110
RIP(v1&v2) 120

华为路由器:
直连路由 0
静态路由 60
OSPF 10
RIP 100

R1#sh ip ospf interface brief
Interface PID Area IP Address/Mask Cost State Nbrs F/C
Lo0 110 0 1.1.1.1/24 1 LOOP 0/0
Et0/0 110 0 192.168.1.1/24 10 BDR 1/1

都有哪些接口启用了ospf协议,

路由信息,三要素:
1.路由前缀,
2.掩码,
3.度量值

R1#sh ip ospf data router 1.1.1.1

        OSPF Router with ID (1.1.1.1) (Process ID 110)Router Link States (Area 0)

LS age: 1848
Options: (No TOS-capability, DC)
LS Type: Router Links
Link State ID: 1.1.1.1
Advertising Router: 1.1.1.1
LS Seq Number: 8000000F
Checksum: 0x47DF
Length: 48
Number of Links: 2

Link connected to: a Stub Network(Link ID) Network/subnet number: 1.1.1.1(Link Data) Network Mask: 255.255.255.255Number of MTID metrics: 0TOS 0 Metrics: 1Link connected to: a Transit Network(Link ID) Designated Router address: 192.168.1.2(Link Data) Router Interface address: 192.168.1.1Number of MTID metrics: 0TOS 0 Metrics: 10

使用LSDB的1类、2类LSA来画一个OSPF单区域的拓扑图,

ospf选dr是不可抢占的,谁先启动谁是dr,所以会出现router-id小的也能当上dr的情况,

stub area does not accept external lsa!

stub area 不能出现asbr,也就是stub area 不允许注入外部路由,不能做,重发布,也就是说,存在asbr的区域是不能作为stub area的,

Totally stub area does not accept external or summary lsa!
same with stub area ,no asbr

area 1 stub
area 1 stub no-summary

允许做,重发布的,stub area,是产生7类lsa 的stub区域,可以有asbr 的stub area

area 1 nssa default-information-originate
解决nssa没有默认路由的问题,
originate 起源;发源;创立;发端于

ls type:as external link
link state id:192.168.2.0(external network number)
advertising router:3.3.3.3
network mask:/24
forward address:6.6.6.6
3.3.3.3宣告的,但是转发由6.6.6.6来做,说明2.0不是3的直连网段

ls type:as external link
link state id:192.168.1.0(external network number)
advertising router:1.1.1.1
network mask:/24
forward address:0.0.0.0
1.1.1.1宣告,1.1.1.1转发,说明1.0直连在1上,

默认路由,当是自动下发的时候,是不需要手工配置的,

ospf默认路由的注入
default-information originate
可以是静态的默认路由,也可以是通过动态路由获取到的默认路由,

default-information originate 生效的前提是,de-in or 的路由器上有一条默认路由(可以是静态配置的,也可以是从动态路由协议学习来的)

default-information originate always,永不失效

外部路由汇总
summary-address 10.1.0.0 255.255.0.0
在,asbr上,做,外部路由汇总

进入接口模式:ip ospf authentication-key password
接口认证,router(config-if)# ip ospf authentication
区域认证,router(config-router)# area area-id authentication

路由,重发布,
使用多种ip路由协议的原因
1.多厂商的路由环境
2.网络合并
3.从旧的路由协议,过度到新的路由协议
4.路由策略(可靠、冗余、分流)

redistribution route protocol

重分发,总是向外,执行重分发的路由器,不会修改其本身的路由表,
路由必须要位于路由表中才能被,重分发

路由回馈 feedback,次优路径,

初始度量值,也叫种子度量值,又或者叫默认度量值,根据接口的特征得来的,在重分配期间,路由器在通告,与其直连的链路时,会使用到种子度量值,
default-metric,或者在redistribution中的metric来指定,

redistribute rip 1 subnets,
subnets,指所有的子网都拿来重分发,如果没有该参数,仅仅重分发,主类网络路由,
%only classful networks will be redistributed

ping 1.1.1.1 source 3.3.3.3

router eigrp 90
redistribute ospf 110 metric 100000 1000 255 1 1500
带宽 延迟 可靠性 负载 mtu
redistribute ospf 110 metric ?
bandwidth metric in kbits per second

redistribute ospf 110 metric 100000 ?
eigrp delay metric,in 10 microsecond units

redistribute ospf 110 metric 100000 1000 ?
eigrp reliability metric where 255 is 100% reliable

redistribute ospf 110 metric 100000 1000 255 ?
eigrp effective bandwidth metric(loading)where 255 is 100% loaded

effective 产生预期结果的;有效的;实际的;事实上的

redistribute ospf 110 metric 100000 1000 255 1 ?
eigrp mtu of the path

redistribute ospf 110 metric 100000 1000 255 1 1500

常用的进程号,以管理距离AD-administrater distance,为参考
eigrp 90
ospf 110
rip 120

在ospf中,路由更新源,必须填写它的,router-id

掩码的1是,连续的精确匹配,0忽略比对
反掩码,1是,忽略匹配,0是精确匹配,

route-map name permit number
match 条件,
set 动作,

默认permit,默认10,
且不会递增,必须手工指定

单条match中多个条件,使用or
多条match,使用and

distribute-list

distribute-list in 》database》route》distribute-list out

“回车”(Carriage Return)和“换行”(Line Feed)
carriage
英 [ˈkærɪdʒ]
美 [ˈkærɪdʒ]
n. 马车;
计算机术语 字车

Carriage Return,将光标移动到当前行的开头
Line Feed,将光标“垂直”移动到下一行。(而并不移动到下一行的开头,即不改变光标水平位置)

在计算机还没有出现之前,有一种叫做电传打字机(Teletype Model 33,Linux/Unix下的tty概念也来自于此)的玩意,每秒钟可以打10个字符。但是它有一个问题,就是打完一行换行的时候,要用去0.2秒,正好可以打两个字符。要是在这0.2秒里面,又有新的字符传过来,那么这个字符将丢失。
于是,研制人员想了个办法解决这个问题,就是在每行后面加两个表示结束的字符。一个叫做“回车”,告诉打字机把打印头定位在左边界;另一个叫做“换行”,告诉打字机把纸向下移一行。这就是“换行”和“回车”的来历,从它们的英语名字上也可以看出一二。
后来,计算机发明了,这两个概念也就被般到了计算机上。那时,存储器很贵,一些科学家认为在每行结尾加两个字符太浪费了,加一个就可以。于是,就出现了分歧。
Unix系统里,每行结尾只有“<换行>”,即"\n";Windows系统里面,每行结尾是“<换行><回车>”,即“\n\r”;Mac系统里,每行结尾是“<回车>”,即"\n";。一个直接后果是,Unix/Mac系统下的文件在 Windows里打开的话,所有文字会变成一行;而Windows里的文件在Unix/Mac下打开的话,在每行的结尾可能会多出一个^M符号。

注1:关于“回车键”的来历,还得从机械英文打字机说起。在机械英文打字机上,有一个部件叫“字车”,每打一个单词,“字车”就前进一格。当打满一行字符后,打字者就得推动“字车”到起始位置,这时打字机会有两个动作响应:一是“字车”被归位,二是滚筒上卷一行,以便开始输入下一行,这个推动“字车”的动作叫“回车”。

注2:这种差别在编程、不同OS之间传输纯文本时最需要注意。

prefix-list
prefix 前缀(缀于单词前以改变其意义的字母或字母组合),在…前面加(字母或数字)

8 :1000
9 :1001
10:1010
11:1011
0011 inverse-mask

扩展AcL,
access-list 100 permit
192.168.8.0 0.0.3.0 255.255.255.0 0.0.0.0
sourceAddress sourceWildcardBits destinationAddress destinationWildcardBits
使用源地址相关(source address + sourceWildcardBits)部分,匹配路由前缀,
使用目的地址相关(destination address + destinationWildcardBits)部分,匹配掩码,

prefix-list
GE,great equal
LE,less equal

  • 192.168.4.0/24
  • 192.168.5.0/24
  • 192.168.6.0/24
  • 192.168.7.0/24
    ip prefix-list name permit 192.168.4.0/22 ge 24 le 24
    其中,/22是表示,需要精确匹配的位数,而ge 24 le 24表示的就是/24这个掩码,
    可见/22,表示从23位开始可以不同,但这些前缀的掩码必须是24,
    也就是,前缀的前22位必须相同,但是23、24这两个位置可以不同,
    所以就有了,00、01、10、11,这4个二进制位,
    再结合22位,就有了,4、5、6、7这四个前缀,
    这就是用prefix-list进行精确匹配前缀

overlaps 交叠;(时间上)部分重叠 (范围方面的)重叠部分

path control
路径控制

冗余备份+负载均衡

PBR(Policy Based Routing, 策略路由)以前是CISCO用来丢弃报文的一个主要手段。

路由器规则之一,最长匹配原则

int f0/0
no shutdown
ip add 192.168.1.1 255.255.255.0
exit
ip default-gateway 192.168.1.254
no ip routing
do show ip route
default gateway is 192.168.1.254

debug ip icmp
icmp:echo reply sent,src 172.16.5.1,dst 192.168.1.1

up all

通过route-map 控制数据流路径
1.设置静态路由
ip route 10.1.1.0 255.255.255.0 10.1.254.1
ip route 10.1.2.0 255.255.255.0 10.1.254.1
2.制定将要重分发进ospf中的route-map规则,10.1.1.0网段metric10,10.1.2.0网段metric20
access-list 1 permit 10.1.1.0
access-list 2 permit 10.1.2.0
route-map name permit 10
match ip address 1
set metric 10
route-map name permit 20
match ip address 2
set metric 20
3.使用route-map规则将静态路由重发布到ospf中
router ospf 110
redistribute static route-map name

offset-list
router(config-router)#
offset-list{access-list-number|name}{in|out}offset[interface-type interface-number]

no ip domain-lookup是指防止DNS解析的命令。很多时候,如果你敲错命令了,cisco会把它当成一个地址来找。而且找的过程非常慢,停止也停不了。

R4(config)#access-list 1 permit 3.3.3.0
R4(config)#router rip
R4(config-router)#offset-list 1 out 2 e0/1

policy-based routing
基于策略,的路由,

与策略路由对立的是,传统路由,

传统路由:是根据数据包的目的ip地址,
进行路由表的最长匹配
然后转发,

策略路由:不仅,可以根据,目的地址,
也可以根据,协议类型、报文大小、应用、ip源地址,
选择转发路径,

策略路由,PBR policy——based routing,控制数据,
路由策略,控制路由,

PBR应用示例,
access-list 1 permit 192.168.1.0 0.0.0.255
access-list 1 permit 192.168.2.0 0.0.0.255
route-map name permit 10
match ip address 1
set ip next-hop ISPaddress1
route-map name permit 20
match ip address 2
set ip interface e0/2 //set ip interface 只适用于p2p接口(dialer、serial),不适以太口
int e0/0
ip policy route-map name

注意,调用ip policy,是在数据入接口上进行的,

match ip address{access-list-number/name}|prefix-list prefix-list-name

match length min max

no ip routing,关闭并取消所有路由配置,包括取消所有的已经配置的路由协议,相当于清空动态路由协议配置
ip routing

一个接口可以配置上两个ip地址,其中第二个ip地址是 secondary结尾的,
所以在ping的时候,可以指定ping的源,
ping 3.3.3.3 source 192.168.1.1

如果假定指出了2个路由器分别归属不同的运营商,这种情况下,两个路由器可以配置相同的网段来做实验的,因为,在互联网上的一台服务器,是不限制源ip来自哪个运营商的网络的,也就是说,不同的运营商的网络都可以到达相同的目的地,比如一个网站,

sh run int e0/0

cisco路由器模拟pc
int e0/0
no sh
ip add 192.168.2.1 255.255.255.0
no ip routing
ip default-gateway 192.168.2.254

策略路由PBR,的优先级高于传统路由转发,
所以,即使没有去往特定网段的路由表,也可以通过策略路由PBR把数据包送到特定网段所直连的路由器上,
这就是为什么即使路由器上没有路由表也能正常通信(路由器进行转发数据包)的根本原因,

show route-map
route-map test,permit,sequence 10
match clauses:
ip address(access-lists):1
set clauses:
ip next-hop 13.1.1.1
policy routing matches:0 packets,0 bytes
route-map test,permit,sequence 20
match clauses:
ip address(access-lists):2
set clauses:
interface serial2/0
policy routing matches:0packets,0bytes

进入数据流的,入接口中,启用策略路由PBR,
int f0/0
ip policy route-map test

debug ip icmp //开启Cisco路由器上的关于 icmp协议的debug模式,以便进行观察,

在模拟成pc的Cisco路由器上,查看路由信息
show ip route
default gateway is 192.168.1.254

show cdp neighbors

ip sla monitor responder
ip sla monitor 1
type echo protocol ipicmpecho 10.1.1.2 source-ipaddr 10.1.1.1
frequency 10
ip sla monitor schedule 1 life forever start-time now
track 1 rtr 1 reachability

track 跟踪;追踪

show ip sla monitor responder
ip sla monitor responder is:enabled

创建:
show run | se ip sla
ip sla monitor responder
ip sla monitor 1
type echo protocol ipicmpecho 13.1.1.1 source-ipaddr 13.1.1.3
timeout 1500
frequency 5

show ip sla monitor configuration
target address:13.1.1.1
source address:13.1.1.3
operration timeout(milliseconds):1500
operation frequency(seconds):5
life(seconds):forever

调度:
ip sla monitor schedule 1 life forever start-time now

show run | se sla
ip sla monitor responder
ip sla monitor 1
type echo protocol ipicmpecho 13.1.1.1 source-ipaddr 13.1.1.3
timeout 1500
frequency 5
ip sla monitor schedule 1 life forever start-time now

ip sla monitor 2
type echo protocol ipicmpecho 23.1.1.2 source-ipaddr 23.1.1.3
timeout 1500
frequency 5
ip sla monitor schedule 2 life forever start-time now

show run | se track
track 1 rtr 1 reachability
track 2 rtr 2 reachability

关联:
track 1 rtr 1 reachability

show track
track 1
response time reporter 1 reachability
reachability is up

写入route-map:
?access-list 1 permit any ?
route-map name permit 10
match ip address 1
set ip next-hop verify-availability 13.1.1.1 10 track 1
set ip next-hop verify-availability 23.1.1.2 20 track 2

show route-map
route-map name,permit,sequence 10
match clauses:
ip address(access-lists):1
set clauses:
ip next-hop verify-availability 13.1.1.1 10 track 1 【up】
ip next-hop verify-availability 23.1.1.2 10 track 2 【up】
policy routing matches:packets,bytes

rtr,response time reporter(RTR) entry

RTR,响应时间报告器,
持续的检查,设备之间(从源设备,至目标设备之间),延迟与通断,
实时监测网络变化,当网络出现变化,则立即响应预先设置好的动作,
一般是启动备用的线路,以此来保证网络的可用性

rtr配置:
config terminal
rtr 10
type echo protocol ipicmpecho x.x.x.x
frequency 10
rtr schedule 10 life forever start-time now

track配置:
conf t
track 10 rtr 10 reachability

静态路由配置:
ip route y.y.y.y 255.255.255.0 x.x.x.x track 10

recursive 递归的;循环的

启用策略路由:
1、开始配置route-map。
使用route-map map-tag [permit | deny] [sequence-number]进入route-map的配置模式。
使用match语句定义感兴趣的流量,如果不定义则指全部流量。
使用set命令设置数据包行为。
不含default的语句,是不查询路由表就转发数据包到下一跳IP或接口,而含有default的语句是先查询路由表,在找不到精确匹配的路由条目时,才转发数据包到default语句指定的下一跳IP或接口。
2、进入想应用策略路由的接口。
interface xxx
3、应用所定义的策略。
注意必须在定义好相关的route-map后才能在接口上使用该route-map,
在接口启用route-map策略的命令为:
ip policy route-map map-tag

  1. 什么是策略路由(PBR)?
    策略路由是一种比基于目标网络进行路由更加灵活的数据包路由转发机制。应用了策略路由,PBR优先于路由表,即路由器先去查策略路由PBR,如果匹配到PBR则路由器将根据路由图决定如何对需要路由的数据包进行处理,路由图决定了一个数据包的下一跳路由器,。
  2. PBR配置步骤?
    配置 分成三步:
    第一步:定义抓取网段,ACL
    R1(config)#access-list 1 permit 192.168.1.1
    R1(config)#access-list 2 permit 192.168.1.2
    第二步: 定义route-map
    R1(config)#route-map PBR permit 10 // PBR为route-map的名称 ,序号为10。
    R1(config-route-map)#match ip address 1 // 匹配ACL
    R1(config-route-map)#set ip next-hop 12.1.1.2 // 满足此ACL的,设置下一跳走12.1.1.2
    R1(config-route-map)#exit
    R1(config)#route-map PBR permit 20
    R1(config-route-map)#match ip address 2
    R1(config-route-map)#set ip next-hop 21.1.1.2 //满足ACL,设置下一跳走21.1.1.2
    第三步: 绑定接口 //PBR只能应用在IN方向
    R1(config)#interface ethernet 0/0 //这个是数据in的接口,
    R1(config-if)#ip policy route-map PBR //接口使用ip policy调用PBR,注意PBR只有IN方向。
  3. 如何查看PBR?
    R1#show route-map
    route-map PBR, permit, sequence 10
    Match clauses:
    ip address (access-lists): 1
    Set clauses:
    ip next-hop 12.1.1.2
    Policy routing matches: 18 packets, 1347 bytes \有匹配项匹配到此条目
    route-map PBR, permit, sequence 20
    Match clauses:
    ip address (access-lists): 2
    Set clauses:
    ip next-hop 21.1.1.2
    Policy routing matches: 18 packets, 1347 bytes
  4. .验证本实验设置PBR后的数据包路径?
    H1#ipconfig 192.168.1.1
    traceroute 23.1.1.3
    Type escape sequence to abort.
    Tracing the route to 23.1.1.3
    1 192.168.1.254 84 msec 64 msec 96 msec
    2 12.1.1.2 176 msec 224 msec 180 msec //走下一跳12.1.1.2
    3 23.1.1.3 272 msec 232 msec *
    H2#ipconfig 192.168.1.2
    traceroute 23.1.1.3
    1 192.168.1.254 100 msec 172 msec 120 msec
    2 21.1.1.2 288 msec 236 msec 244 msec //走下一跳21.1.1.2
    3 23.1.1.3 300 msec 404 msec *
  5. PBR注意事项?
  • PBR优先于路由表查找。
  • 默认只针对穿越流量生效,但可以通过 router(config)#ip local policy route-map AAA,让本地起源的包生效。
  • PBR只能应用在IN方向。

1、
ip policy route-map PBR
2、
show ip policy
interface route map
fa1/0 test
3、
show route-map
route-map test,permit,sequence 10
match clauses:
ip address (access-lists):1
set clauses:
ip next-hop 13.1.1.1
policy routing matches:x packets,y bytes
4、
show access-lists
standard ip access list 1
10 permit 192.168.1.0,wildcard bits 0.0.0.255
standard ip access list 2
10 permit 192.168.2.0,wildcard bits 0.0.0.255 //标准acl只有源
extended ip access list 100 //扩展acl在源后可以写目的
10 permit ip any host 1.1.1.1
extended ip access list 101
10 permit ip any host 2.2.2.2

有一种说法,pbr应用在,使用源地址进行数据转发的场景,而传统路由转发,依靠的是目标地址,

浮动静态路由,在路由条目后面加上ad值
例如,默认静态路由,
ip route 0.0.0.0 0.0.0.0 10.1.1.2 //默认后面ad是1
ip route 0.0.0.0 0.0.0.0 10.2.2.2 10 //手工指定了ad 10

route-map name permit 10
match ip address 1
match interface serial0/0

ip nat inside source route-map name interface serial0/1 overload
表示,只有满足route-map 的match,才会做nat,否则不做nat,

nat的,inside、outside,接口定义
int f 0/0
ip nat inside
line protocol on interface nvi0,changed state to up

int s 2/0
ip nat outside

pat,端口地址转换,
nat,网络地址转换

pbr的个人理解,在使用pbr的时候,是没有传统路由表可以参考的,也不需要参考传统路由表,数据流量是依靠pbr定义的规则进行转发的,
所以,pbr会给路由器的‘非ip policy route-map name ’的接口送来数据流量,
当pbr指定的出接口down掉后,就无法使用pbr指导流量转发了,所以这时候,就需要传统路由表了,
也就是说,传统路由表也会给‘非ip policy route-map name ’的接口,送来数据流量

show run | sec ip nat
ip nat inside
ip nat outside
ip nat outside

show ip nat translations
pro inside global inside local outside local outside global
icmp 12.1.1.1:8 192.168.1.1:8 1.1.1.1:8 1.1.1.1:8
icmp 13.1.1.1:5 192.168.2.1:5 1.1.1.1:5 1.1.1.1:5

当直连的对方路由器下挂的局域网有nat转换到与己方直连的网段时,本端就不需要指向对方局域网的默认路由了,因为,与己方直连的对端路由器已经将对端局域网通过nat转换到与己方直连的网段了。

do show ip route
default gateway is 192.168.2.254

ip sla monitor ?
responder enable ip sla monitor responder
show ip sla monitor responder //采集sla的相关信息,不需要开启
ip sla monitor responder is:disabled
show ip sla monitor responder?
| output modifiers

当ip sla monitor 监测到被追踪的ip出现了问题,就结合着pbr进行路径切换以指导数据流量

Nylon-dries in seconds. 尼龙随洗随干

604800/3600=168
168/24=7
frequency in seconds,频率是几秒一次,
frequency per second,频率是一秒几次,

R1(config-sla-monitor-echo)#frequency 1
%illegal value:cannot set frequency to be less than timeout
timeout,默认是5000毫秒,
所以,frequency,最小也得是5秒

默认60s监测一次,默认超时是5000毫秒

show run | se sla
ip sla monitor 1
type echo protocol ipicmpecho 12.1.1.2 source-ipaddr 12.1.1.1
frequency 5
ip sla monitor schedule 1 life forever start-time now
ip sla monitor 2
type echo protocol ipicmpecho 13.1.1.3 source-ipaddr 13.1.1.1
frequency 5
ip sla monitor schedule 2 life forever start-time now

show access-lists
extended ip access list 120
10 permit ip any any

show run | se access
access-list 120 permit ip any any

exceeded 超过(限度,范围);凌驾;越出;(数量,程度)超过其他

router rip
no auto-summary
要养成关闭rip的路由汇总的习惯,否则的话就会出现明细路由被路由汇总覆盖在pk中输掉之后导致明细路由没有出现在路由表中的问题,

rip中的每台路由器都要关闭路由汇总,因为,rip中的每台路由器都会尝试去进行路由汇总,
而eigrp,只会在路由起源的路由器上将本路由器上的起源路由进行路由汇总再发布出去,而其他的eigrp路由器在收到了明细路由后不会再去进行汇总的动作,

当一个路由器上有多个网段的接口时,可以指定ping的源地址,如下:
ping 172.16.65.1 source 172.16.1.1

看往返路径,
再源路由器上,trace目的地址,用带source参数的 trace命令
然后再到目的路由器上,反过来去trace源地址,也用带source参数的 trace命令

rip、eigrp都是默认开启了路由汇总的,所以需要进入rip、eigrp的进程中,手工关闭no掉路由汇总的功能,

将特定的直连网段,而不是所有的直连网段,重发布到ospf中,要使用prefix-list结合route-map
ip prefix-list name permit 172.16.4.0/24
route-map name1 permit 10
match ip address prefix-list name
然后进入ospf进程,使用route-map重发布,指定直连网段172.16.4.0/24到ospf中
router ospf 110
redistribute connected route-map name1 subnets
% only classful networks will be redistributed //subnets 缺失会导致报错

int interface
ip policy route-map 2
route-map (name permit 10 )
match ip address 1
set default next-hop 192.168.100.3
acces-list 1 permit 172.16.4.0 0.0.0.255

将特定的静态路由 s 172.16.4.0[1/0] via 192.168.100.4 重发布到rip中,但并不是所有的静态路由都要重发布到rip中,要使用prefix-list结合route-map
ip prefix-list name-pl permit 172.16.4.0/24
route-map name-rm permit 10
match ip address (permit) prefix-list name-pl
router rip
redistribute static route-map name-rm

CCNP之IGP学习笔记(2022)相关推荐

  1. ida pro学习笔记2022.3.19

    2022.3.19学习笔记 基本块:是一个不包含分支,从头执行到尾的最大指令序列.每个基本块,都有唯一的入口点(块中的第一条指令)和退出点(块中的最后一条指令). 基本块的第一条指令通常是分支指令的目 ...

  2. Vue.js学习笔记 2022 04 17

    Vue.js学习笔记 1 Vue.js基础 Vue.js介绍 vuejs 渐进式 JavaScript 框架 Vue.js 如何应用 1 在普通html项目中,引入VUE.JS Hb 的项目 生成的 ...

  3. on java8学习笔记2022.2.19-2022.2.20

    2022.2.19 第十章 接口 如果一个类并不需要包含抽象方法,但同时还想阻止对它的任何实例化,这时将其定义为抽象类就很有用了. 接口和抽象类之间最显著的区别可能是两者的惯用方式.接口通常暗示&qu ...

  4. on java 8 学习笔记 2022.2.17-2022.2.18

    2022.2.17 问题 正如你在第8章会看到的,当引入继承时,通过继承而来的类(子类)可以访问父类的protected成员以及public成员(但不能访问private成员).只有当两个类在同一个包 ...

  5. 学习笔记2022.7.25-7.30

    Slam知识点 Harris响应 最近学习了一下关于Harris响应的相关知识,主要用于角点的提取上,它主要是利用一个滑动的窗口,对于某个固定方向的(u,v),我们可以得到在当前像素下的窗口进行移动所 ...

  6. 点云分割学习笔记2022

    PointCloudSegmentation 点云分割 PointCloudSegmentation测试笔记_AI视觉网奇的博客-CSDN博客 代码地址:https://github.com/Liya ...

  7. 【无标题】学习笔记-2022.8.1-8.6

    文献阅读笔记5 一.文章信息 1. 作者 Berta Bescos, Jose M. F ´ acil, Javier Civera and Jos ´ e Neira 2.单位 University ...

  8. on java 8 学习笔记 2022.2.16

    2022.2.16 问题 其实我感觉引用计数的方法不只书中提到的这种问题吧,难道不会有对象被误删的情况吗? 答:不会,因为这种方法就是参考了只要有引用,它就是有效对象的路子,而只要引用大于0,那它就是 ...

  9. java学习笔记 2022.2.11

    2022.2.11 on java 8 摘录(反射) 加载.这是由类加载器执行的.该步骤会先找到字节码(通常在类路径中的磁盘上,但也不一定),然后从这些字节码中创建一个Class对象. 链接.链接阶段 ...

最新文章

  1. Windows系统编程之进程同步试验
  2. linux-多任务同步和互斥
  3. python画散点图程序-Python散点图与折线图绘制过程解析
  4. 【概率论】1-4:事件的的并集(Union of Events and Statical Swindles)
  5. fstab自动挂载_玩客云刷机系统之armbian挂载U盘增加空间
  6. 【前后端记录】前端接收后端数据并用div元素渲染 ,mybatis修改用户数据。
  7. 完全卸载sql2005(试了以后很成功,收录下来,分享给大家)
  8. python memoryview_memoryview的用法
  9. python系统学习:第二周之字典应用
  10. 7x android 8,内测开启 华为荣耀畅玩7X升级Android 8.0
  11. C#判断一个数是否为素数
  12. python播放音频文件——playsound
  13. 如何画一个算法流图?
  14. 国外服务器和网站,国外服务器网站好吗?国外服务器网站和国内有什么区别?...
  15. LaTeX:斜线表头的表格制作
  16. Java 运算符(Operators)
  17. 自然语言处理NLP星空智能对话机器人系列:深入理解Transformer自然语言处理 Training a GPT-2 language model Steps 7 to 9
  18. 【富文本】wangeditor编辑器简单使用(自定义图片上传)
  19. SPS PDSCH的HARQ反馈
  20. 清华NLP组论文清单:全方位覆盖自然语言处理12大领域

热门文章

  1. 第六周作业1——利用哈夫曼编码英文字母表
  2. 爱因斯坦论教育,放在首位的该是什么?1936年美国高等教育300周年会(公号回复“爱因斯坦教育”下载PDF典藏版,欢迎转发赞赏)
  3. 为什么会“道可道非常道,名可名非常名”?
  4. 【python小程序】蜜雪冰城小卖铺
  5. 40+个工业检测数据集
  6. Aviation turbofan starting model
  7. 炸裂!前浪老狗工作这5年遇到的面试题们,建议老铁们收藏研读
  8. 腾讯地图获取所选区域坐标
  9. Hadoop in action 第45678章
  10. 大数据 (三) BI报表系统 superset 2 制作表格