cen's blog cen's blog
首页
  • 编程文章

    • markdown使用
  • 学习笔记

    • C++学习
    • C++数据结构
    • MySQL
    • Linux
    • 网络编程
算法
  • Git
  • ProtoBuf
  • 分类
  • 标签
  • 归档
关于
GitHub (opens new window)

cen

十年饮冰,难凉热血
首页
  • 编程文章

    • markdown使用
  • 学习笔记

    • C++学习
    • C++数据结构
    • MySQL
    • Linux
    • 网络编程
算法
  • Git
  • ProtoBuf
  • 分类
  • 标签
  • 归档
关于
GitHub (opens new window)
  • 网络基础
  • 套接字和UDP
  • 套接字和TCP
  • 网络协议
  • HTTP协议
  • UDP协议
  • TCP协议
  • IP协议
  • 数据链路层
  • DNS、ICMP、NAT
    • DNS
    • ICMP
    • NAT 技术
      • NAT IP 转换
  • 网络
cen
2025-09-21
目录

DNS、ICMP、NAT

# DNS

DNS(域名系统)是一整套从域名映射到 IP 的系统。它的核心功能是:将人类易于记忆的域名(如 www.google.com)转换为机器用于路由的IP地址(如 142.251.42.206),互联网上的所有设备都通过 IP 地址来定位和通信。但 IP 地址(一串数字)难以记忆和传播。域名(字母和单词)则友好得多。DNS 的作用就是在二者之间建立映射关系。

# ICMP

CMP 是 TCP/IP 协议族的一个核心协议,工作在网络层(和 IP 协议一起)。它不用于传输用户数据,而是用于在网络设备之间传递控制、查询和错误消息。

ICMP 的主要功能包括:

  • 确认 IP 包是否成功到达目标地址。
  • 通知在发送过程中 IP 包丢弃的原因。
  • ICMP 只能搭配 IPv4 使用,如果是 IPv6 的情况下,需要使用 ICMPv6。

# NAT 技术

# NAT IP 转换

路由器是连接两个或多个网络的硬件设备,有分别是 LAN 口 IP 和 WAN 口 IP:

  • LAN 口(Local Area Network):对内,表示连接本地网络的端口
  • WAN 口(Wide Area Network):对外,表示连接广域网的端口

在局域网内, 有多个主机都访问同一个外网服务器, 那么对于服务器返回的数据中, 目的 IP 都是相同的。那么 NAT 路由器如何判定将这个数据包转发给哪个局域网的主机? 使用 IP+port 来建立这个关联关系。
如下图所示:

上次更新: 2025/11/11, 22:03:54
数据链路层

← 数据链路层

最近更新
01
动态规划
11-08
02
ProtoBuf
09-28
03
Git
09-28
更多文章>
Theme by Vdoing | Copyright © 2024-2025 京ICP备2020044002号-3 京公网安备11010502056119号
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式