DNS与HTTP原理及配置
第一章 实验思路
学习了解DNS域名解析协议的原理及相关操作及对HTTP协议进行相关了解。
第二章 实验目的
- 掌握DNS域名解析协议
- 掌握DNS的查询方式
- 掌握HTTP协议
- 掌握HTTP的请求过程
第三章 实验步骤
3.1 DNS (domain name service)域名解析协议 口号:53
- 基于UDP(实际使用 ) ,udp(用户数据报协议)是面向无连接的,不安全的,全双工的协议
- 基于TCP ,tcp(传输控制协议):面向连接的、安全的、全双工的协议
- 端口号:16位 0-1023 DNS :53 ssh :22 telnet:23 http:80 https:443 等
注册才能使用的:1024- 49151
随机使用(私有):49152-65535
3.1.1 本地域名解析协议
linux: 配置文件 /etc/hosts,如
windows:配置文件 %WINDOWS%system32/drivers/etc/hosts
- 域名
三大类:组织域、国家域(.cn 中国)、反向域
top level domain tld 顶级域名: com 公司 edu教育 gov 政府 net 互联网络及信息中心 org 非营利组织 int 国际性组织 mil军事组织
3.1.2 DNS查询类型
递归查询:客户端只发一次请求,要求对方给出最终结果;返回的结果只有两种:查询成功或查询失败.;
迭代查询:客户端发出一次请求,对方如果没有授权回答,它返回一个其他名称服务器列表,客户端再向列表服务器发送请求,知道它得到最终结果;又称作重指引,返回的是最佳的查询点或者主机地址.;
只有一个根域,多个服务器
- 解析类型:
name-->ip 正向解析
ip-->name 反向解析
3.1.3 DNS服务器:负责解析域名到地址的服务器
主服务器:负责解析工作的服务器
从服务器:从主服务器复制解析数据库,监听
缓存DNS服务器:缓存DNS服务器:为了增加访问效率,当访问过某个网站并得到其IP后,会将其域名和IP缓存下来;
使用 dig -t A www.baidu.com
3.2 HTTP
http hyper text transfer protocol 超文本传输协议 ,基于tcp 端口号 80
html: 超文本标记语言,是一种编程语言
js JavaScript
css 层叠样式表
3.2.1 http协议版本:
HTTP 0.9 原型版本
HTTP 1.0第一个广泛使用的版本,MIME
HTTP 1.1 增强,在浏览器上比较通用
HTTP 2.0
3.2.2 HTTP 请求过程:
- 建立连接,连接请求
- 接收请求(web I/O)
- 处理请求,解析请求报文 method URL version
GET 从服务器获取一个资源
HEAD 只获取响应首部
POST 向服务器发送数据
PUT 上传资源到服务器
DELETE 删除指定资源
trace 追踪
options 对指定资源使用特定的请求方法
- 访问资源,获取请求包中的资源
DOCROOT /srv/local/
- 构建响应报文
- 发送响应报文
- 记录日志
用curl -v www.baidu.com 查看响应报文与请求报文的详细信息
3.2.3 http服务器程序
httpd(apache)
nginx
iis
tomcat
webshpere(IBM公司)
weblogic(Oracle)
3.2.4 httpd
配置信息 /etc/httpd/conf/httpd.conf
/etc/httpd/conf.d/*.conf
日志文件:/var/log/httpd
服务脚本:/etc/sysconfig/httpd
- 状态码
1xx 信息提示
2xx 成功
3xx 重定向
4xx 客户端错误 404请求
5xx 服务器错误
第四章 问题解决
无
第五章 实验思考和总结
DNS域名解析是把域名指向网站IP,人们通过注册的域名可以方便地访问到网站的一种服务。IP地址是网络上标识站点的数字地址,为了方便记忆,采用域名来代替IP地址标识站点地址。域名解析就是域名到IP地址的转换过程。域名的解析工作由DNS服务器完成。我们应该要掌握相应的操作流程。