域名系统DNS (Domain Name System)
DNS发展
- ARPANET 时代, 网络上只有数百台计算机, 一个 hosts 文件即可解决主机名和 IP 地址的对应问题
- 1983年, 开始采用分布式的 DNS
因特网的域名结构
- 因特网采用层次树状结构的命名方式, 每个主机或路由器都有一个层次结构的名字, 就是域名
- 域名由标号(label)序列构成, 各标号之间用
"."
隔开, 最右边的是顶级域名, 依次向左
域名规则:
- 每个标号不超过 63 字符
- 不区分大小写
- 不能出现除了
-
的其他标点 - 整个域名不能超过 255 字符
顶级域名
- 国家顶级域名 nTLD: cn, us
- 通用顶级域名 gTLD: org net com
- 基础结构域名 infrastructure domain:只有
arpa
一个, 也称为反向域名
域名服务器
分类
- 根域名服务器 (root name server)
- 由 13 个域名为 a.rootservers.net ~ m.rootservers.net 的服务器组成
- 其中每台根服务器都有多台机器分布在不同地点, 如
f.rootservers.net
分布在多个国家的 49 个地点
- 顶级域名服务器 (TLD 服务器)
- 管理该域名下注册的所有二级域名
- 权限域名服务器
- 负责一个区的域名服务
- 本地域名服务器
- 可以由ISP, 学校等局域网提供
- 如果本地域名服务器能够满足用户的解析请求, 就可以直接返回解析结果
- 根域名服务器 (root name server)
各级关系
- 数据由一个主域名服务器定期复制到多个辅助域名服务器中
解析过程
- 递归查询: 主机向本地域名的服务器查询方式 (本地域名服务器如果不能解析, 就去问根域名服务器, 最终会返回结果)
- 迭代查询: 本地域名服务器向根域名服务器 (根域名服务器如果不能解析, 会踢皮球, 直到有其他服务器能解析)
- 缓存
- 因为域名并不经常变化, 所以服务器采用缓存来提高查询速度, 减少开销
- 本地域名服务器和用户主机也会缓存最近访问的域名
文件传输协议 File Transfer Protocol
互联网传输文件要解决的差异性问题
- 存储格式
- 目录结构命名和文件命名的规定
- 文件存取命令
- 访问控制方法
基本原理
- 采用 21 端口
- 服务器和客户机之间维持两个并行的 TCP 连接: 控制连接和数据连接, 分别由控制进程和数据传送进程管理
缺点
- 对文件的修改需要整个读取文件, 再整个发送回去. 而 NFS (网络文件系统) 可以直接打开远程文件, 在特定位置读写数据
远程终端协议 TELNET
- 使用NVT(网络虚拟终端)格式, 通过TCP连接, 使用户可以登录到远程主机, 并将数据和命令通过网络, 在用户和服务器之间传输
- 采用
CR-LF
换行符