ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

Linux---计算机网络常见面试题

Linux---计算机网络常见面试题 一、HTTP和HTTPS有什么区别端口不同HTTP80HTTPS443安全程度HTTP明文传输抓包能直接看到账号、密码容易被窃听、篡改。HTTPSHTTP TLS/SSL 加密传输数据加密第三方无法窃听、篡改。证书HTTP不需要证书。HTTPS需要 CA 签发的数字证书用来验证服务器身份防止伪装网站。性能HTTPS 建立连接需要额外握手流程相比 HTTP会有少量性能开销。工作层次HTTP 工作在应用层HTTPS HTTP应用层 TLS会话 / 表示层HTTPS 就是加密版的 HTTP解决明文传输的安全漏洞。✅面试拓展常问QHTTPS 能防什么不能防什么能防中间人窃听、数据篡改、钓鱼伪装服务器不能防页面本身的恶意代码、用户误点钓鱼链接二、TCP和UDP的区别是什么应用场景呢对比维度TCP传输控制协议UDP用户数据报协议连接特性面向连接通信前先三次握手建立连接无连接直接发数据包不用建立连接可靠性可靠传输确认应答、重传、防丢包、数据有序不可靠传输无确认机制可能丢包、乱序控制机制拥塞控制、流量控制没有任何控制机制头部开销头部 20 字节较大头部仅 8 字节开销极小适用思路宁可慢不能丢宁可少量丢包追求低延迟应用场景TCP 适用不能丢失数据 网页 HTTP/HTTPS、SSH 远程连接、FTP 文件下载、数据库连接、邮件 SMTP/POP3UDP 适用允许少量丢包追求实时性 DNS 查询、直播、语音通话、网络游戏、视频会议、TFTPTCP 面向连接、可靠有序适合文件传输、网页访问UDP 无连接、开销小、实时性高适合音视频、游戏、DNS。✅面试拓展常问为什么直播不用 TCP如果网络卡顿TCP 会不断重传丢失数据包造成画面延迟越来越高UDP 丢少量包直接丢弃保证画面实时流畅。三、设备上线后部分网站可访问、部分不可访问如何排查关键结论基础网络连通正常排除整机完全断网、网卡故障。故障大概率和DNS、路由、MTU、防火墙策略、域名 / IP 封禁、代理相关。1、优先排查【DNS 解析问题】最高发 现象打不开的网站域名解析失败、解析出错误 IP nslookup 域名 dig 域名 如果解析失败 → DNS 服务器故障 / 配置错误更换公共 DNS114.114.114.114、8.8.8.8 如果解析 IP 不对 → DNS 被劫持 测试小技巧直接用目标网站 IP 访问 IP 能打开、域名打不开 确定是 DNS 问题 2、连通性测试区分能不能到达目标服务器 ping 目标IP telnet 目标IP 目标端口80/443 ping 不通、端口不通路由 / 防火墙拦截问题 ping 通、端口不通对端服务器防火墙拦截或者运营商封禁端口 3. 检查路由 能访问的网站路由可达无法访问的网段缺少回程路由 / 静态路由错误 查看路由表route -n / ip route 跨运营商场景经常出现路由不通。 4. 防火墙 / ACL 策略非常常见 本机防火墙、网关防火墙、运营商防火墙做了访问控制 放行一部分 IP拦截另一部分网段 / 端口443、80 等 5. MTU 值不匹配容易遗忘的坑 数据包过大无法分片大包丢包小数据包正常。 部分网站数据包小可以正常访问大型网页请求大包直接失败。 解决调整接口 MTU常见 1500、1480、1492 6. 代理、NAT 问题 设备开启 NAT会话数限制、端口耗尽 代理配置异常只转发部分流量。 7. 运营商链路限制 部分网站服务器在境外运营商封禁跨境流量 或者运营商骨干网部分网段故障。四、计算机网络7层是啥7. 应用层 →6. 表示层 →5. 会话层 →4. 传输层 →3. 网络层 →2. 数据链路层 →1. 物理层五、查看80端口占用命令lsof -i :80lsoflist open files列出系统打开的文件在 Linux 中网络连接也被当作文件。-i只筛选网络相关连接:80过滤目标端口为 80这条命令可以直接查出占用 80 端口的进程 PID 和程序名称。ss -tulpn | grep :80ss替代 netstat 的套接字查看工具-tTCP、-uUDP、-l监听端口、-p显示进程、-n不解析域名grep :80过滤 80 端口。六、HTTP常见状态码以及含义HTTP响应头字段200 成功3xx 跳转4xx 用户问题5xx 服务器问题状态码含义通俗解释200OK请求成功正常返回数据301Moved Permanently永久重定向浏览器缓存新地址302Found临时重定向不缓存304Not Modified资源未修改使用本地缓存403Forbidden服务器收到请求但权限不足禁止访问404Not Found请求的资源不存在405Method Not Allowed请求方式不允许如 POST 接口只用 GET 访问500Internal Server Error服务器代码内部异常502Bad Gateway网关错误Nginx 无法连接后端服务503Service Unavailable服务暂时不可用超载、停机维护响应头字段作用说明Content-Type告知客户端响应数据的类型如application/json、text/htmlServer标明服务器软件Nginx/ApacheSet-Cookie服务器下发 Cookie浏览器后续请求自动携带Cache-Control设置缓存策略控制浏览器缓存行为Location搭配 301/302 重定向提供跳转 URLConnectionkeep-alive保持长连接close关闭连接ETag资源唯一标识用于协商缓存触发 304Last-Modified资源最后修改时间用于协商缓存Access-Control-Allow-Origin跨域配置允许指定域名访问资源Date服务器生成响应的时间七、如果http返回200是什么意思403404呢 例如出现404和502是因为什么原因200请求成功服务器正常返回数据。403服务器收到请求但访问权限不足禁止访问。404访问的资源不存在地址写错、资源删除。502网关错误Nginx 无法连通后端应用程序后端服务宕机或未启动。八、介绍下TCP三次握手四次挥手为什么挥手是4次三次不行吗一、三次握手建立连接前提TCP 是面向连接通信前必须建好连接。第一次握手客户端 → 服务端发送SYN客户端请求我想和你建立连接。第二次握手服务端 → 客户端发送SYNACK两层含义①收到你的连接请求ACK②我也同意建立连接SYN。第三次握手客户端 → 服务端发送ACK客户端确认收到你的同意连接正式建立。核心SYN 和 ACK 可以合并发送所以只需要 3 次。二、四次挥手断开连接TCP 连接是全双工两端各自独立关闭发送通道。第一次挥手客户端 → 服务端FIN客户端我不再发送数据了。第二次挥手服务端 → 客户端ACK服务端收到关闭请求我知道你不发数据了但我还有剩余数据可以继续发给你。第三次挥手服务端 → 客户端FIN服务端我的数据全部发送完毕我也要关闭发送通道。第四次挥手客户端 → 服务端ACK客户端确认收到连接彻底关闭。三、为什么挥手不能合并成 3 次建立连接的时候服务端收到 SYN立刻就能同步发送 SYNACK两个标志可以合并成一个报文所以第二次握手是一包。断开连接不一样 服务端收到客户端的 FIN 后不能马上发送 FIN 此时服务端可能还存在未传输完成的数据需要先回复 ACK等所有数据发送完毕才能发送 FIN。 ACK 和 FIN 无法合并到同一个数据包因此必须分成两次报文最少需要四次挥手。九、如果说现在我一个主机要访问另一个主机ip是怎么获取的若使用域名访问主机向 DNS 服务器发送解析请求DNS 查询并返回域名对应的 IP 地址若直接 IP 访问无需获取直接使用填写的 IP获取 IP 后通过 ARP 协议由目标 IP 得到 MAC 地址完成二层通信。域名访问依靠 DNS 服务器解析得到 IP直接 IP 访问则无需解析得到 IP 后通过 ARP 获取 MAC 地址。十、TCP和UDP有什么不同对比项TCPUDP连接特性面向连接通信前三次握手建立连接无连接直接发送数据报传输可靠性可靠传输有确认、重传、流量控制、拥塞控制不丢包、不乱序不可靠传输无确认机制可能丢包、乱序头部开销头部 20 字节开销大头部仅 8 字节开销小有序性数据按顺序到达不保证顺序适用思想优先保证数据完整牺牲部分实时性优先低延迟允许少量丢包应用场景✅ TCP网页、文件传输、SSH 远程登录、数据库连接不能丢数据✅ UDPDNS、直播、语音通话、网络游戏、视频会议追求实时性十一、ping百度丢包率高怎么办先 ping 网关网关也丢包内网问题。检查网线、交换机、无线干扰、网卡故障、本机后台大量下载占带宽。网关正常、ping 外网丢包问题出在运营商外网链路。区分是所有外网都丢包还是只丢百度测试 ping 8.8.8.8 等其他公网地址。 只有百度丢包目标服务器链路问题全部外网丢包本地上行 / 运营商线路故障。检查本机资源是否后台下载、视频、进程跑满带宽造成网络拥堵。排查 MTUMTU 设置过大大包分片失败引发隐性丢包适当调小 MTU 测试。无线网络额外排查WiFi 距离远、信道干扰优先换成网线测试排除无线干扰。测试 DNS更换公共 DNS排除 DNS 层面引发的访问异常注意ping 域名丢包和 ping IP 丢包分开看服务器场景补充查看防火墙策略、服务器 CPU / 带宽负载是否跑满。✅考场极简简答版本ping 网关区分故障在内网还是外网检测本机带宽是否被占满无线环境更换网线排除干扰测试多个外部 IP判断是否单一目标服务器故障调整网卡 MTU 值解决数据包分片丢包外网持续丢包联系运营商排查骨干链路十二、主机通过域名怎么访问网页的过程DNS 域名解析将域名解析为服务器 IP 地址客户端与服务器通过三次握手建立 TCP 连接HTTPS 站点完成 TLS 握手建立加密通道浏览器发送 HTTP 请求Web 服务器处理请求返回网页资源浏览器接收数据渲染展示页面四次挥手释放 TCP 连接十三、网站无法访问有什么原因检查 DNS 解析使用ping 域名、nslookup 测试。无法解析 → 定位 DNS / 域名问题。连通性测试ping 服务器IPIP 不通服务器宕机或者链路拦截IP 正常继续下一步。端口连通测试使用 telnet/curl 测试 80 (HTTP)、443 (HTTPS) 端口。端口不通防火墙 / 安全组拦截、Web 服务未启动。访问观察 HTTP 状态码4xx客户端 / 资源路径问题5xx服务器后端程序异常。服务器内部排查查看 Web 服务运行状态、服务器负载、程序日志、SSL 证书有效性。
返回列表