一、计算机网络基础

1. 什么是计算机网络?

计算机网络是将多台计算机通过通信设备和线路连接起来,实现资源共享和信息传递的系统。

2. 计算机网络的分类

  • 按覆盖范围
    • 局域网(LAN):覆盖范围小,如家庭、办公室。
    • 城域网(MAN):覆盖一个城市。
    • 广域网(WAN):覆盖范围大,如互联网。
  • 按传输介质
    • 有线网络(如光纤、双绞线)。
    • 无线网络(如Wi-Fi、蓝牙)。
  • 按拓扑结构
    • 星型、总线型、环型、网状型等。

3. 网络协议

  • 定义:网络协议是计算机之间通信的规则和标准。
  • 常见协议
    • HTTP/HTTPS:用于网页浏览。
    • FTP:用于文件传输。
    • TCP/UDP:用于数据传输。
    • IP:用于网络寻址。

二、网络分层模型

1. OSI 七层模型

  • 物理层:传输比特流(如网线、光纤)。
  • 数据链路层:数据帧的传输(如MAC地址)。
  • 网络层:数据包的路由和转发(如IP地址)。
  • 传输层:端到端的通信(如TCP、UDP)。
  • 会话层:建立、管理和终止会话。
  • 表示层:数据格式转换(如加密、压缩)。
  • 应用层:提供网络服务(如HTTP、FTP)。

2. TCP/IP 四层模型

  • 网络接口层:对应OSI的物理层和数据链路层。
  • 网络层:对应OSI的网络层(如IP协议)。
  • 传输层:对应OSI的传输层(如TCP、UDP)。
  • 应用层:对应OSI的应用层、表示层和会话层。

三、核心协议与技术

1. IP 协议

  • 作用:为网络中的设备分配唯一地址(IP地址)。
  • IPv4 vs IPv6
    • IPv4:32位地址,如 192.168.1.1
    • IPv6:128位地址,如 2001:0db8:85a3::8a2e:0370:7334

2. TCP 协议

  • 特点
    • 面向连接:通信前需建立连接。
    • 可靠传输:通过确认、重传等机制保证数据不丢失。
    • 流量控制:通过滑动窗口机制控制发送速率。
  • 三次握手
    1. 客户端发送 SYN 报文。
    2. 服务器回复 SYN+ACK 报文。
    3. 客户端发送 ACK 报文。
  • 四次挥手
    1. 客户端发送 FIN 报文。
    2. 服务器回复 ACK 报文。
    3. 服务器发送 FIN 报文。
    4. 客户端回复 ACK 报文。

3. UDP 协议

  • 特点
    • 无连接:无需建立连接。
    • 不可靠传输:不保证数据不丢失。
    • 高效:适用于实时应用(如视频、语音)。

4. HTTP 协议

  • 特点
    • 无状态:每次请求独立,服务器不保存客户端状态。
    • 基于请求-响应模型。
  • HTTP vs HTTPS
    • HTTPS 是 HTTP 的安全版本,使用 SSL/TLS 加密。

5. DNS 协议

  • 作用:将域名解析为 IP 地址。
  • 过程
    1. 客户端向本地 DNS 服务器查询。
    2. 本地 DNS 服务器向根 DNS 服务器查询。
    3. 根 DNS 服务器返回顶级域名服务器地址。
    4. 本地 DNS 服务器向顶级域名服务器查询。
    5. 顶级域名服务器返回权威 DNS 服务器地址。
    6. 本地 DNS 服务器向权威 DNS 服务器查询。
    7. 权威 DNS 服务器返回 IP 地址。

四、网络设备

1. 路由器

  • 作用:连接不同网络,转发数据包。
  • 功能
    • 路由选择:根据路由表选择最佳路径。
    • 分组转发:将数据包发送到目标网络。

2. 交换机

  • 作用:连接同一网络中的设备,转发数据帧。
  • 功能
    • MAC 地址学习:记录设备的 MAC 地址。
    • 数据帧转发:根据 MAC 地址表转发数据。

3. 防火墙

  • 作用:保护网络安全,过滤非法流量。
  • 功能
    • 包过滤:根据规则允许或拒绝数据包。
    • 状态检测:跟踪连接状态,防止非法访问。

五、网络安全

1. 常见攻击

  • DDoS 攻击:通过大量请求耗尽服务器资源。
  • 中间人攻击:攻击者窃取或篡改通信数据。
  • SQL 注入:通过恶意 SQL 语句攻击数据库。

2. 防御措施

  • 加密:使用 SSL/TLS 加密通信数据。
  • 防火墙:过滤非法流量。
  • 入侵检测系统(IDS):监控网络流量,检测攻击行为。

六、网络性能优化

1. 带宽

  • 定义:网络传输数据的能力,单位为 bps(比特每秒)。
  • 优化:升级网络设备,增加带宽。

2. 延迟

  • 定义:数据从发送端到接收端的时间。
  • 优化:使用 CDN(内容分发网络),减少传输距离。

3. 吞吐量

  • 定义:单位时间内成功传输的数据量。
  • 优化:使用负载均衡,分散流量。

七、常见问题与解答

1. 什么是 NAT?

NAT(网络地址转换)将私有 IP 地址转换为公有 IP 地址,解决 IPv4 地址不足的问题。

2. 什么是 VPN?

VPN(虚拟专用网络)通过加密技术在公共网络上建立专用网络,保护数据安全。

3. 什么是 CDN?

CDN(内容分发网络)通过分布式服务器缓存内容,加速用户访问。


桥接模式(Bridged Mode)NAT 模式(Network Address Translation Mode) 是虚拟机(如 VMware、VirtualBox)或网络设备中常见的两种网络连接方式。它们的主要区别在于虚拟机如何与外部网络通信。以下是它们的详细对比:


一、桥接模式(Bridged Mode)

1. 工作原理

  • 在桥接模式下,虚拟机的网络接口直接连接到物理网络,就像一台独立的物理设备一样。
  • 虚拟机会从物理网络的 DHCP 服务器获取 IP 地址,与主机和其他设备处于同一网段。

2. 特点

  • IP 地址:虚拟机与主机在同一网段,拥有独立的 IP 地址。
  • 网络访问:虚拟机可以直接访问外部网络(如互联网),外部网络也可以直接访问虚拟机。
  • 网络拓扑:虚拟机和主机在同一个局域网中,地位平等。

3. 适用场景

  • 需要虚拟机与外部网络直接通信(如服务器测试)。
  • 需要虚拟机与局域网中的其他设备通信。

4. 示例

  • 主机 IP:192.168.1.100
  • 虚拟机 IP:192.168.1.101(与主机在同一网段)

二、NAT 模式(Network Address Translation Mode)

1. 工作原理

  • 在 NAT 模式下,虚拟机通过主机的网络接口与外部网络通信。
  • 主机会为虚拟机分配一个私有 IP 地址(如 192.168.x.x),并通过 NAT 技术将虚拟机的流量转发到外部网络。

2. 特点

  • IP 地址:虚拟机使用私有 IP 地址,与主机不在同一网段。
  • 网络访问:虚拟机可以访问外部网络,但外部网络无法直接访问虚拟机。
  • 网络拓扑:虚拟机位于主机的“内部网络”,主机充当虚拟机的网关。

3. 适用场景

  • 需要虚拟机访问外部网络,但不希望虚拟机暴露在外部网络中。
  • 适合开发、测试等场景。

4. 示例

  • 主机 IP:192.168.1.100
  • 虚拟机 IP:192.168.56.101(与主机不在同一网段)

三、桥接模式 vs NAT 模式

特性桥接模式NAT 模式
IP 地址与主机在同一网段,独立 IP 地址使用私有 IP 地址,与主机不在同一网段
网络访问虚拟机可以直接访问外部网络虚拟机通过主机访问外部网络
外部访问虚拟机外部网络可以直接访问虚拟机外部网络无法直接访问虚拟机
网络拓扑虚拟机与主机在同一局域网中虚拟机位于主机的“内部网络”
安全性较低(虚拟机暴露在外部网络中)较高(虚拟机隐藏在主机后)
适用场景服务器测试、局域网通信开发、测试、虚拟机访问外部网络

四、如何选择?

1. 选择桥接模式的情况

  • 需要虚拟机与局域网中的其他设备通信。
  • 需要虚拟机作为独立的网络设备(如服务器)。
  • 需要外部网络直接访问虚拟机。

2. 选择 NAT 模式的情况

  • 需要虚拟机访问外部网络,但不希望虚拟机暴露在外部网络中。
  • 在开发、测试环境中使用虚拟机。
  • 主机网络环境复杂,无法为虚拟机分配独立 IP 地址。

五、配置示例

1. 桥接模式配置(以 VMware 为例)

  1. 打开虚拟机设置,选择“网络适配器”。
  2. 选择“桥接模式”。
  3. 启动虚拟机,获取与主机同一网段的 IP 地址。

2. NAT 模式配置(以 VMware 为例)

  1. 打开虚拟机设置,选择“网络适配器”。
  2. 选择“NAT 模式”。
  3. 启动虚拟机,获取私有 IP 地址(如 192.168.56.x)。

六、总结

  • 桥接模式:虚拟机与主机在同一局域网中,适合需要直接与外部网络通信的场景。
  • NAT 模式:虚拟机通过主机访问外部网络,适合需要隐藏虚拟机的场景。