第一次课
单工:BB机,只能收不能发。
半双工:对讲机,收的时候不能发,发的时候不能收。
全双工:电话,手机,能同时收发。
冲突域:当一个节点向另一个节点发送数据时,除目的节点外,还有多少站点能接收到数据,这些站点就构成了一个冲突域。
广播域:如果一个站点发送广播数据后,能收到这个数据的范围,就是一个广播域。
单播:一对一,有明确的源和目的;
组播:一对多,或者一组,只有加入该组才能收到数据,比如QQ群;
广播:一对所有,通常是整个广播域;
集线器:所有端口处在一个冲突域,整机属于一个广播域,物理层设备
交换机:每个端口独立的冲突域,整机属于一个广播域,
路由器:每个端口都属于独立的冲突域和广播域;
OSI 不是一种协议,是一个参考模型
从上到下分为7层:
应用层:商品的包装
表示层:商品的名字
会话层:商品的订单号
传输层:快递公司
网络层:快递单
数据链路层:手机号
物理层:快递员
层与层之间相互独立,又相互协作
当一次个层次出现问题,会导致数据无法正常通信
端口号:不同的端口号代表不同的应用层协议,并且决定了使用何种传输层协议进行传输。
逻辑地址:IP地址
物理地址:MAC地址
数据封装:由上到下一层层封装
解封装:由下到上一层层解开
MAC地址:传输过程中,每经过一台三层设备都会改变
IP地址:传输过程中,不会改变,除非做了策略,例如NAT
第二次课
物理介质:
网线、光纤
网卡接口
568B:橙白、橙、绿白、兰、兰白、绿、棕白、棕
一般网线中,只有1236传输数据
交叉线:连接同类型设备
直通线:连接不同类型设备
现在主流都是568B-568B
自动翻转:
打破交叉线,直通线 连接设备类型的限制
现在的网络设备,包括网卡都支持。
POE
使用网线中的 4578线,为设备进行供电,比如AP,网络摄像头
免去这种网络设备需要连接电源的烦恼
必须两端设备都支持POE技术
光纤:
使用玻璃纤维作为传输介质
单模光纤:橙黄色,使用激光为光源,传输距离远,价格贵,一次性只允许一个光信号进去。
多模光纤:橙红色,使用LED作为光源,传输距离比较近,一次性只允许多个光信号进去
光纤一般是两个接口,一收一发。
单纤收发,使用一根光纤,同时进行收发工作,需要光模块支持。
光模块:
主要用于连接光纤,光模块插在设备的光口上,光纤插在光模块上
CFP:100G
QSFP:40G
SFP:1G、10G
短波:850nm
长波:1310nm
超长波:1550nm
主要是传输距离不同,两端光模块波长必须一致。
光电转换器:
主要用于,一端设备有光模块接口,而一端设备只有电口(RJ45)接口
将光纤介质转换为铜介质传输,或者铜介质转为光纤介质传输。
光纤终端盒:
也叫法兰盘
主要用于光纤与尾纤的熔接
比如运营商放一条144芯的光纤,里面都是玻璃丝,一根玻璃丝叫一芯
熔接到法兰盘上面,然后网络设备使用尾纤接入到法兰盘
ODF架
主要用于放法兰盘
TCP/IP协议簇
DOD模型
DOD:美国国防部
应用层
主机到主机层
网络层/因特网层
网络接入层
TCP:
面向连接:
发送数据之前,首先先找到对方建立一个连接,相当于一个逻辑通道。
可靠协议,效率低
每收到一次数据,要进行确认,保证对方确定收到了这个数据。
TCP需要三次握手
就好比打电话,需要经过拨号,振铃,接通。才能进行讲话
过程:
A、我要跟你建立连接
B、好的,我知道了,我也要跟你建个连接
A、我知道你收到了我的连接请求,我也收到了你的连接请求
滑动窗口:
主要为了避免一次性发送的数据过多,导致对方缓存溢出。
滑动窗口是动态协商,也就是说,在建立连接的时候,就会进行协商
同时,在缓冲区发生变化的时候,也会进行协商。
TCP四次挥手:
主要为了避免当一方断开连接,而另一方不知道的情况下,需要耗费资源去维护本该断开的连接
过程:
假设三次连接已经建立完成
A、我要跟你断开连接了
B、好的,我知道你要断开连接了
B、我也要跟你断开连接
A、好的,那就断开连接把
UDP:
不需要建立连接,也不需要进行确认
尽力而为,效率相比TCP要高
比如对讲机,拿起来就说,而不管对方有没有收到,
直播视频,使用UDP协议
点播视频,使用TCP协议
TCP/UDP协议都是工作在传输层中
在传输层,有一个概念,叫做端口号
每一个端口号,对应一种应用层协议,比如端口号80,代表HTTP协议
而应用层协议,规定了使用何种传输协议来进行传输
比如,你访问网页,使用HTTP,端口号为80,那它是使用TCP来进行传输的
比如,你进行域名解析,使用DNS,端口号为53,那么它就是使用UDP协议
三种类型:
知名端口号 0-1023,以及分给特定的协议,不能随便使用
如果要使用,需要向互联网编号分配机构申请(IANA)
注册端口:有限的使用 1024-49511,比如8080,是作为80的补充,已经注册
私有端口:随意使用 49512-65535,
正常情况下:源端口为随机生成,目的端口为知名端口
比如你访问网页,源端口由你电脑随机分配,目的端口默认情况下是80
TCP分段重组
为何分段:
因为数据传输大小受限于传输链路,或者介质的要求。
当超过限制,TCP就把大的数据拆分成一个个小段
TCP分段,基于MISS,动态协商
一般是1500-40字节(20字节IP头部,20字节TCP头部)
因为数据被分段了,那么在传输的过程中,由于链路等其他的因素
收到的数据包顺序不一致,就会出现错误
所以,在分段的时候,对每个段进行编号,当对方收到的时候,按照序号进行排列,
保证数据的准确性。
UDP不会进行分段,UDP分段基于以太网中的MTU
并且UDP不会进行数据重组,而是按照先来后到的顺序
传输层作用:
在传输数据之前,首先建立连接,协商参数
将数据进行分段,符合传输介质的限制要求
因为数据分段,所以要进行重组
提供端口号,根据不同的端口号,将数据发送到相应的应用层协议
不同的场合,环境,应用,使用不同的传输层协议
网络层:
负责将报文从源送到目的
包括TCP建立连接,也需要依靠网络层,来将这个连接请求,传递到对方。
为设备提供逻辑地址,也就是IP地址
主流是IPV4地址
IPV4地址,为32位二进制数,长度4个字节,1字节等于8比特(位)
ICMP
主要用于检测网络的连通性
也是面向连接
对方收到我的请求后,需要发送回复
ping 114.114.114.114
Tracert:
主要用于检测,或者说跟踪,源到目的站点所经过的路径
使用IP头部中的TTL字段
TTL字段,每经过一台三层设备,减1
windows 10 发出的TTL为 64
tracert 114.114.114.114
原理:
基于UDP 或者 ICMP
首先发送一个TTL为1的UDP探测报文,源IP是本地,目的IP比如是114.114.114.114
当第一个三层设备收到后,查找去往目的站点的路由,
但此时,TTL已经为0超时了,所以它会回应超时报文,
这个时候,它的IP地址会显示出来
依次类推,直到去到目的站点
ARP:
使用IP去解析该IP对应的MAC
比如ping 192.168.1.2
假设现在电脑没有192.168.1.2的ARP表项,此时就完成不了二层封装
为什么,因为二层头部是源MAC,目的MAC
这时候就需要发送ARP报文去询问192.168.1.2的MAC地址
当192.168.1.2收到这个询问,首先会记录询问者的IP+MAC对应关系
生成ARP表项,然后回复自身的MAC给询问者。
代理ARP
主要解决目标IP不在同一个网段的情况下,回复本接口MAC,进行数据转发
192.168.1.2------------192.168.1.1 Route 192.168.2.1-------------192.168.2.2
首先192.168.1.2没有配置网关地址,也没有配置路由,并没有192.168.2.2的ARP表项
这个时候192.168.1.2发送ARP请求,当Route收到ARP报文后,发现目的MAC是广播地址,继续往拆三层。
发现目的IP不是自己,但是由于接口开了代理ARP,这个时候,首先它会去查路由表,
发现去往192.168.2.2这个地址,有路由条目,并且是直连。于是将1.1这个接口的MAC告诉给192.168.1.2
反向ARP
依靠MAC地址来获取IP
允许局域网的设备从网关服务器上的ARP表项或缓存来请求IP地址
有点类似与DHCP,但与DHCP有一些差别
RARP是封装以太网帧中,DHCP报文封装在UDP协议中
但大体上的过程差不多,
第三次课
IP地址 逻辑地址
用来确定一个网络中一个节点,或者一个设备
两台主机通信,必须要有IP地址
32位二进制数
为了便于记忆,转换成10进制数,如
192.168.1.1
并且用点号分割
也称为点分十进制数
进制转换:
二进制转10进制
10进制转二进制
第一种:余数定理
用168来除以2,等于为84,那么84显然可以被2整除,所以余数为0
再除以2,等于42,也可以整除,余数为0
在除以2,等于21,不可以被整除,那余数为1,再21-1=20
那就20除以2,等于10,可以被整除,余数为0
再除以2,等于5,不能被整除,余数为1,在5-1=4
那就4除以2,等于2,可以被整除,余数为0
那么最后2除以2,等于1,
注意,写的时候要反过来写,是10101000
第二种就是冥跟位的对应关系:
首先,你要明白2的次方是多少,这很重要
其实,就是二进制中的位,加上他所对应的幂
从左往右,分别是 128 64 32 16 8 4 2 1 ,这都是固定不变的
比如刚刚的168
而进制数是:10101000
那么,换成 十进制数就是 128+32+8
IP地址总共分为5个类别,
首先IP地址,它是由4个八位组构成,也就是每一组,由8位2进制数构成,那4组那就是32位
换算成10进制数,最小的可能性是0.0.0.0,最大的是255.255.255.255
A类的左起第1位必须是0,其他随意变换,范围是1-126
也就是说,最大跟最小的可能性,0.0.0.0-127.255.255.255
但是,0是保留的不能用,而127这段作为我们的环回地址,也就是测试地址。
子网掩码:
用于确定IP地址的网络位,跟主机位
IP地址+子网掩码,必须同时出现
默认A类:255.0.0.0
默认B类:255.255.0.0
默认C类:255.255.255.0
255.0.0.0 简便表示 /8
255.255.0.0 简便表示 /16
255.255.255.0 简便表示 /24
例如:
192.168.1.0/24
表示他的掩码是255.255.255.0
192.168.1.0/24
网络部分:192.168.1
主机部分:.0
公有地址
全球地址,互联网可路由,合法地址
私有地址
本地使用,例如家用路由 192.168.1.0/24
你家也用,别人家也可以用
但是这种地址,不能出现在公网,因为公网没有私有地址的路由
出去必须换马甲,例如NAT技术
子网掩码:
对应网络部分的,必须为1
对应主机部分的,必须为0
1表示完全匹配,0表示任意
例如:
200.1.1.0
255.255.255.0
我们仅仅只看默认掩码
因为这是个C类地址
那么网络部分是:200.1.1.
主机部分是:0
255,把他换算成二进制数
255=128+64+32+16+8+4+4+2+1
实际上就是11111111
是不是网络部分全为1,而主机部分全为0
地址类型:
网络地址:主机地址为0,即最小保留地址
主机地址:可用的主机IP地址
广播地址:主机地址为1,即最大保留地址
例如:
100.1.1.0
255.255.255.0
首先:这个掩码所能确定的主机IP地址为0-255
那么
网络地址就是: 100.1.1.0(0),即最小保留地址
主机地址则是:100.1.1.(1-254),可以分配给主机的可用IP地址
广播地址则是:100.1.1.255 (255)即最大保留地址
划分子网
提供灵活的编址,优化网络
减少网络流量。路由器增加广播域,广播域越多,每个广播域就越小,而每个网段的网络流量也越少。
优化网络性能 。
简化管理,找出并隔离网络问题更容易。
将多个小网络连接起来可提高系统的效率
VLSM
将一个大的网络,分成小的子网
当IP地址进行子网划分后,被分成三个部分,网络位,子网位,主机位
例如
222.1.1.0
255.255.255.0
这是一个C类子网的默认掩码
但经过VLSM划分之后,可能会是这样
222.1.1.0
255.255.255.128
这里会涉及到一个借位的概念
而这个借位,实际上就是把网络位扩大,主机位缩小
例如222.1.1.0/24
地址:11011110.00000001.00000001.00000000
子网掩码:11111111.11111111.11111111.00000000
而222.1.1.0/27
地址:11011110.00000001.00000001 xxx00000
子网掩码:11111111.11111111.11111111 11100000
向主机位借了三位,借的三位,叫子网位
与子网掩码的对应关系
借位:0 1 2 3 4 5 6 7 8
掩码:0 128 192 224 240 248 252 254 255
当一个网络地址经过VLSM划分之后,就没有固定的类别了
也就是说不属于ABC类,它叫做无类。
子网数:2^N次方,N为借用的位数(子网位)
主机数:2*M-2,M为主机部分剩下的位数(主机位),减去2,因为网络地址跟广播地址不能用
222.1.1.0/24 255.255.255.0
子网位: =0
多少个子网:=2^0=1,为什么,因为没有借位
主机位:=8,因为还剩下8位
每个子网主机:=2^8=256,为什么,因为最后一个八位组全为0
子网可用IP数:2^8=256-2,减去2,因为网络地址跟广播地址不能用
实际上就是
网络地址: 0
最小主机地址: 1
最大主机地址: 254
广播地址: 255
222.1.1.0/27 255.255.255.224
子网位: =3
多少个子网:=2^3=8
主机位:=5
每个子网主机:=2^5=32
子网可用IP数:2^5=32-2,减去2,因为网络地址跟广播地址不能用
实际上就是
网络地址: 0 32 64 96 128 160 192 224
最小主机地址: 1 33
最大主机地址 : 30 62
广播地址: 31 63
其他依次类推
10.1.1.0 255.255.255.192
子网位: =18
多少个子网:=2^18=自己算
主机位:=6
每个子网主机:=2^6=64
子网可用IP数:2^6=64-2,减去2,因为网络地址跟广播地址不能用
实际上就是
网络地址: 10.1.1.0 10.1.1.64 ........................
最小主机地址: 10.1.1.1 10.1.1.65
最大主机地址 : 10.1.1.62 10.1.1.126
广播地址: 10.1.1.63 10.1.1.127
172.16.1.0 255.255.255.240
子网位: =12
多少个子网:=2^12=.........
主机位:=4
每个子网主机:=2^4=16
子网可用IP数:2^4=16-2,减去2,因为网络地址跟广播地址不能用
实际上就是
网络地址: 172.16.1.0 172.16.1.16 ........................
最小主机地址: 172.16.1.1 172.16.1.17
最大主机地址 : 172.16.1.14 172.16.1.30
广播地址: 172.16.1.15 172.16.1.31
172.16.1.0 255.255.192.0
子网位: =2
多少个子网:=2^2=4
主机位:=14
每个子网主机:=2^14=.............
子网可用IP数:自己算,减去2,因为网络地址跟广播地址不能用
实际上就是
网络地址: 172.16.0.0 172.16.64.0 ........................................
最小主机地址: 172.16.0.1 172.16.64.1
最大主机地址 : 172.17.63.254 172.16.127.254
广播地址: 172.17.63.255 172.16.127.255
简便算法1
192.168.1.0
255.255.255.192 26位
多少个子网:=当前掩码26-默认掩码24=2 2^2=4
每个子网主机:=最大掩码32-当前掩码26=6 2^6=64
子网可用IP数:64-2
简便算法2
192.168.1.0
255.255.255.224 27位
多少个子网:=当前掩码27-默认掩码24=3 2^3=8
每个子网主机:=256-224=32
为什么是256,因为0-255是256个数
子网可用IP数:32-2
什么是有效子网:
192.168.1.0
255.255.255.192 26位
子网位: =2
多少个子网:=2^2=4,(有效子网要减去2)
主机位: =6
每个子网主机:=2^6=64
子网可用IP数:2^6=64-2,减去2,因为网络地址跟广播地址不能用
子网 , 有效的主机 , 广播地址
192.168.1.0 , 192.168.1.1 到 192.168.1.62 , 192.168.1.63
192.168.1.64 , 192.168.1.65 到 192.168.1.126 , 192.168.1.127
192.168.1.128 , 192.168.1.129 到 192.168.1.190 , 192.168.1.191
192.168.1.192 , 192.168.1.193 到 192.168.1.254 , 192.168.1.255
其中192.168.1.0这个子网,实际上是192.168.1.0/24的主类网络号
而 192.168.1.255,实际上是192.168.1.0/24的主类网络的广播地址
所以,有效子网要减去第一个子网跟最后一个子网,也称为全0子网和全1子网,
在一些老的设备上是不支持的,所以不能用,当然,现在的设备都不存在这个问题,都能用
只是这个概念,大家一定要搞清楚
CIDR汇总
VLSM是把主机位变成网络位,把线往右边移,将大的网络划分成小的子网
CIRD是把网络位变成主机位,把线往左移,把小的子网汇总成一个大的前缀,
例如
192.168.16.0/24
192.168.17.0/24
192.168.18.0/24
192.168.19.0/24
这是四个子网
1、静态路由配置繁琐
2、在路由器路由表中,是4个不同的路由条目,而路由表是加载在路由器内存当中
如果经过汇总
则是 192.168.16.0 255.255.252.0 这是22位
用一个大的前缀,包含多条路由条目
快速算法
256-4=252,为什么是4,因为四个子网
在前两个8位组不变的情况下,255.255.252.0
第五次课
交换基础
典型园区网结构
核心层
汇聚层
接入层
也可以没有汇聚层
这种架构叫做大二层
交换机功能:
学习MAC地址
根据MAC地址进行转发
打破二层环路(依靠STP协议)
交换机寻址:
学习源MAC地址,与接口做对应关系,存放到MAC地址表中
查看目的MAC地址,根据MAC地址表条目进行转发
没有查到目的MAC地址,则会泛洪
泛洪:除了收到数据帧的接口,其他的接口都发送一遍
VLAN:
虚拟局域网
主要就是赋予交换机隔离广播域的能力
集线器:所有端口处在一个冲突域,整机属于一个广播域
交换机:每个端口独立的冲突域,整机属于一个广播域,
路由器:每个端口都属于独立的冲突域和广播域;
一个VLAN属于一个广播域,不同的VLAN属于不同的广播域
广播,单播不能跨VLAN传递
一个VLAN一般为一个网段,一个VLAN可以有多个成员
不同VLAN间不能互访,需要依靠三层设备,路由器,三层交换机
VLAN是基于交换机接口
VLAN模式:
静态VLAN,手动登录设备配置交换机端口
动态VLAN,依靠VMPS服务器,动态下发,太麻烦,需要登记全网设备MAC地址到服务器
现网常用静态VLAN
interface e0/1
switchport mode access
switchport access vlan 10
一个Access模式的接口,只能属于一个vlan
TIPS:
在模拟环境中,同一个VLAN下,两个设备(路由器)处在不同网段,是可以进行通信的
其目的,主要是让大家更加深入的理解VLAN的概念与交换机的转发机制
真实电脑会有些差异,但也能实现,没啥意义
Trunk:
当一条链路,需要承载多VLAN信息的时
或者多个VLAN需要跨越交换机进行通信时,需要使用trunk来实现
交换机的端口 access,Trunk模式,可以自动协商
叫DTP协议,CISCO私有
现网一般为静态指定,
封装协议:
ISL:
CISCO私有,没有破坏原始以太网数据帧,而是在原始数据帧前面,加入ISL头部
基于硬件封装,速度快
只能承载1024个VLAN,现网不常用
802.1Q:
公有协议,破坏原始以太网数据帧,在原始以太网数据帧中插入了802.1Q头部
并且重新计算FCS
NATIVE VLAN 不打标签,默认是VLAN1
在端口下使用switchport trunk native vlan X 可以修改,两端建议保持一致,否则会出现流量串流
承载4096个VLAN,现网常用
配置:
interface Ethernet0/1
switchport trunk encapsulation dot1q
switchport mode trunk
CISCO 交换机默认传递所有VLAN流量
可使用 switchport trunk allow vlan X 单独放行某个VLAN,
不同的IOS版本中配置有协议不同,有些设备,能支持ISL与801.Q封装
所以在配置的时候,需要指定 switchport trunk encapsulation 封装模式
CISCO 没有Hybrid模式
VTP
VLAN中继协议,CISCO私有
在交换机之间的Trunk链路上,传递配置的VLAN信息,
通过组播MAC地址01-00-0C-CC-CC-CC传递
5分钟定时更新,或者触发更新
三种模式:
配置:
SW1(config)#vtp domain CCNA
SW1(config)#vtp mode server
SW1(config)#vtp password CCNA
SW1(config)#vtp version 2
域名,密码有大小写敏感,信息必须一致,否则无法同步
两台交换机处于不同的VTP域中,会提示不匹配消息,
Tips:如果配置完VTP之后,所有配置都正确,但其他客户端交换机依然没有学到VLAN信息,这时候需要在Server触发更新一下,触发的方式就是在Server上新增或者删除一个vlan,并且exit。
VTP修剪
在交换机之间,修剪掉多余VLAN的流量,由于交换机之间配置了Trunk链路,广播数据帧会通过Trunk泛洪到其他交换机
VTP可以根据交换机的端口access vlan成员,动态的将不需要的VLAN流量修剪掉
VTP Pruning默认关闭
VTP Pruning只能在Server 上开启
Tips:(VTP仍然会通告VLAN信息,只是会修剪Client不需要的VLAN流量),
这个需要明确一下
例如:
SW1上的VLAN10的广播流量,不会被传递到SW2,因为在Trunk上就被修剪掉了
还有另外的方式,叫做手动修剪,通过配置Trunk放行VLAN的方式
在没启用VTP Pruning 的情况下,Trunk默认让所有VLAN通过,可使用一下命令手动修剪。
手动修剪配置:
interface Ethernet0/1
switchprot trunk allowed vlan ?
ALL // 允许所有VLAN 通过
remove // 移除允许通过的VLAN
add // 增加允许通过的VLAN
except //除了这些VLAN以外,其他都允许,可以使用单个或者一个范围
none // 不允许所有VLAN 通过
或者:
interface Ethernet0/1
switchport trunk pruning vlan ?
WORD VLAN IDs of the allowed VLANs when this port is in trunking mode
add add VLANs to the current list
except all VLANs except the following
none no VLANs
remove remove VLANs from the current list
单臂路由:
在路由器的以太网接口上,来承载多Vlan流量,让路由器和交换机跑一个Trunk(交换机端配置Trunk,路由器不用),使用dot1q的封装,对路由器物理接口进行子接口划分,并为Vlan 打上Tag,以标识不同的Vlan。
交换机接口类型:
三层交换机包含两类端口 : 二层端口L2 和 三层接口L3
二层接口 ( SwitchPort ) : Access、Trunk模式
三层接口:路由接口 (no switchport )、SVI
接口下no switchport后,与路由器接口无异
SVI是一个虚拟的接口
注意SVI UP的几个条件:
第六次课
EthernetChannel(802.3ad)
将两个设备间多条相同特性的快速以太或千兆位以太物理链路捆绑在一起组成一条逻辑链路,从而达到带宽倍增及负载均衡的目的。
配置要点:
二层捆绑:
interface port-channel 1
switchport
switch trunk encapsulation dot1q
switchport mode trunk
!
interface range e0/1 – 2
shutdown ##为了避免出现BUG,先将物理接口shutdown,然后配置封装模式,最后加入捆绑
switchport
switch trunk encapsulation dot1q
switchport mode trunk
channel-group 1 mode on
no shutdown
三层捆绑
(可能直接起不来,也可能起来了ping不通,模拟器BUG)
interface Port-channel12
no switchport
ip address 12.1.1.2 255.255.255.0
end
!
interface Ethernet0/1-2
shutdown
no switchport
no ip address
channel-group 12 mode on
no shutdown
!
HSRP
CISCO私有协议
Hello包是通过组播地址224.0.0.2发送
UDP协议,1985端口,Hello时间3S,死亡时间10S
HSRP的虚拟MAC地址
0000.0c07.acxx 0000.0c为厂商编号 07ac为 HSRP编号 xx为HSRP组
HSRP几个术语:
(虚拟网关可能ping不通,看人品,这个是IOL镜像的BUG,EVE官方已经证实)
交换口转路由口做有点问题,部分IOS no switchport会直接导致设备重启;
用SVI的方式,并且所有交换机全局no ip cef ,可以比较完美的模拟;
笔记后面有HSRP/VRRP的案例分享
SW1
no ip cef
interface vlan 10
ip address 192.168.10.1 255.255.255.0
standby 10 ip 192.168.10.254
standby 10 priority 110 //默认优先级100
standby 10 preempt //默认关闭抢占
!
SW2
no ip cef
interface vlan 10
ip address 192.168.10.2 255.255.255.0
standby 10 ip 192.168.10.254
standby 10 preempt
!
组编号要一致,不然会报错
配置链路检测(可选,不同IOS版本有配置差异):
track 10 interface Ethernet0/0 line-protocol
!
interface vlan 10
standby 10 track 10 decrement 20
老版本命令:
interface vlan 10
standby 1 track e0/1 20
!
VRRP
公有协议
组播地址224.0.0.18
vrrp的虚拟MAC地址
0000.5E00.01 xx其中:0000.5E 由IANA分配 00.01是VRRP编号 xx代表VRRP组号
R1配置示例:
interface f0/0
ip add 192.168.1.253 255.255.255.0
vrrp 10 ip 192.168.1.253 //配置组10虚拟IP,可以与实际IP相同
vrrp 10 priorty 110 //配置优先级,(默认为100)
vrrp 10 preemet //默认开启抢占
R2配置示例:
interface f0/0
ip add 192.168.1.252 255.255.255.0
vrrp 10 ip 192.168.1.253
vrrp 10 preemet
两端组编号要一致,不然会报错
配置链路检测(可选,不同IOS版本有配置差异):
track 10 interface Ethernet0/0 line-protocol
!
interface f0/0
vrrp 10 track 10 decrement 20
老版本命令:
interface f0/0
vrrp 10 track e0/1 20
!
VRRP/HSRP负载案例分享
多组HSRP,单臂路由+可网管交换机:
多组HSRP,三层交换机:
第六次课
同网段DHCP:
ip dhcp pool CCNA
network 11.1.1.0 255.255.255.0
default-router 11.1.1.1
dns-server 11.1.1.1
lease 0 6
全局模式:ip dhcp excluded-address 11.1.1.1 //排除地址
DHCP中继:
interface Vlan10
ip address 192.168.10.1 255.255.255.0
ip helper-address 11.1.1.1
end
将DHCP广播报文转换成单播报文
1、配置在网关接口,也就是阻挡DHCP广播地址的第一个三层接口
2、单播报文的源地址为配置 ip helper-address命令的接口地址,目的地址为指定DHCP服务器地址
3、保证来回路由可达,
第七次课
STP协议
BPDU,网桥协议数据单元
STP路径开销,以链路带宽为准,两个标准,现在主要以NEW为准
STP的选举:
需考虑的因素:
需要注意:
比较所有网桥的优先级,优先级一致,比较MAC地址,SW1成为Root,Root所有端口为指定端口
如图所示,SW2的F0/1(连接SW1的接口) 与SW3的F0/1为Root Port,因为这些端口到达跟桥的Cost值最小
Root所有端口为DP。比较SW2与SW3相连的接口,SW2会收到SW3发来的BPDU,SW3也会都到SW2发来的BPDU,各自比较自己和收到的BPDU报文中到根路径成本,也就是COST值,发现都为19,然后比较桥ID(比较发送者桥ID),明显SW2的MAC比较小,故成为DP,而SW3的F0/0被Block。
注意,这时如果试图在SW3上,将F0/1的COST调大,比如调整为200,那么在SW3上,F0/0就会成为RP。
一般在需改变的交换机上的端口做操作:
(config-if)#spanning-tree cost 10 //修改接口COST值,如果想让阻塞端口成为转发端口,
(config-if)#spanning-tree vlan 1 cost 10 //只针对某个vlan 修改接口COST值
不再赘述
如图所示,SW2的两个接口都会收到BPDU报文,都是来自SW1,因此,两份BPDU中到Root的开销都是0,接着比较发送者桥ID,都是来自SW1,因此也比较不出来,再比较两份BPDU报文中的端口ID,假设SW1的端口优先级都相等,则比较接口ID,明显SW1的F0/1接口ID比较小,故SW2的F0/1接口成为RP。
Root的每个端口都是指定端口,SW2的F0/1接口为RP,故SW2的F0/2接口被Block。
注意,这时如果试图在SW2上将F0/2的接口优先级改小,也是没用的,因为比较的是发送者的端口ID,所以如果在SW1上,将F0/2的端口优先级调小,那么在SW2上,F0/2就会成为RP。
当然,如果将SW2的F0/2 Cost值调小,也可以让F0/2成为RP
修改接口优先级,一般在需改变的交换机上联设备接口下做操作:
(config-if)#spanning-tree port-priority 64 //修改接口优先级,必须是16的倍数, Cisco默认128,
spanning-tree vlan 1 port-priority 64 //只针对某个vlan 修改接口优先级
SW1
配置Vlan的主根桥:
(config)#spanning-tree vlan 1 priority 0 //将vlan 1 的优先级配置为0,默认为32768
SW2
配置Vlan的次根桥:
(config)#spanning-tree vlan 1 priority 4096 //将vlan 1 的优先级配置为4096,比主根桥小
思考一下,为什么?
第八次课(2017-11-18):
所谓路由,就是指导IP数据报文转发的路径
通过路由条目,生成路由表,根据路由表中的条目,进行路径选择。
路由表存储在 RAM 中,掉电丢失,加电重新装载计算。
路由分类:
直连路由 //通过接口感知到的直连 (网络接口配置IP,并且该接口的物理层及链路层状态为UP)
静态路由 //使用静态路由命令手工配置的路由
动态路由 //路由器之间动态学习到的路由表
动态路由协议:RIP、EIGRP、IS-IS、OSPF、BGP
路由选择原理:
最长掩码匹配:
示例:
去往172.16.10.1,应该被172.16.10.1/32匹配住
去往172.16.10.2,应该被172.16.10.0/30匹配住
去往172.16.10.100,应该被172.16.10.0/24匹配住
去往172.16.20.1,应该被172.16.0.0/16匹配住
去往172.17.20.1,应该被172.0.0.0/8匹配住
去往192.168.10.1,应该被默认路由匹配住
show ip route
4.0.0.0/24 is subnetted, 1 subnets
S 4.4.4.0 [1/0] via 12.1.1.2
路由标识:也可称为路由来源,S表示静态
目的网络地址:4.4.4.0/24,目的网络地址
[1/0] 管理距离AD,静态路由为1 ,Metric值,静态路由0
AD:管理距离,用于确定路由协议的优先级
Metric:度量值,用于确定到达目的的最佳路径
各类协议的管理距离:
R1#show ip route 1.1.1.1
Routing entry for 1.1.1.1/32
Known via "connected", distance 0, metric 0 (connected) 直连路由
Routing Descriptor Blocks:
* directly connected, via Loopback0
Route metric is 0, traffic share count is 1
R1#show ip route 4.4.4.0
Routing entry for 4.4.4.0/24
Known via "static", distance 1, metric 0 静态路由
Routing Descriptor Blocks:
* 12.1.1.2
Route metric is 0, traffic share count is 1
全局模式下,show ip protocols可以查看动态路由协议的管理距离
show ip protocols
Routing Protocol is "ospf 1"
Outgoing update filter list for all interfaces is not set
Incoming update filter list for all interfaces is not set
Router ID 1.1.1.1
Number of areas in this router is 0. 0 normal 0 stub 0 nssa
Maximum path: 4
Routing for Networks:
Routing Information Sources:
Gateway Distance Last Update
Distance: (default is 110)
度量值分类:
静态路由配置:
配置要点:
何谓路由递归:
假设上面的图例,R3后面还有一个网段,比如192.168.20.0,那么在R1上可以这样写:
ip route 192.168.20.0 255.255.255.0 192.168.23.3
那么当R1收到一个去往目的网络192.168.20.0/24的数据包时,先查路由表,发现有去往这个目的网络的路由,
但发现下一跳路由器是192.168.23.3,这时路由器会做一个操作,路由递归。那就是再查路由表,看192.168.23.3
怎么去,发现去往192.168.23.3,有路由,下一跳是192.168.12.2。
浮动静态路由:
去往一个目的网段,有多个路径,一条为主,一条为备
指定两个下一跳,通过调整AD值,正常情况下,AD值小的路由加表,AD值大的大的隐藏在后台,
当主路由出现问题时才加入路由表,
ip route 192.168.23.0 255.255.255.0 192.168.12.2
ip route 192.168.23.0 255.255.255.0 192.168.12.3 10 //AD调整为10
负载均衡:
去往一个目的网段,有多个路径,路由的AD值一致,metric值也一致,流量两条链路同时走
ip route 192.168.23.0 255.255.255.0 192.168.12.2
ip route 192.168.23.0 255.255.255.0 192.168.12.3
汇总路由:
改变子网掩码,通过汇总路由匹配明细,从而简化路由表,减少配置量及路由负器载
ip route 192.168.0.0 255.255.252.0 192.168.254.1
实际上匹配了:
192.168.0.0/24
192.168.1.0/24
192.168.2.0/24
192.168.3.0/24
默认路由:
常用于边缘路由器,比如,最底层接入路由器,或者出口路由器
匹配所有目的网段,
ip route 0.0.0.0 0.0.0.0 192.168.12.2
黑洞路由:
将不需要的流量丢弃到null 0接口,null 0 是路由的一个黑洞接口,
ip route 10.10.10.0 255.255.255.0 null 0
loopback接口:
作用:
案例分享:
通过浮动静态路由,结合BFD双向技术检测,保证出口路由冗余,环境如下:
交换机为二层交换机
R5 IP地址:
R6 IP地址:
配置要点:
查看:show bfd nei
动态路由协议:
通过在路由器之间,运行动态路由协议,赋予路由器动态感知网络变化,以及发现网络的能力,
并且将发现的网络生成路由条目,自动的添加到本地路由表中,并进行维护。
动态路由协议分类:
距离矢量路由协议:
链状态路由协议:
有类路由协议:
在进行路由更新的时候是不带掩码信息;
RIPv1、 IGRP
无类路由协议:
在更新路由协议的时候,包含网络前缀以及子网掩码,更加精准。
RIPv2、ISPF、EIGRP、IS-IS,BGP
有类及无类路由查找区别
无类路由(ip classless,默认打开):
路由器不会注意目的地址的类别,它会在目的地址和本身已知的路由之间进行逐位执行最长匹配
去往目的IP:192.168.1.1,走F1/0
去往目的IP:192.168.1.33,走F0/0
有类路由(no ip classless或ip classful):
当路由器收到一个数据包时,先查看目的地址所属的主类网络
去往目的IP:192.168.1.1,主类网络是192.168.1.0/24
查子网,匹配192.168.1.0/27,所以走F1/0
去往目的IP:192.168.1.33,主类网络是192.168.1.0/24
查子网,应该是192.168.1.32/27,所以被丢弃
有主类路由的情况下:
无主类路由的情况下
第九次课(2017-11-20):
RIP路由协议
RIP六大防环机制
定义最大跳数(最大为15跳),当跳数为16跳时,目标为不可达。
从一个接口学习到的路由不会再从该接口更新出去,cisco可以对每个接口关闭水平分割功能
用于在发往其它路由器的路由更新中将路由标记为不可达
带毒性反转的“水平分割”规则规定,从特定接口向外发送更新时,将通过该接口获知的所有网络标 示为不可达
一旦检测到拓扑变更,立即广播路由刷新报文,而不等到下一刷新周期
RIP定时器
RIPv1跟RIPv2的区别
RIP V1默认的是自动汇总,不可手动开启和关闭。 RIP V2默认的是自动汇总,但是可以手动的开启和关闭。
基本配置
R1配置示例:
router rip //启动RIP 进程
version 2 //指定版本2
network 10.10.10.0 // 宣告需要宣告的网段,只能识别主类网络效果与10.0.0.0一样
network 192.168.1.0 // 宣告需要宣告的网段,只能识别主类网络效果与192.168.1.0一样
no auto-summary //关闭自动汇总 重要!!
R2配置示例:
router rip //启动RIP 进程
version 2 //指定版本2
network 10.10.10.0 // 宣告需要宣告的网段,只能识别主类网络效果与10.0.0.0一样
network 20.20.20 // 宣告需要宣告的网段,只能识别主类网络效果与183.62.0.0
no auto-summary //关闭自动汇总 重要!!
R3配置示例:
router rip //启动RIP 进程
version 2 //指定版本2
network 20.20.20.0 // 宣告需要宣告的网段,只能识别主类网络效果与20.0.0.0一样
network 183.62.61.0 // 宣告需要宣告的网段,只能识别主类网络效果与183.62.0.0
no auto-summary //关闭自动汇总 重要!!
默认版本是1.5,发 version1,接收 version1,2
network 作用:
1、使此IP所属的接口,参与路由协议进程。实际上就是使用IP地址范围,来确定哪些接口需要参与路由协议进程。
2、宣告此IP属于的网段,传递出去的子网掩码以接口配置的掩码为准。
3、RIP不支持精确宣告,只能支持主类网络宣告
手动汇总
R1:
interface F0/0
ip summary-address rip 172.16.0.0 255.255.252.0 //手动汇总成22位
这里的图有点错误,将下图中的路由条目当做拓扑图中的R3学到的就行,这里只是为了演示:汇总路由的度量值,以明细路由中最小的metric值作为汇总路由的度量值。
默认路由:
假设R3连接公网,那么R2,R1身上的用户访问公网,都需要默认路由。有没有一种办法,让默认路由自动传递,而不需要每台路由器上都去写默认路由。
(首先保证设备接口都被network宣告,这里只是演示下发默认路由。其他的接口该怎么宣告还怎么宣告,宣告了才能交互路由信息)
方法1:写一条出接口形式的默认路由
R3:
ip route 0.0.0.0 0.0.0.0 f0/1 必须是出接口(需要注意,在有些版本中出接口为loopback无效)
!
router rip
vesion 2
no auto-summary
network 0.0.0.0
在距离矢量路由协议中,所有以出接口形式存在的默认路由,都能够被通告,因为看的是路由条目
方法2:RIP协议下发
R3:
ip route 0.0.0.0 0.0.0.0 3.3.3.1,//下一跳,出接口都行,只要保证本地路由表中有默认路由
router rip
vesion 2
no auto-summary
default-information originate
方法3:重分布
R3:
ip route 0.0.0.0 0.0.0.0 3.3.3.1,下一跳,出接口都行,只要保证本地路由表中有默认路由
router rip
vesion 2
no auto-summary
redistribute static
EIGRP路由协议
特点:
EIGRP三张表:
邻居建立过程:
度量值计算:
EIGRP术语:
路径计算:
配置示例:
R1关键配置示例:
router eigrp 1 //同一个区域,必须配置同一个AS号,否则报错
network 1.1.1.1 0.0.0.255 //也可以按接口IP地址精确宣告
network 192.168.12.1 0.0.0.0 //这种就是精确宣告
network 192.168.13.1 0.0.0.0
no auto-summary //关闭自动汇总
R2关键配置示例:
router eigrp 1 //同一个区域,必须配置同一个AS号,否则报错
network 2.2.2.0 0.0.0.0
network 192.168.12.2 0.0.0.0
network 192.168.23.2 0.0.0.0
no auto-summary //关闭自动汇总
R3关键配置示例:
router eigrp 1 //同一个区域,必须配置同一个AS号,否则报错
network 3.3.3.3 0.0.0.0
network 192.168.13.3 0.0.0.0
network 192.168.23.3 0.0.0.0
no auto-summary
network 作用:
1、使此IP所属的接口,参与路由协议进程。实际上就是使用IP地址范围,来确定哪些接口需要参与路由协议进程。
2、宣告此IP属于的网段,传递出去的子网掩码以接口配置的掩码为准。
3、EIGRP可以支持精确宣告
反掩码:
子网掩码:255.255.255.0
反掩码:0.0.0.255
如何计算,使用255.255.255.255 减去子网掩码,就可以得到反掩码
子网掩码:
1 表示匹配,0表示任意
反掩码:
0 表示匹配,1表示任意
等价负载均衡:
不等价负载均衡:
最小的FD:307200
要进行负载的FD:307456
307456 除以 307200=1.0008333333333333333333333333333
取整再加上1=2
307200乘以2=614400
只要其他FD小于614400,都可以进行不等价负载均衡
EIGRP手动汇总:
老版本修改汇总路由AD:
int e0/0
ip summary-address eigrp 172.16.0.0 255.255.0.0 20
新版本修改汇总路由AD:
router eigrp 1
summary-metric 172.16.0.0/16 distance 20
EIGRP默认路由:
假设R3连接了公网,那么R2,R1身上的用户访问公网,都需要默认路由。有没有一种办法,让默认路由自动传递,而不需要每台路由器上都去写默认路由。
(首先保证设备都被network宣告,这里只是演示下发默认路由,其他的接口该怎么宣告还怎么宣告,宣告了才能起邻居,起了邻居才能传路由))
方法1:写一条出接口形式的默认路由
R3:
ip route 0.0.0.0 0.0.0.0 f0/1 必须是出接口(需要注意,在有些版本中出接口为loopback无效)
!
router eigrp 1
network 0.0.0.0 255.255.255.255
在距离矢量路由协议中,所有以出接口形式存在的默认路由,都能够被通告,因为看的是路由条目
方法2:接口下汇总
R3
interface F0/0
ip summary-address eigrp 1 0.0.0.0 0.0.0.0
方法3:重分布
R3:
ip route 0.0.0.0 0.0.0.0 3.3.3.1 下一跳,出接口都行,只要保证本地路由表中有默认路由
router eigrp 1
redistribute static
redistribute static metric 8000000 10 255 1 1514 //数据出接口的属性 带宽/延迟/可靠性/负载/MTU
同为EIGRP协议重分布,不需要指定metric
OSPF路由协议
在同一个OSPF自制系统内每一台运行OSPF协议的路由器总是将本地网络的连接状态用LSA(链路状态通告)描述,并广播到整个自制系统中去。这样,每台路由器都收到了自制系统中所有路由器生成的LSA,这些LSA的集合组成了LSDB(链路状态数据库),这样所有的OSPF路由器都维护一个相同的描述自治系统内部结构的数据库。
特点:
OSPF区域:
OSPF COST计算:
OSPF三张表:
OSPF邻接与邻居区别:
OSPF Router-ID:
想让手动指定的Router-ID生效.必须清除进程,clear ip ospf process
OSPF DR/BDR:
DRother 用224.0.0.6通知DR/BDR路由器,监听224.0.0.5
DR/BDR利用组播地址224.0.0.5通知DRother路由器,监听224.0.0.6
OSPF单区域配置:
R1:
router ospf 1
router-id 1.1.1.1
network 1.1.1.1 0.0.0.0 area 0
network 192.168.12.1 0.0.0.0 area 0
!
R2:
router ospf 1
router-id 2.2.2.2
network 2.2.2.2 0.0.0.0 area 0
network 192.168.12.2 0.0.0.0 area 0
network 192.168.23.2 0.0.0.0 area 0
!
R3:
router ospf 1
router-id 3.3.3.3
network 3.3.3.3 0.0.0.0 area 0
network 192.168.23.3 0.0.0.0 area 0
!
Tips:在OSPF中,不管loopback接口配置的掩码是多少,默认通告出去的掩码为/32,这是OSPF
的网络类型导致,如果想通告出去的时候,为接口的真实掩码,则在loopback接口下配置
ip ospf network point-to-point
network 作用:
1、使此IP所属的接口,参与路由协议进程。实际上就是使用IP地址范围,来确定哪些接口需要参与路由协议进程。
2、宣告此IP属于的网段,传递出去的子网掩码以接口配置的掩码为准。
3、OSPF可以支持精确宣告
OSPF多区域配置:
R1/R2配置不再赘述:
R3:
router ospf 1
router-id 3.3.3.3
network3.3.3.3 0.0.0.0 area 0
network 192.168.23.3 0.0.0.0 area 0
network 192.168.34.3 0.0.0.0 area 1
!
R4:
router ospf 1
router-id 4.4.4.4
network 4.4.4.4 0.0.0.0 area1
network 192.168.34.4 0.0.0.0 area 1
network 192.168.0.0 0.0.3.255 area 1
!
OSPF区域间汇总:
必须在ABR汇总
R3:
router ospf 1
area 1 rang 192.168.0.0 255.255.252.0
!
OSPF默认路由:(本地有静态默认路由)
R1:
ip route 0.0.0.0 0.0.0.0 x.x.x.x
router ospf 1
default-information originate
OSPF默认路由:(本地没有静态默认路由)
(首先保证设备都被network宣告,这里只是演示下发默认路由,其他的接口该怎么宣告还怎么宣告,宣告了才能起邻居,起了邻居才能传路由)
R1:
router ospf 1
default-information originate always //强制下发
OSPF相关命令:
show ip ospf interface brief //查看接口关于OSPF的信息
show ip ospf interface serial 1/0 //查看某个接口关于OSPF的详细信息
show ip route ospf //查看OSPF路由
show ip ospf neighbor //查看ospf邻居
show ip ospf database //查看ospf链路状态数据库
ip ospf network xxxx //接口下更改OSPF网络类型
debug ip ospf adj //查看OSPF邻居关系建立过程
debug ip ospf hello //查看OSPF hello包
debug ip ospf events //查看OSPF相关事件
访问控制列表,ACL
两大功能:
流量控制
匹配感兴趣流量
ACL的3P规则:
在每一个接口的每一个方向上,只能针对每种第三层协议应用一个ACL
ACL的规范:
标准访问控制列表:
只能根据源地址做过滤
针对整个协议采取相关动作(允许或禁止)
建议将标准访问控制列表放在里目的地址近的地方,因为标准访问控制列表只能对源IP地址进行过滤
扩展访问控制列表:
能根据源、目的地地址、端口号等等进行过滤
能允许或拒绝特定的协议
建议将扩展的访问控制列表放在离源IP地址近的地方,因为扩展访问控制列表可以进行更细化的一些过滤
ACL范围:
ACL的入站及出站:
ACL的入站及出站:
入站:
在路由选择进行以前,应用在接口in方向的ACL起作用。
当接口入方向收到一个数据包,首先检查接口是否有调用ACL:
出站:
在路由选择决定以后,应用在接口out方向的ACL起作用
ACL的匹配流程:
通配符掩码:
0 表示严格匹配
1 表示无所谓
简写1:
access-list 1 permit 192.168.1.1 0.0.0.0
access-list 1 permit host 192.168.1.1
简写2:
access-list 1 permit 0.0.0.0 255.255.255.255
access-list 1 permit any
标准ACL配置:
access-list 1 deny 192.168.1.1 0.0.0.0
access-list 1 permit 0.0.0.0 255.255.255.255
!
interface e0
ip access-group 1 in
记住:“no access-list access-list-number” 将会删除整个ACL列表
配置了ACL一定要在接口下调用,否则不生效,或者接口下调用了ACL,但是全局下没有这
个ACL,也不生效
扩展ACL配置:
access-list 100 deny tcp any host 192.168.2.200 eq 23
access-list 100 permit ip any any
!
interface e1
ip access-group 1 out
记住:“no access-list access-list-number” 将会删除整个ACL列表
命名标准ACL配置:
ip access-list standard 1 (可以是序号,也可以是名字)
10 permit host 192.168.1.1
20 permit any
命名扩展ACL配置:
ip access-list extended 100 (可以是序号,也可以是名字)
10 deny tcp any host 192.168.2.200 eq 23
20 permit ip any any
命名序列号步长默认为10
ACL语句修改:
ip access-list extended 100
no 10 //删除语句10
11 deny tcp any host 192.168.2.200 eq 80 //在语句20前插入一条,序号为11
从定义ACL序列号步长:
ip access-list resequence xxxx(ACL序号或命名) 10 10 (递增数值)
ACL几个示例:
ip access-list extended 101
10 deny tcp 192.168.2.0 0.0.0.255 any eq telnet
20 permit ip any any
ip access-list extended 110
10 deny udp any host 192.168.1.1 eq snmp
s20 permit ip any any
ip access-list extended 101
10 deny tcp 172.16.4.0 0.0.0.255 172.16.3.0 0.0.0.255 eq 21
20 deny tcp 172.16.4.0 0.0.0.255 172.16.3.0 0.0.0.255 eq 20
30 permit ip any any
ip access-list extended 101
10 deny tcp 172.16.0.0 0.0.254.255 host 192.168.1.1 eq 80
20 permit ip any any
一个练习而已,不要当真!!
ip access-list extended 101
10 deny tcp/udp 192.168.1.0 0.0.0.255 eq 6666 192.168.2.0 0.0.0.255 eq 3389
查看ACL:
show run | section access-list
show ip access-lists
show ip access-lists interface vlan 10
show ip interface vlan 10
Vlan10 is up, line protocol is up
Outgoing access list is not set
Inbound access list is 100
限制设备管理:
只允许192.168.1.1,192.168.2.1管理设备
access-list 1 permit 192.168.1.1
access-list 1 permit 192.168.2.1
!
line vty 0 4
transport input telnet
access-class 1 in
注意事项:
交换机的二层接口只能调用in方向的ACL
二层交换机有能力查看ACL中的匹配条件,如源目IP,端口号等等,只是是否有必要而已
交换机ACL可以调用在SVI,或者三层接口上,方法与路由器三层接口一样
第十三次课:
NAT
NAT技术使得一个私有IP地址网络可以通过合法的公网IP连接到公网,同时将内部网络的IP地址隐藏起来不被外界发现,对内部网络设备起到保护的作用,同时,它还帮助网络可以超越地址的限制,合理地安排网络中的公有IP地址和私有IP地址的使用
NAT优缺点:
NAT术语:
NAT转换规则:
NAT转换顺序:
访问8.8.8.8 源地址是192.168.1.1 被路由器转换成202.1.1.1的源地址出去
8.8.8.8 回包202.1.1.1,路由器查NAT表,目的地址被转换192.168.1.1
203.2.1.1 访问 192.168.10.1源地址被路由器转换成192.168.20.1
192.168.10.1 回包192.168.20.1 路由器查NAT表,目的地址被转换203.2.1.1
静态NAT:
内部网络中的每个主机都被永久映射成外部网络中的某个合法的地址。静态NAT将部本地地址与内部全局地址进行一对一的转换。多用于服务器映射。静态映射是
R2配置示例:
ip nat inside source static 192.168.1.1 183.62.61.10 //定义内部与公网地址一对一转换
ip route 0.0.0.0 0.0.0.0 183.62.61.2
!
interface f0/0
ip address 192.168.1.254 255.255.255.0
ip nat inside //配置NAT入接口
interface f1/0
ip address 183.62.61.1 255.255.255.0
ip nat outside //配置NAT出接口
!
如果只是需要开放服务器的某些端口,则可使用静态端口映射,更加安全:
ip nat inside source static tcp 192.168.1.1 80 183.62.61.10 8080 //将TCP协议80端口映射到8080
动态NAT:
是动态多对M的映射。动态NAT首先要定义合法地址池,然后采用动态分配的方法映射到内部网络。
比如NAT地址池里有2个可用地址,但有3台主机需要上网,那么第Pc3就必须等到PC1或者PC2业务结束,把IP地址放回NAT地址之后才能使用。
R2配置示例:
ip nat pool ccna 183.62.61.20 183.62.61.30 netmask 255.255.255.0 //定义NAT地址池
access-list 1 permit 192.168.1.0 0.0.0.255 //定义访问控制列表
ip nat inside source list 1 pool ccna //将ACL与NAT地址池关联
ip route 0.0.0.0 0.0.0.0 183.62.61.2
interface f0/0
ip address 192.168.1.254 255.255.255.0
ip nat inside //配置NAT入接口
interface f1/0
ip address 183.62.61.1 255.255.255.0
ip nat outside //配置NAT出接口
no shutdown
PAT/端口复用:
PAT则是把内部地址映射到外部网络IP地址的不同端口上,从而可以实现一对多的映射。由上面推论,PAT理论上可以同时支持(65535 - 1024) = 64511个会话连接。但是实际使用中由于设备性能和物理连接特性是不能达到的,Cisco的路由器NAT功能中每个公共IP最多能有效地支持大约4000个会话。PAT对于节省IP地址是最为有效的
R2配置示例:
access-list 1 permit 192.168.1.0 0.0.0.255 //定义访问控制列表
ip nat inside source list 1 interface f1/0 overload //将ACL与出接口匹配,并且是PAT方式
ip route 0.0.0.0 0.0.0.0 183.62.61.2
interface f0/0
ip address 192.168.1.254 255.255.255.0
ip nat inside //配置NAT入接口
interface f1/0
ip address 183.62.61.1 255.255.255.0
ip nat outside //配置NAT出接口
no shutdown
NAT轮询:
外部用户对内部的真实主机访问时,NAT路由器会会截获得访问的数据包,把目的地址以以循环方式把目的地址转换为对应的真实主机上,以实现内网服务器的负载均衡
R2配置示例:
ip nat pool ccna 192.168.1.1 192.168.1.3 netmask 255.255.255.0 type rotary //定义内网服务器流量分担地址,并且是轮询的方式
access-list 1 permit 183.62.61.1 0.0.0.0 //定于被转换的地址,一般为路由器ouside 接口地
址,也可为其他公网IP
ip nat inside destination list 1 pool ccna // 关键!!将负载地址池与访问列表关联
ip route 0.0.0.0 0.0.0.0 183.62.61.2
interface f0/0
ip address 192.168.1.254 255.255.255.0
ip nat inside //配置NAT入接口
interface f1/0
ip address 183.62.61.1 255.255.255.0
ip nat outside //配置NAT出接口
no shutdown
!
第十四次课:
PPP协议
PPP协议子层:
链路控制协议(LCP:Link Control Protocol)
主要用来建立、拆除和监控数据链路。以及建立数据链路之前进行一系列参数的协商,协商内容包括MTU(最大传输单元),魔术字(magic number), 验证方式,数据压缩等等。
网络层控制协议(NCP:Network Control Protocol)
NCP是一个协议族,主要负责解决物理连接上运行什么网络协议,以及解决上层网络协议发生的问题。不同的网络层协议有着不同的NCP,例如IP 为IPCP ,CDP为CDPCP。
认证协议
主要用于提供对PPP功能的进一步支持。例如 口令认证协议PAP 和 挑战握手验证协议CHAP。
PPP会话建立过程:
链路建立阶段(Link-establishment phase)
PPP在建立链路之前要进行一系列的协商, PPP 首先进行LCP协商,每个PPP设备发送LCP包来配置和测试链路。LCP包包括一个叫做“配置选项”的字段,协商内容包括MRU(最大传输单元),魔术字(magic number), 是否验证,以及验证方式,如果没有设置“配置选项”字段,则使用默认的配置。
认证阶段 (Authentication phase)
在这个阶段,被认证方会将自己的身份发送给远端的接入服务器。(有则认证,无则跳过) 。在认证完成之前,禁止从认证阶段前进到网络层协议阶段。如果认证失败,认证者应该跃迁到链路终止阶段。在这一阶段里,只有链路控制协议、认证协议,和链路质量监视协议的packets是被允许的。在该阶段里接收到的其他的packets必须被静静的丢弃。最常用的认证协议有口令验证协议(PAP)和挑战握手验证协议(CHAP)
网络层协商阶段(Network layer protocol phase)
证阶段完成之后,PPP使用NCP允许封装成多种网络层协议并在PPP数据链路上发送。建立和NCP的服务关系。
NCP配置完毕,双方开始发送数据。
PPP认证:
PAP单向认证
服务器是认证方,客户端是被认证方
R1(认证方)配置示例:
username CCNA password CISCO@123
interface Serial1/0
clock rate 64000 //串行接口在DCE端配置时钟,DCE端一般为运营商,模拟器配不配无所谓。
ip address 12.1.1.2 255.255.255.252
encapsulation ppp
ppp authentication pap
!
R2(被认证方)配置示例:
interface Serial1/0
ip address 12.1.1.1 255.255.255.252
encapsulation ppp
ppp pap sent-username CCNA password CISCO@123
!
PAP双向认证
双方即是认证方,也是被认证方
R1配置示例:
username CCNA password CISCO
!
interface Serial1/0
ip address 12.1.1.1 255.255.255.252
encapsulation ppp
ppp authentication pap
ppp pap sent-username CCNP password CISCO@123
R2配置示例:
username CCNP password CISCO@123
!
interface Serial1/0
ip address 12.1.1.2 255.255.255.252
encapsulation ppp
ppp authentication pap
ppp pap sent-username CCNA password CISCO
!
CHAP认证:
CHAP单向认证
R1配置示例:
username CCNA password CISCO
!
interface Serial1/0
ip address 12.1.1.1 255.255.255.252
encapsulation ppp
ppp authentication chap
R2配置示例:
interface Serial1/0
ip address 12.1.1.2 255.255.255.252
ppp chap hostname CCNA
ppp chap password 0 CISCO
!
CHAP 双向认证
R1配置示例:
username CCNP password CISCO@123
//双方数据库中用户名可以不一样,但密码必须一样
!
interface Serial1/0
ip address 12.1.1.1 255.255.255.252
encapsulation ppp
ppp authentication chap
ppp chap hostname CCNA
ppp chap password CISCO@123
R2配置示例:
username CCNA password CISCO@123
//双方数据库中用户名可以不一样,但密码必须一样
interface Serial1/0
ip address 12.1.1.2 255.255.255.252
encapsulation ppp
ppp authentication chap
ppp chap hostname CCNP
ppp chap password CISCO@123
PPPOE技术:
PPP协议又由于其本身的特点在点对点广域网链路中被广泛应用,支持多协议、支持身份验证技术等等。
PPPoE技术可以理解为此二者的结合,在以太网链路上,继承PPP协议的众多优点,其中以身份验证技术最抢眼。
PPPoE提供通过简单桥接的接入服务器把一个网络的多个主机连接到远程接入服务器的功能
如今PPPoE技术已经被广泛应用在运营商接入,许多家庭宽带用户,都是使用PPPoE拨号上网
PPPOE数据帧:
PPPOE链路建立过程:
PPPOE配置:
PPPOE Server R2配置示例:
username CISCO password 0 CISCO
!
ip dhcp pool CISCO
network 23.1.1.0 255.255.255.0
default-router 23.1.1.2
!
bba-group pppoe global //全局一定要敲!
virtual-template 1
!
interface Virtual-Template1
ip address 23.1.1.2 255.255.255.0
ip mtu 1492
peer default ip address dhcp-pool CISCO
ppp authentication pap
!
interface Ethernet0/0
no ip address
pppoe enable group global //接口记得关联
!
PPPOE Client R3配置示例:
interface Dialer0
ip address dhcp
ip mtu 1492
encapsulation ppp
dialer pool 1 //定义拨号编号为1
ppp pap sent-username CISCO password 0 CISCO
!
interface Ethernet0/0
no ip address
pppoe enable
pppoe-client dial-pool-number 1 //定义为PPPOE客户端,并且调用 dialer pool 1
!
动态产生默认路由(可选):
interface Dialer0
ppp ipcp route default
GRE VPN(Generic Routing Encapsulation):
通用路由封装协议GRE协议,它提供了将一种协议的报文封装在另一种协议报文中的机制,使报文能够在tunnel(隧道)中传输。
优点:
缺点:
隧道技术(Tunnel):
Tunnel 是一个虚拟的点对点的连接,提供了一条通路使封装的数据报文能够在这个通路上传输,并且在一个Tunnel 的两端分别对数据报进行封装及解封装。
GRE包头格式:
1、R2、R3运行GRE VPN
2、R2、R3启用EIGRP协议
3、PC1、PC2通信走GRE隧道
IP地址配置过程与不再赘述
R2配置示例:
interface Ethernet0/0
ip address 12.1.1.2 255.255.255.0
!
interface Tunnel0
tunnel mode gre ip //默认封装
ip address 172.16.1.2 255.255.255.0
tunnel source Ethernet0/0 //也可写IP
tunnel destination 13.1.1.3
!
router eigrp 1
network 172.16.1.2 0.0.0.0
network 192.168.1.254 0.0.0.0
R3配置示例:
interface Ethernet0/1
ip address 13.1.1.3 255.255.255.0
!
interface Tunnel0
tunnel mode gre ip
ip address 172.16.1.3 255.255.255.0
tunnel source Ethernet0/0
tunnel destination 12.1.1.2
!
router eigrp 1
network 172.16.1.3 0.0.0.0
network 192.168.2.254 0.0.0.0
no auto-summary