说明
这里会准备一些,真实面试中遇到或常见的网络相关问题。
1、网络里的7层和4层分别是什么?有什么区别?
-
7层模型(OSI模型):
物理层(Physical):负责硬件传输,物理连接和信号传输。例如:网线、光纤。
数据链路层(Data Link):负责帧的传输与控制。例如:交换机。
网络层(Network):负责数据包的路由与传输。例如:路由器、IP协议。
传输层(Transport):提供端到端的传输服务,确保数据的完整性。例如:TCP、UDP。
会话层(Session):管理通信会话。例如:NetBIOS。
表示层(Presentation):数据格式转换和加密解密。例如:JPEG、SSL。
应用层(Application):提供网络服务的应用程序接口。例如:HTTP、FTP。 -
4层模型(TCP/IP模型):
网络接口层(Network Interface):相当于OSI的物理层和数据链路层。
网络层(Internet):相当于OSI的网络层。例如:IP协议。
传输层(Transport):相当于OSI的传输层。例如:TCP、UDP。
应用层(Application):相当于OSI的应用层、表示层和会话层的组合。例如:HTTP、SMTP。 -
区别:
OSI模型更详细,强调了数据传输过程中的每个步骤,适用于理论教学。
TCP/IP模型更加实际,广泛用于现代网络,适用于实际应用。 -
例子:
4层传输层(TCP/UDP):传输数据,例如在网络游戏中,UDP用于低延迟传输,而TCP用于可靠数据传输。
7层应用层(HTTP):访问网页时,浏览器通过HTTP与服务器交互,属于应用层。
2、OSPF,ARP,DHCP的原理是什么?
-
OSPF(Open Shortest Path First):
是一种链路状态路由协议,使用Dijkstra算法计算最短路径。它通过发送链路状态广告(LSA)更新路由信息,适合大型网络。
-
ARP(Address Resolution Protocol):
是一个将IP地址解析成MAC地址的协议。当主机要发送数据包时,需要知道目标主机的MAC地址,ARP帮助完成这种解析。
-
DHCP(Dynamic Host Configuration Protocol):
用于动态分配IP地址。当新设备加入网络时,DHCP服务器自动分配IP地址、子网掩码、网关等网络配置。
3、二层、三层交换机和路由器的区别是什么?
-
二层交换机:
工作在OSI模型的数据链路层,主要基于MAC地址转发数据包,不进行路由选择。
-
三层交换机:
不仅能基于MAC地址进行转发,还具备部分路由功能,能够根据IP地址进行数据包的转发。
-
路由器:
工作在OSI模型的网络层,专门用于不同网络之间的通信,能够进行复杂的路由选择,并管理不同网络之间的流量。
4、防火墙、路由器和交换机有什么区别?
-
防火墙:
主要用于网络安全控制,通过定义的规则来允许或阻止数据包进入或离开网络,保护网络免受未经授权的访问。
-
路由器:
负责不同网络之间的数据包转发,进行网络路径选择。
-
交换机:
在同一网络内部进行数据包转发,连接多个设备。
-
特殊之处:
防火墙具有安全功能,可以在OSI模型的多个层级(如网络层、传输层)进行包过滤和状态监控,阻止非法访问。
5、核心路由器为什么不能用普通路由器代替?
-
核心路由器:
通常位于网络的骨干部分,处理大量数据流量,提供高性能、高可靠性,支持高级路由协议,如BGP、OSPF。它们通常具有冗余硬件设计和更高的吞吐量。
-
普通路由器:
通常用于小型网络或边缘网络,处理流量较少,功能和性能都较为基础。
核心路由器在企业和ISP网络中承担着关键的路由任务,保证高效的数据传输和网络的稳定性。
6、会话层(Session Layer)具体说明
会话层是OSI模型的第5层,主要负责建立、管理和终止通信会话。它管理两个设备之间的对话(也称为会话),并确保这些对话能够被正确的创建和终止。会话层会在两个设备间建立连接,维持该连接的稳定性,必要时恢复连接,避免数据丢失。
-
NetBIOS(Network Basic Input/Output System):
这是一个会话层协议,允许应用程序在网络上不同的计算机之间进行通信。NetBIOS提供会话管理功能,确保数据的可靠传输。例如,在局域网内,NetBIOS可以用于Windows机器之间的文件和打印机共享。
简单来说,会话层就像是一个会议的主持人,负责开始和结束会议,并确保各方在适当的时间发言。
7、OSPF,ARP,DHCP和BGP的作用层次
-
OSPF(Open Shortest Path First):
作用层次:作用于网络层(OSI模型第3层)。
作用:OSPF是一个内部网关协议(IGP),用于在一个自治系统(AS)内的路由器之间分发路由信息。它使用链路状态协议,通过LSA(链路状态广告)传播路由信息,计算最短路径,使网络中每个路由器都能构建一个完整的网络拓扑图。
用处:在大型网络中,OSPF有助于路由器快速找到最优路径,减少网络延迟,提升数据传输效率。 -
ARP(Address Resolution Protocol):
作用层次:作用于数据链路层(OSI模型第2层),但与网络层(第3层)密切相关。
作用:ARP用于将网络层的IP地址解析为数据链路层的MAC地址。每当一个设备需要发送数据包到同一网络中的另一台设备时,ARP会查找目标设备的MAC地址,以便在本地网络中进行通信。
用处:在局域网内,ARP允许设备根据IP地址找到物理地址(MAC地址),从而成功发送数据包。 -
DHCP(Dynamic Host Configuration Protocol):
作用层次:作用于应用层(OSI模型第7层),但它的操作会影响到网络层的IP地址分配。
作用:DHCP自动为网络中的设备分配IP地址、子网掩码、网关和DNS服务器等网络配置参数。
用处:简化网络管理,特别是在大规模网络中,通过自动分配IP地址来减少人为配置错误。 -
BGP(Border Gateway Protocol):
作用层次:作用于网络层(OSI模型第3层)。
作用:BGP是互联网的主要路由协议,用于在不同自治系统(AS)之间交换路由信息。它基于路径向量算法,考虑到多个因素(如路径长度、政策)来决定最佳路径。
用处:BGP确保全球互联网的路由器能正确找到通往任何IP地址的路径,是互联网的核心路由协议。
8、SAN(Storage Area Network)的作用层次
-
作用层次:
SAN主要作用于数据链路层和物理层。它是一个专门用于存储的高性能网络,连接服务器与存储设备(如磁盘阵列)。
-
区别:
SAN vs. Samba:SAN是一种存储架构,提供高性能、低延迟的存储访问,通常用于企业级环境。Samba则是一个软件实现的文件共享服务,运行在应用层,使用SMB/CIFS协议来提供文件和打印机共享,常见于Windows网络共享。
SAN vs. NAS:SAN与网络附加存储(NAS)不同,SAN提供块级存储,直接映射到服务器,而NAS则是文件级存储,提供文件共享。 -
用户体验:
对于用户来说,SAN通常对最终用户是透明的,它提供高速可靠的存储解决方案。而Samba之类的服务则直接与用户互动,用户可以在文件管理器中看到共享的文件夹和文件。
9、DNS不生效了,如何排查问题?
当DNS出现故障,解析失败或不生效时,可以通过以下步骤进行调试:
-
检查网络连接:
确保设备与DNS服务器的网络连接正常。
使用ping命令测试到DNS服务器的连通性(例如 ping 8.8.8.8)。 -
检查DNS配置:
查看当前配置的DNS服务器是否正确(例如在Windows上运行ipconfig /all查看DNS服务器地址)。
在Linux上可以检查 /etc/resolv.conf 文件,看是否正确配置了DNS服务器。 -
使用nslookup或dig工具:
nslookup(Windows/Linux都可以用):输入nslookup www.example.com来检查DNS解析情况。
dig(Linux/Unix系统):例如dig www.example.com,查看DNS查询的详细过程。
这两个工具可以帮助你查看DNS查询的响应,并判断是DNS服务器的问题还是网络的问题。 -
清除DNS缓存:
在Windows上运行ipconfig /flushdns清除本地DNS缓存。
在浏览器上也可以清除缓存,以确保使用的是最新的DNS记录。 -
检查DNS服务器状态:
如果你使用的是自己的DNS服务器,检查DNS服务是否正常运行(如Windows Server上的DNS服务)。
在Linux上可以通过systemctl status named检查DNS服务状态(BIND服务器)。 -
查看日志文件:
在DNS服务器上查看日志文件,排查是否有错误信息。BIND服务器的日志通常存储在/var/log/named/。
-
使用其他DNS服务器:
临时更换为其他公共DNS服务器,如Google的8.8.8.8或Cloudflare的1.1.1.1,测试问题是否依旧存在。
-
示例:
假设你无法访问www.example.com,使用nslookup www.example.com发现DNS服务器响应超时,这可能意味着DNS服务器无法正常工作,或者网络无法到达DNS服务器。你可以通过ping命令测试网络,或切换到另一个DNS服务器(如8.8.8.8)来验证问题是否在于DNS服务器。
10、Windows的两个DC域,其中一个出故障了,如何排查?
当一个Windows域控制器(DC)出现故障时,可能会影响到域内的认证、DNS解析等功能。以下是一些排查步骤:
-
检查DC的网络连接:
确保有故障的DC与其他DC及客户端的网络连接正常。可以使用ping命令和tracert命令检查网络通路。
-
检查DC的服务状态:
登录到有故障的DC,检查关键服务是否在运行(如Active Directory Domain Services、DNS Server、Netlogon等)。
可以使用services.msc或命令net start查看服务状态。 -
检查事件日志:
使用“事件查看器”检查有故障的DC上的系统日志和应用程序日志,特别是与Active Directory和DNS相关的日志条目。
查找错误或警告消息,它们通常可以指引你找到问题的根源。 -
使用dcdiag工具:
在有故障的DC上运行dcdiag命令,检查域控制器的健康状态。
dcdiag会执行一系列测试,提供详细的诊断信息,帮助你识别和修复问题。 -
检查复制状态:
使用repadmin /replsummary命令检查DC之间的复制状态。
这可以帮助你确认是否是由于复制问题导致的DC不可用。 -
检查DNS:
如果DC同时是DNS服务器,检查DNS服务是否正常。
确保DC上配置的DNS指向自身或者其他可用的DNS服务器。 -
示例:
如果你发现某DC无法处理登录请求,首先检查网络连接,然后使用dcdiag和repadmin工具检查Active Directory服务和复制状态。如果发现DNS服务未运行,尝试重启服务并查看日志以找出原因。