交换网络基础
- 网络基础
- 交换机的转发行为
- 数据帧分类
- 交换机MAC地址表
- ping包来回过程
- VLAN
- 概念:
- VLAN接口类型
- ICMP返回值
网络基础
- 路由器:基于3层路由表转发
- 交换机:基于2层MAC地址表转发,数据帧转发
交换机的转发行为
- 泛洪:单播帧查MAC地址表没有查到,执行泛洪动作
- 转发:单播帧查MAC地址表没有查到,执行转发动作
- 丢弃
数据帧分类
- 单播:数据帧的MAC地址的第8bit为0,则为单播帧
- 广播:数据帧的MAC地址的全为F,则为广播帧
- 组播:数据帧的MAC地址的第8bit为1,则为组播帧
交换机MAC地址表
- 接收数据,学习MAC地址,学习原地址与接口对应关系
- 转发行为:收到广播,直接泛洪
ping包来回过程
ping一个不存在于改网络中的地址
过程:
1. ICMP层
2. IP层:SIP:1.1 DIP:1.100 在网络层发现源目IP在相同网段,因此无需路由功能,在二层封装D.MAC时直接封装1.100对应的MAC地址即可
3. 数据链路层:D.MAC(1.100) S.MAC(1.1)
4. 查看ARP缓存表是否存在1.100对应的MAC地址
5. 并没有1.100对应的MAC地址表,因此要使用ARP协议,发送arp-request报文去请求1.100的MAC地址
结论:由于网络中不存在1.100主机,因此arp-request不会有回应,因此PC1无法学习到1.100对应的MAC地址! —>因此ICMP报文无法完成封装
VLAN
概念:
- vlan id :vlan编号 取值范围 1~4094
- pvid :port vlan id 用于描述接口的vlan id
- 本征vlan:思科的一个专有名词,华为里没有这个说法
在思科中,对于trunk接口的vlan id叫做本征vlan
对标:华为中对于trunk接口的pvid
VLAN接口类型
-
access接口
- 1、接收数据
首先查看数据帧是否携带TAG?
如果携带TAG,那么查看该TAG中vlan id和接口的pvid是否相同,相同则接收,不同则丢弃
如果不携带TAG,那么就会给这个原始帧打一个TAG,且vlan id和接口的pvid相同。 - 2、发送数据
对比数据帧TAG中的vlan id和接口的pvid是否相同,
如果相同,则剥离TAG,发送原始帧出去。
如果不同,则丢弃。
- 1、接收数据
备注:一般交换机的接口到底要配置成什么模式,要取决于对方的接口可以识别什么样的数据帧。
如果对方接口只能识别原始帧,一般来说要给交换机接口配置为access
如果对方接口能识别vlan,那么可以将交换机接口配置为trunk
-
trunk接口
- 1、接收数据
查看是否携带TAG?- 如果携带TAG的帧,那么查看放行列表中是否被允许?
- 如果允许,则直接接收。
- 如果不允许,则丢弃。
注意:如果放行列表允许所有,那么这个所有代表在本地交换机创建的所有vlan!!!
- 如果不携带TAG的原始帧,那么会给这个原始帧打一个TAG,且TAG中的vlanid取值和该Trunk接口的Pvid相同
trunk接口的pvid默认=1,打完TAG以后还要查看放行列表是否允许- 允许则接收
- 不允许则丢弃
- 如果携带TAG的帧,那么查看放行列表中是否被允许?
- 1、接收数据
-
2、发送数据
查看放行列表:
如果允许放行,还要查看vlanid和接口的pvid是否相同:- 如果vlanid=pvid,那么会剥离TAG,发送原始帧出去。
- 如果vlanid≠pvid,那么会直接发送出去
如果不允许放行,则直接丢弃。
-
hybrid接口
- undo info-center enable //关闭日志显示
- clear configuration interface GigabitEthernet 0/0/1 //初始化接口,但是会被shutdown
- undo port trunk allow-pass vlan 1 //除vlan1以外的流量可以放行
- port hybrid pvid vlan 10
- port hybrid untagged vlan 10 //相当于access的port default vlan 10
- port hybrid tagged vlan 10 //相当于trunk的放行列表
ICMP返回值
- 请求超时
- 主机不可达
数据包封装过程:
- PC1要执行封装ICMP报文
- ICMP层 OK
- IP层 OK S.IP:PC1 D.IP:PC2 由于网段相同,所以不需要启用路由功能,那么二层帧头的目的MAC需要封装PC2的MAC地址
- 帧头:由于PC1的ARP缓存表中缺少PC2的MAC地址,因此该ICMP报文封装暂停,将发起ARP请求报文,去寻找PC2的MAC地址。
- PC1发起ARP请求报文向PC2寻找MAC地址:
- PC1发往PC2的ARP请求可以顺利到达,但是PC2给PC1回应ARP reply时到达SW3时发生了意外,无法传递给PC1。
总结:因为PC1无法获取到PC2的MAC地址,因此ICMP报文无法封装完成,因此PING的回显为目标主机不可达