跳到主要内容

网络协议面试题

OSI网络模型

基础概念

  1. 说一说网络七层模型(OSI)和四层模型(TCP/IP),区别是什么?
  2. 每一层的主要功能是什么?对应的协议有哪些?
  3. 路由器和交换机的工作原理是什么?分别工作在第几层?
  4. 集线器(Hub)、交换机(Switch)、路由器(Router)的区别?
  5. VLAN的作用是什么?工作在哪一层?

常用协议与端口

  1. 常用的协议有哪些?都是工作在第几层?
  2. 说一下这些服务的默认端口:HTTP、HTTPS、SSH、Telnet、FTP、DNS、SMTP、POP3、MySQL、Redis、MongoDB、Nginx、Tomcat、Elasticsearch
  3. 如何查看系统当前监听的端口?
  4. 如何查看某个端口被哪个进程占用?

TCP/IP协议族

TCP协议

  1. 详细说一说TCP三次握手的过程
  2. 为什么需要三次握手?两次行不行?四次呢?
  3. 详细说一说TCP四次挥手的过程
  4. 为什么需要四次挥手?TIME_WAIT状态的作用是什么?
  5. TCP如何实现可靠传输的?(序列号、确认应答、重传机制、流量控制、拥塞控制)
  6. TCP的滑动窗口机制是什么?
  7. TCP粘包问题是什么?如何解决?
  8. 如何测试TCP端口是否开放?

UDP协议

  1. TCP和UDP的区别是什么?
  2. UDP的特点和使用场景?
  3. 为什么视频直播一般使用UDP?
  4. 如何让UDP变得可靠?

IP协议

  1. IPv4和IPv6的区别?
  2. 公网IP和私网IP的区别?私网IP的范围?
  3. 子网掩码的作用是什么?
  4. 如何计算网络地址和广播地址?
  5. 什么是NAT?作用是什么?
  6. 如何测试一个IP是不是通的?

ICMP协议

  1. ping命令属于哪个协议?工作在第几层?
  2. ping的工作原理是什么?
  3. traceroute(tracert)的工作原理?
  4. ping不通的可能原因有哪些?

ARP协议

  1. 什么是ARP协议?作用是什么?
  2. ARP协议工作在哪一层?
  3. ARP的工作流程是什么?
  4. 什么是ARP欺骗?如何防范?
  5. 如何查看和清除ARP缓存?

HTTP协议

基础知识

  1. HTTP有哪些请求方法(Method)?各自的作用?
  2. GET和POST的区别是什么?
  3. 什么是URL和URI?它们的区别是什么?
  4. HTTP是无状态协议,如何实现有状态的会话?
  5. HTTP/1.0、HTTP/1.1、HTTP/2.0的主要区别?

请求与响应

  1. HTTP请求报文的格式是什么?包含哪些部分?
  2. HTTP响应报文的格式是什么?包含哪些部分?
  3. 常见的HTTP请求头有哪些?作用是什么?
  4. 常见的HTTP响应头有哪些?作用是什么?

状态码

  1. HTTP状态码的分类?
  2. 常见的HTTP状态码有哪些?分别代表什么意思?
    • 200、201、204
    • 301、302、304、307
    • 400、401、403、404、405
    • 500、502、503、504
  3. 301和302的区别?
  4. 401和403的区别?

Cookie与Session

  1. Cookie和Session的区别是什么?
  2. Session的实现原理?
  3. Token和Session的区别?
  4. 什么是JWT?优缺点是什么?

HTTPS协议

  1. HTTP和HTTPS的区别是什么?
  2. HTTPS如何实现加密的?
  3. 对称加密和非对称加密的区别?
  4. HTTPS的握手过程是怎样的?
  5. 什么是数字证书?CA的作用是什么?
  6. 什么是中间人攻击?HTTPS如何防范?

DNS服务

基础概念

  1. 什么是DNS?作用是什么?
  2. DNS解析的完整流程是什么?
  3. 递归查询和迭代查询的区别?
  4. DNS使用的端口号?使用TCP还是UDP?

DNS记录类型

  1. DNS常见的记录类型有哪些?
    • A记录
    • AAAA记录
    • CNAME记录
    • MX记录
    • TXT记录
    • NS记录
    • PTR记录
  2. A记录与CNAME记录的区别和使用场景?
  3. 什么是反向DNS解析?

DNS配置与优化

  1. Linux系统中DNS配置文件是哪个?
  2. 如何配置本地DNS解析?(/etc/hosts)
  3. 公司内部DNS如何配置?
  4. DNS缓存是什么?如何清除?
  5. 域名更换IP会出现什么问题?如何平滑迁移?

CDN技术

基础概念

  1. 什么是CDN?主要解决什么问题?
  2. CDN的工作原理是什么?
  3. CDN节点是如何选择的?(就近原则、负载均衡)
  4. 静态资源和动态资源的区别?CDN适合缓存哪些内容?

CDN接入与使用

  1. 新网站接入CDN的流程是什么?
  2. 接入CDN后,用户的完整访问流程是什么?
  3. CDN回源是什么意思?
  4. 如何判断请求是否命中CDN缓存?

CDN问题处理

  1. 使用CDN后遇到过什么问题?如何解决?
    • 缓存更新问题
    • SSL证书问题
    • 跨域问题
  2. 如何强制刷新CDN缓存?
  3. CDN防盗链如何实现?

防火墙技术

iptables基础

  1. iptables的工作机制是什么?
  2. iptables有几个表?几条链?各自的作用?
  3. iptables规则的匹配顺序是怎样的?
  4. 如何查看当前的iptables规则?
  5. 如何保存和恢复iptables规则?

iptables实践

  1. 你用iptables写过哪些规则?
  2. 如何使用iptables限制某个IP访问?
  3. 如何使用iptables开放指定端口?
  4. iptables如何做端口转发?
  5. 如何用iptables将80端口转发到另一台服务器的8080端口?
  6. 如何使用iptables进行流量限制?

WAF技术

  1. 什么是WAF?和传统防火墙的区别?
  2. WAF主要防护哪些攻击?
  3. 常见的WAF产品有哪些?
  4. WAF的部署模式有哪些?(透明模式、反向代理模式、镜像模式)
  5. 使用WAF需要注意什么问题?

网络故障排查

连通性测试

  1. 如何测试网络连通性?常用工具有哪些?
  2. ping不通的排查步骤?
  3. 如何测试端口连通性?(telnet、nc、nmap)
  4. 如何查看网络路由路径?(traceroute)

网站访问故障

  1. 用户反映网站打不开,请说一下详细的排查思路
  2. 网站访问慢的可能原因和排查方法?
  3. 如何使用抓包工具分析网络问题?(tcpdump、wireshark)
  4. 办公室同事说电脑上不了网,如何排查?

性能分析

  1. 如何查看网络连接状态?(netstat、ss)
  2. 如何统计各种连接状态的数量?
  3. 如何查看网络流量?(iftop、nethogs)
  4. TIME_WAIT过多会有什么影响?如何优化?

安全相关

网络攻击

  1. 常见的网络攻击方式有哪些?
  2. 什么是DDoS攻击?如何防护?
  3. 什么是SYN Flood攻击?原理和防护方法?
  4. 什么是CC攻击?如何识别和防护?
  5. 什么是中间人攻击?如何防范?

安全防护

  1. SSH协议的安全优化做过哪些?
  2. 如何防止端口扫描?
  3. 如何限制IP访问频率?
  4. 什么是VPN?工作原理是什么?
  5. 常用的网络安全工具有哪些?

更新时间:2025-01-30