网络知识学习
来源:互联网 发布:雾霾吸入 知乎 编辑:程序博客网 时间:2024/06/14 10:03
名词解释
网络设备
1、中继器/集线器转发包:逐比特转发
2、网桥/二层交换机转发包(网桥/二层交换机没有MAC和IP,转发包时不会修改包):
- 2-1、把整个帧存储下来
- 2-2、根据源MAC查找FDB(自学习)
- 没找到:增加条目(源MAC、端口、时间)
- 找到:更新条目
- 2-3、根据目的MAC查找FDB(转发包)
- 没找到,向所有端口(除了接收端口)转发包
- 找到,向对应端口转发包
3、路由器/三层交换机转发包(路由器/三层交换机有MAC和IP,转发包时会修改源和目的MAC,但不会修改源和目的IP):
- 根据目的IP查找路由表(线索二叉树)
- 没找到叶子节点:丢包
- 找到叶子节点:通过子网掩码与运算判断是否匹配
- 不匹配:丢包
- 匹配:根据路由类型转发
- 直连路由:配置完路由器/三层交换机端口IP后自动生成,目的MAC为目的IP的MAC
- 静态路由:管理员手工配置的路由,目的MAC为下一跳IP的MAC。默认路由是一种特殊的静态路由,目的MAC为默认网关的MAC
- 动态路由:通过动态路由协议(OSPF等)学习到的路由,目的MAC为下一跳IP的MAC
总结:
1、路由器/三层交换机按最长前缀匹配(Longest Prefix Match,LPM)原则查询路由表
2、一个路由条目是一个三元组(目的网络、下一跳IP、出端口),直连路由没有下一跳IP
3、路由汇聚可以减少路由表中路由条数
4、路由器和三层交换机的区别:
- 路由器:每次路由,转发速度慢
- 三层交换机:一次路由+多次交换,转发速度快
VLAN
http://support.huawei.com/enterprise/docinforeader!loadDocument1.action?contentId=DOC1000102393&partNo=10082
https://www.cisco.com/c/en/us/support/docs/ip/dynamic-address-allocation-resolution/13718-5.html
1、交换机的Access收包后,检查是否有VID
- 若有:丢包
- 若没有:打上本端口的PVID(VID=PVID),交给交换机
2、交换机根据目的MAC交给对应的出端口
- 若出端口为Access:检查VID是否等于本端口的PVID
- 若等于:去掉VID,发包
- 若不等于:丢包
- 若出端口为Trunk:检查VID是否等于本端口的PVID
- 若等于:去掉VID,发包
- 若不等于:发包
3、对端交换机的Trunk收包后,检查是否有VID
- 若有:交给交换机
- 若没有:打上本端口的PVID(VID=PVID),交给交换机
总结:
1、Access/Trunk交给交换机和交换机交给Access/Trunk的一定是有VID的包
2、两个Trunk之间通信,对于VID为本端Trunk的PVID的包,先去掉本端Trunk的PVID,再打上对端Trunk的PVID;其它包直接透传
3、通过设置本端Trunk的PVID为VLAN-X、对端Trunk的PVID为VLAN-Y,可以实现一个交换机下的VLAN-X和另一个交换机下的VLAN-Y之间通信
4、当我们需要互联不同VLAN时,可以选择在路由器上创建子接口,也可以选择在三层交换机上创建VLANIF(VLANIF是一个三层虚拟接口,相当于一个VLAN三层网关)
5、一般一个VLAN对应一个IP网段,但是Super VLAN允许多个Sub VLAN属于一个IP网段,不同Sub VLAN之间的三层互通需要使用Proxy ARP
在三层交换机上创建一个Super VLAN和多个Sub VLAN,将交换机的物理接口加入Sub VLAN,配置Super VLAN和Sub VLAN的映射关系、Super VLAN的IP(即所有Sub VLAN的网关IP)
VXLAN
http://support.huawei.com/huaweiconnect/enterprise/thread-334207.html
http://support.huawei.com/enterprise/zh/doc/DOC1000074415?section=10052
总结:
1、不同的VLAN通过VID区分,不同的VXLAN通过VNI区分
2、一个VNI代表一个VXLAN广播域,由于一个VTEP上可以有多个VNI(即这些VNI共用这个VTEP),所以一个VTEP可以属于多个VXLAN广播域
3、一个VTEP相当于一个VXLAN二层网关,它的行为类似于网桥/二层交换机
4、在三层交换机上创建BD,基于BD创建三层虚拟接口BDIF,一个BDIF相当于一个VXLAN三层网关,它的行为类似于路由器/三层交换机
5、VTEP根据头端复制列表(VNI、local VTEP,remote VTEPs)确定VXLAN广播域
6、VTEP每次收到包后,首先自学习FDB,然后根据FDB转发包,FDB中的条目分为两种:
- local VM:三元组(MAC、VNI、local Port)
- remote VM:三元组(MAC、VNI、remote VTEP)
7、当VTEP收到BUM(Broadcast&Unknown-unicast&Multicast,广播&未知单播&组播)报文时,复制报文并根据头端复制列表广播;当VTEP收到已知单播报文时,根据FDB转发报文
ARP
ref: https://tools.ietf.org/html/rfc826
普通ARP
1、一台主机广播ARP请求
2、同VLAN的其它主机接收到该ARP请求后,令Merge_flag = false,检查源IP是否在本机的ARP缓存中
- 若在,更新ARP缓存,令Merge_flag = true(同VLAN的其它主机选择性更新ARP缓存)
3、检查目的IP是否为本机IP
- 若是,检查Merge_flag
- 若Merge_flag == false,增加ARP缓存,返回ARP响应(响应方增加ARP缓存)
- 若不是,丢包
4、主机收到ARP响应,增加ARP缓存(请求方增加ARP缓存)
免费ARP
1、一台主机广播免费ARP请求(源和目的IP都为本机IP)
2、同VLAN的其它主机接收到该ARP请求后,令Merge_flag = false,检查源IP是否在本机的ARP缓存中
- 若在,更新ARP缓存,令Merge_flag = true(同VLAN的其它主机选择性更新ARP缓存)
3、正常情况下,主机不会收到ARP响应,若收到ARP响应,表示IP冲突了
包类型
- 学习网络知识
- 网络知识学习
- 计算机学习笔记--网络知识
- 学习网络知识的好去处
- 写给学习网络知识的朋友
- Java学习14--UDP网络编程/网络知识小结
- 网络知识
- 网络知识
- 网络知识
- 网络知识
- 网络知识
- 网络知识
- 网络知识
- 网络知识
- 网络知识
- 网络知识
- 网络知识
- 网络知识
- Spring Boot学习笔记----Schedule
- SQL入门 7 8 9 10 11 12 从查询中获得有效的结果
- LayaAir 自转的小球围绕着鼠标转动
- J作业
- open-falcon
- 网络知识学习
- 简单资源管理器
- spring boot
- RabbitMQ入门-4(HelloWorld)
- 0、MySql输入密码后闪退
- linux压缩文件夹,cksum比较两个文件或文件夹等是否一样
- 模板和class操作SQL语句方法
- select onchange点击事件
- 软件调试笔记41