计算机网络面试题(一)
分层概念
问题 1:OSI 有哪几层,会画出来,知道主要几层的各自作用
- 应用层(数据):确定进程之间通信的性质以满足用户需要以及提供网络与用户应用
- 表示层(数据):主要解决拥护信息的语法表示问题,如加密解密
- 会话层(数据):提供包括访问验证和会话管理在内的建立和维护应用之间通信的机 制,如服务器验证用户登录便是由会话层完成的
- 传输层(段):实现网络不同主机上用户进程之间的数据通信,可靠 与不可靠的传输,传输层的错误检测,流量控制等
- 网络层(包):提供逻辑地址(IP)、选路,数据从源端到目的端的 传输
- 数据链路层(帧):将上层数据封装成帧,用 MAC 地址访问媒介,错误检测与修正
- 物理层(比特流):设备之间比特流的传输,物理接口,电气特性等
**问题2:知道各个层使用的是哪个数据交换设备。(交换机、路由器、网关) **
- 网关:应用层、传输层(网关在传输层上以实现网络互连,是最复杂的网络互连设 备,仅用于两个高层协议不同的网络互连。网关的结构也和路由器类似,不同的是 互连层。网关既可以用于广域网互连,也可以用于局域网互连)
- 路由器:网络层(路由选择、存储转发)
- 交换机:数据链路层、网络层(识别数据包中的 MAC 地址信息,根据 MAC 地址进 行转发,并将这些 MAC 地址与对应的端口记录在自己内部的一个地址表中)
- 网桥:数据链路层(将两个 LAN 连起来,根据 MAC 地址来转发帧)
- 集线器(Hub):物理层(纯硬件设备,主要用来连接计算机等网络终端)
- 中继器:物理层(在比特级别对网络信号进行再生和重定时,从而使得它们能够在 网络上传输更长的距离)
数据链路层
ARP 协议
问题 1:ARP 的作用?
ARP 为 IP 地址到对应的硬件地址提供动态映射。
**问题 2:点对点链路使用 ARP 吗? **
不使用
问题 3:ARP 高效运行的关键是什么?
关键是每个主机上都有一个 ARP 的高速缓存。
**问题 4:ARP 报文的各个字段以及含义? **
帧类型:ARP:0x0806 (2)
ARP 首部:
硬件类型:硬件地址的类型,1 表示以太网地址。(2)
协议类型:协议地址的类型,0x0800 表示 IP 地址。(2)
硬件地址长度:字节为单位 6 (1)
协议地址长度:字节为单位 4 (1)
操作类型:2 个字节。 ARP 请求 1,ARP 回复 2,RARP 请求 3,RARP 应答 4。(2)
发送者硬件地址:6 个字节(6)
发送者 IP 地址:4 个字节(4)
目标硬件地址:6 个字节(6)
目标 IP 地址:4 个字节(4)
CRC 校验:4 个字节 (4)
总结: arp 总共 28 个字节。 记忆方法: 以太网先目地后源,ARP 先发送端后目地端。先硬件后协议。
问题 5:ARP 协议有什么弱点?
-
1)缓存:主机的地址映射是基于高速缓存的,动态更新的。地址刷新是有时间限制的。 可 以通过下次更新之前修改计算机上的地址缓存,造成拒绝服务攻击或者 ARP 欺骗。
-
2)广播: 攻击者可以伪装 ARP 应答。
-
3)ARP 应答没有认证,都是合法的。可以在不接受到请求的时候就发出应答包。
**问题 6:ARP 代理的概念和应用场景 **
若 ARP 请求是从一个网络的主机发送给另一个网络上的主机,那么连接这两个网络的路由 器就可以回答该请求,这个过程叫做 ARP 代理。ARP 代理路由器响应 ARP 请求的 MAC 地 址为路由器的 MAC 地址而非 ARP 请求的主机的 MAC 地址。 ARP 代理的应用环境:
两个物理网络之间的路由是使用相同的网络号,两个路由器设置成 ARP 代理,实现相互隐 瞒物理网络
问题 7:免费 ARP
指主机发送 ARP 查找自己的 IP 地址,即数据链路层 SIP=DIP 作用有两个:
- 1)一个主机使用免费 ARP 确定是有存在有其他主机设置了相同的 IP 地址
- 2)如果发送免费 ARP 的主机改变了 MAC 地址,可以通过发送免费 ARP 的方式告知其他 主机端更新 ARP 表
问题 8:数据链路层 MTU 的最大值和最小值是多少?
-
- 数据链路层的最小MTU 为 64 字节。对于 IEEE802.3,两个站点的最远距离不超过 2500m, 由 4 个中继器连接而成,其冲突窗口为 51.2us(2 倍电缆传播延迟加上 4 个中继器的双向延 迟).对于 10Mbps 的 IEEE802.3 来说,这个时间等于发送 64 字节,即 512 位的时间,64 字 节就是由此而来的。如果一个站点已经传输了 512bit,就认为它已经占用了这个信道。
-
- 数据链路层的最大 MTU 为 1500 字节,即数据字段的最大长度