从OSI到TCP/IP:Linux网络架构深度解析

发布于:2025-07-18 ⋅ 阅读:(18) ⋅ 点赞:(0)

一、网络概述

1.网络本质

       所谓网络 ,就是通过物理介质(网线、光纤、WiFi)连接设备,实现设备间的通信和数据交换。

2.核心要素

  • 节点:计算机、服务器、路由器、交换机等设备
  • 链路:连接节点的物理通道
  • 协议:控制通信的规则集(TCP/IP, HTTP等)

3.网络类型

  • LAN(局域网):办公室、家庭网络
  • WAN(广域网):跨地域网络(互联网)
  • MAN(城域网):城市范围网络

二、网络层次模型(OSI 7层模型)

1.概述

       OSI是Open System Interconnection的缩写,意为开放式系统互联。国际标准化组织(ISO)制定了OSI模型,该模型定义了不同计算机互联的标准,是设计和描述计算机网络通信的基本框架。

       OSI模型把网络通信的工作分为7层,分别是物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。

2.七层模型详解

关键记忆法:物数网传会表应

层次 名称 核心功能 典型协议/设备 数据传输单位
1 物理层 比特流传输、物理接口定义、电气特性 RJ45, IEEE 802.11, 集线器 比特(Bit)
2 数据链路层 物理寻址(MAC)、帧同步、差错控制、流量控制 Ethernet, PPP, 交换机 帧(Frame)
3 网络层 逻辑寻址、路由选择、分组转发 IP, ICMP, OSPF, 路由器 包(Packet)
4 传输层 端到端连接管理、流量控制、错误恢复 TCP, UDP, SCTP 段(Segment)
5 会话层 建立、管理和终止应用程序间的会话 NetBIOS, RPC, SIP 数据(Data)
6 表示层 数据格式转换、加密解密、压缩解压 SSL, TLS, JPEG, MPEG 数据(Data)
7 应用层 提供用户接口和网络服务 HTTP, FTP, SMTP, DNS 数据(Data)

三、TCP/IP模型(4层架构详解)

TCP/IP层级 对应OSI层 核心协议 主要功能
应用层 5-7层 HTTP, FTP, DNS, SMTP 应用程序通信接口
传输层 4层 TCP, UDP 端到端连接管理
网络层 3层 IP, ICMP, ARP 寻址和路由
网络接口层 1-2层 Ethernet, WiFi, PPP 物理传输和链路控制

四、DNS访问流程

1.流程图

2.解析流程

第一步: 浏览器访问www.baidu.com
第二步: 查找本地Hosts文件 如果有对应关系则返回IP 
第三步: 如果Hosts文件没有则会请求本地的DNS(LDNS)中是否有域名的对应关系 有返回IP 
第四步: 如果没有则LDNS请求根服务器问 www.baidu.com的IP地址 根存储的是顶级域名的IP地址,所以根会将.com返回给LDNS
第五步: LDNS收到后重新请求.com服务器问www.baidu.com的IP地址 顶级域存储的是权威域名IP地址,所以会返回权威域名服务器的对应IP给LDNS
第六步: LDNS收到后重新请求权威域名服务器,权威域名服务器就是我们自己配置的A记录的服务器 直接将A记录返回给LDNS
第七步: LDNS收到后自己缓存一份 然后在返回给浏览器
最后:   浏览器和服务器的IP地址 建立三次握手

五、TCP三次握手

1.流程图

2.具体流程

01 SYN (Synchronize)

     A向B发送SYN=1(告诉B我想和你建立连接) 发送seq=x(表示第一个数据包)

     标志位SYN=1,ACK=0

02 SYN-ACK:

     B收到信息 B向A发送 ACK=1(确认收到) SYN=1(我也想和你建立连接) seq=y(我给你的第一个包),Ack=x+1(表示下次你应该给我发送第二个数据包)

     标志位SYN=1,ACK=1

03 ACK: 

     A收到信息 A向B发送 ACK=1(确认收到) seq=x+1(给B的第二个数据包)下次你应该给我发第二个数据包 Ack=y+1

    标志位SYN=0,ACK=1

注意:

  • SYN:建立连接

  • ACK:确认有效

  • FIN:关闭连接

  • RST:强制断开

六、TCP四次挥手

第一步: A向B发送FIN请求断开       本国向苍姐姐我想跟你分手
第二步: B向A发送ACK确认收到信息   苍姐姐说收到信息了 你等我收拾下衣服
第三步: B向A发送FIN请求断开       苍姐姐说收拾完了 可以分手了
第四步: A向B发送ACK确认断开       本国说分手吧

七、网络命令大全

1.诊断与监控命令

命令 功能描述 高级用法示例
ping 测试网络连通性和延迟 ping -i 0.1 -s 1400 -c 100 example.com
traceroute 路径追踪 traceroute -T -p 443 google.com
mtr 实时路径诊断 mtr --report -c 10 cloudflare.com
iftop 实时带宽监控 iftop -nNP -i eth0
nload 网络流量可视化 nload -m -u M eth0

2.端口与连接分析

命令 功能描述 高级用法示例
nc 网络瑞士军刀 nc -zv 192.168.1.1 20-80
nmap 端口扫描与服务探测 nmap -sV -O -T4 192.168.1.0/24
telnet 远程登录与服务测试 telnet smtp.example.com 25
netstat 网络连接统计 netstat -tunap | grep ESTABLISHED
ss 现代套接字统计 ss -t -o state established '( dport = :443 )'

3.配置与排错

命令 功能描述 高级用法示例
ip 全能网络配置 ip addr add 192.168.1.100/24 dev eth0
ifconfig 接口配置(逐步淘汰) ifconfig eth0 mtu 9000
route 路由表管理 route add -net 10.0.0.0 netmask 255.0.0.0 gw 192.168.1.1
dig DNS诊断 dig +trace +nocmd example.com
tcpdump 网络抓包 tcpdump -i any -nn 'port 80 and host 192.168.1.100'


网站公告

今日签到

点亮在社区的每一天
去签到