网络协议系列文章
网络协议(一):基本概念、计算机之间的连接方式
网络协议(二):MAC地址、IP地址、子网掩码、子网和超网
网络协议(三):路由器原理及数据包传输过程
网络协议(四):网络分类、ISP、上网方式、公网私网、NAT
网络协议(五):网络互联模型、物理层、数据链路层
网络协议(六):网络层
网络协议(七):传输层-UDP
网络协议(八):传输层-TCP(三次握手、四次挥手原理)
网络协议(九):应用层(域名、DNS、DHCP)
目录
- 一、域名( Domain Name)
- 二、DNS
- 三、DHCP
网络分层对应的通信协议和数据名称
应用层的常见协议
- 超文本传输:HTTP、HTTPS
- 文件传输:FTP
- 电子邮件:SMTP、POP3、IMAP
- 动态主机配置:DHCP
- 域名系统:DNS
一、域名( Domain Name)
- 由于IP地址不方便记忆,并且不能表达组织的名称和性质,人们设计出了域名(比如baidu.com)
- 但实际上,为了能够访问到具体的主机,最终还是得知道目标主机的IP地址
- 域名申请注册:https://wanwang.aliyun.com/
- 根据级别不同,域名可以分为
- 顶级域名(Top-level Domain,简称 TLD)
- 二级域名
- 三级域名
- …
那干脆全程直接用域名,不用IP地址?
- IP地址固定4个字节,域名随随便便都至少10几个字节,这无疑会增加路由器的负担,浪费流量
顶级域名的分类
- 通用顶级域名(General Top-level Domain,简称 gTLD)
- .com(公司),.net(网络机构),.org(组织机构),.edu(教育)
- .gov(政府部门),.int(国际组织)等
- 国家及地区顶级域名(Country Code Top-level Domain,简称 ccTLD)
- .cn(中国)、.jp(日本)、.uk(英国)
- 新通用顶级域名(New Generic Top-level Domain,简称 New gTLD)
- .vip、.xyz、.top、.club、.shop 等
二级域名
- 二级域名是指顶级域名之下的域名
- 在通用顶级域名下,它一般指域名注册人的名称,例如google、baidu、microsoft等
- 在国家及地区顶级域名下,它一般指注册类别的,例如com、edu、gov、net等
二、DNS
- DNS的全称是:Domain Name System,译为:域名系统
- 利用DNS协议,可以将 域名(比如baidu.com) 解析成对应的 IP地址(比如220.181.38.148)
- DNS可以基于UDP协议,也可以基于TCP协议,服务器占用53端口
DNS服务器
- 客户端首先会访问最近的一台DNS服务器(也就是客户端自己配置的DNS服务器)
- 所有的DNS服务器都记录了DNS根域名服务器的IP地址
- 上级DNS服务器记录了下一级DNS服务器的IP地址
- 全球一共 13 台IPv4的DNS根域名服务器、25 台IPv6的DNS根域名服务器
DNS常用命令
- ipconfig /displaydns 查看DNS缓存记录
- ipconfig /flushdns 清空DNS缓存记录
- ping 域名 ping 域名会自动解析DNS
- nslookup 域名 主动解析DNS
三、DHCP
IP地址的分配
IP地址按照分配方式,可以分为:静态IP地址、动态IP地址
- 静态IP地址
- 手动设置
- 适用场景:不怎么挪动的台式机(比如学校机房中的台式机)、服务器等
- 动态IP地址
- 从DHCP服务器自动获取IP地址
- 适用场景:移动设备、无线设备等
DHCP协议
- DHCP(Dynamic Host Configuration Protocol),译为:动态主机配置协议
- DHCP协议基于UDP协议,客户端是68端口,服务器是67端口
- DHCP服务器会从IP地址池中,挑选一个IP地址“出租“给客户端一段时间,时间到期就回收
- 平时家里上网的路由器就可以充当DHCP服务器
分配IP的四个阶段
- DISCOVER:发现服务器
- 发广播包(源IP是0.0.0.0,目标IP是255.255.255.255,目标MAC是FF:FF:FF:FF:FF:FF)
- OFFER:提供租约
- 服务器返回可以租用的IP地址,以及租用期限、子网掩码、网关、DNS等信息
- 注意:这里可能会有多个服务器提供租约
- REQUEST:选择IP地址
- 客户端选择一个OFFER,发送广播包进行回应
- ACKNOWLEDGE:确认
- 被选中的服务器发送ACK数据包给客户端
- 至此,IP地址分配完毕
DHCP 细节
- DHCP服务器可以跨网段分配IP地址么?(DHCP服务器、客户端不在同一个网段)
- 可以借助 DHCP中继代理(DHCP Relay Agent) 实现跨网段分配IP地址
- 自动续约
- 客户端会在租期不足的时候,自动向DHCP服务器发送REQUEST信息申请续约
- 常用命令
- ipconfig /all:可以看到DHCP相关的详细信息,比如租约过期时间、DHCP服务器地址等
- ipconfig /release:释放租约
- ipconfig /renew:重新申请IP地址、申请续约(延长租期)