1. 内网主机访问网址的全流程解析
当一台新主机接入内网环境时,访问外部网址的过程实际上是一次精密的网络协议协作演练。这个过程涉及DHCP、ARP、DNS、NAT等多个核心网络协议,每个环节都有其特定的技术逻辑和设计考量。
1.1 初始网络配置阶段
主机刚接入网络时,首先需要通过DHCP(动态主机配置协议)获取基本网络参数。DHCP采用UDP协议,客户端使用68端口,服务器使用67端口。这个过程包含四个关键步骤:
- DHCP Discover:主机广播发送发现报文(目标IP 255.255.255.255)
- DHCP Offer:服务器回应可提供的IP地址等配置信息
- DHCP Request:主机选择并请求特定配置
- DHCP Ack:服务器确认分配,完成配置
实际环境中,DHCP服务器通常会配置地址租期(默认8天),主机在租期过半时会尝试续租。这个设计避免了IP地址频繁变更导致的连接问题。
获得的配置包括:
- 主机IP地址(如192.168.1.100)
- 子网掩码(如255.255.255.0)
- 默认网关IP(如192.168.1.1)
- DNS服务器IP(如8.8.8.8)
1.2 DNS解析的关键细节
当用户在浏览器输入网址(如www.example.com)后,DNS解析过程开始:
- 本地缓存检查:浏览器→系统DNS缓存→hosts文件
- ARP寻址:若需查询外部DNS,主机先通过ARP获取DNS服务器MAC地址
- ARP请求广播:"谁有IP X.X.X.X的MAC地址?"
- 目标设备单播回应:"IP X.X.X.X的MAC是XX:XX:XX:XX:XX:XX"
- DNS查询封装:
- 源MAC:主机MAC
- 目的MAC:DNS服务器MAC
- 源IP:主机IP(192.168.1.100)
- 目的IP:DNS服务器IP(8.8.8.8)
- 载荷:DNS查询报文(UDP 53端口)
企业内网中,DNS查询可能先经过本地DNS服务器,若缓存未命中才会递归查询外部DNS。这种分层设计显著减轻了外部DNS负载。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 网络位置判断与路由选择
获取到目标网站
