DNS域名解析
IP地址
用于明确计算机在网络中的地址信息
IP地址主要分为四类
- A类地址 范围:0.0.0.0~126.255.255.255 主要分配给超大型网络公司使用
- B类地址 范围:128.0.0.0~191.255.255.255 主要分配给大型局域网公司使用
- C类地址 范围:192.0.0.0~255.255.255.255 主要分配中小型企业和个人使用
- D类地址:属于广播地址
- E类地址:属于系统保留地址
为什么没有127?127为本地回环地址网段,被电脑内部占用,用于测试使用
公网:公网IP独一无二,全球可通信
局域网:同一个局域网内可以互相通信,因为在同一个网段内
域名&ip
浏览网站的原理:
- 通过互联网找到对方的机器
- 从对方的机器中。找到对应的文件,下载到本地
- 通过浏览器渲染数据
IP地址比较隐晦,难以记忆;而域名更加便于人们记忆,可通过DNS服务器的key-value数据库,记录ip-域名的对应关系,从而将域名解析为IP地址,用于通信。
域名是用来识别主机名称和主机所属的组织机构的一种分层结构的名称。
- 例如:http://www.baidu.com(域名使用.连接)
- . 根域名
- com: 一级域名,表示这是一个企业域名。同级的还有 “net”(网络提供商),“org”(非盈利组织)等。
- baidu: 二级域名, 公司名。
- www: 只是一种习惯用法,并不是每个域名都支持。
- http:// : 用来连接主机名的协议。
DNS配置文件
- 本地的dns解析文件 /etc/hosts 这个文件是运维人员自定义的用于域名-ip强制解析(优先级高于/etc/resolv.conf)
- /etc/resolv.conf 该文件填入的是互联网dns服务器的地址
[root@server1 ~]
nameserver 114.114.114.114 <--dns服务器地址(默认)
nameserver 223.5.5.5 <--阿里云dns域名服务器地址
查看域名-ip的解析关系
- ping 可通过域名,查看对应的ip
- nslookup
[root@server1 ~]
[root@server1 ~]
Server: 114.114.114.114
Address: 114.114.114.114
Non-authoritative answer:
www.baidu.com canonical name = www.a.shifen.com.
Name: www.a.shifen.com
Address: 36.152.44.96
Name: www.a.shifen.com
Address: 36.152.44.95
[root@server1 ~]
> www.baidui.com
Server: 114.114.114.114
Address: 114.114.114.114
Non-authoritative answer:
Name: www.baidui.com
Address: 103.39.231.155
DNS劫持
客户端dns服务器地址被篡改,客户端通过域名访问网络,在dns服务器端有一个恶意的域名解析,这样就会给客户端返回一个错误的ip,造成客户端看到错误的网址内容。
DNS解析流程
-
-
浏览器缓存 -
系统缓存,查找hosts文件 -
路由器缓存! -
ISP DNS缓存 -
根域名服务器 -
顶级域名服务器 -
主机名服务器 -
保存结果至缓存 -
当你在浏览器输入某个域名之后会发生什么?
-
浏览器发起域名解析,首先查询浏览器缓存,如果没有,就查询hosts文件,如果也没有就提出域名解析请求 -
客户机提出域名解析请求,并将该请求发送给本地的域名服务器。 -
当本地的域名服务器收到请求后,就先查询本地的缓存,如果有该纪录项,则本地的域名服务器就直接把查询的结果返回。 -
如果本地的缓存中没有该纪录,则本地域名服务器就直接把请求发给根域名服务器,然后根域名服务器再返回给本地域名服务器一个所查询域(根的子域)的主域名服务器的地址。 -
本地服务器再向上一步返回的域名服务器发送请求,然后接受请求的服务器查询自己的缓存,如果没有该纪录,则返回相关的下级的域名服务器的地址。 -
重复第四步,直到找到正确的纪录。 -
本地域名服务器把返回的结果保存到缓存,以备下一次使用,同时还将结果返回给客户机
域名解析记录
dig -x
dig [a ns mx ] 查询指定的记录类型
扩展:
DNS服务器搭建
VMware上搭建
[root@server1 ~]
修改主配置文件
[root@server1 ~]
resolv-file=/etc/resolv.dnsmasq.conf <--指定上游dns服务器地址
address=/baidu.com/192.168.226.10
address=/taobao.com/192.168.226.10 <--自定义域名解析到某个IP地址上
listen-address=192.168.226.10 <--指定dnsmasq的监听地址(可填127.0.0.1)
addn-hosts=/etc/dnsmasq.hosts <--指定本地域名配置文件(需要自定义域名激励)
log-queries <--指定dns查询的日志
conf-dir=/etc/dnsmasq.d
conf-dir=/etc/dnsmasq.d,.bak
conf-dir=/etc/dnsmasq.d/,*.conf <--包含目录的语法
conf-dir=/etc/dnsmasq.d,.rpmnew,.rpmsave,.rpmorig
添加相应的子配置文件
[root@server1 ~]
111.222.111.222 www.gxy.com
[root@server1 ~]
nameserver 119.29.29.29 <--腾讯
nameserver 223.5.5.5 <--阿里
启动dnamasq服务
[root@server1 ~]
[root@server1 ~]
修改本地dns客户端配置文件,指定自定义的dnsmasq服务器地址
[root@server1 ~]
nameserver 192.168.226.10 <--可填127.0.0.1
测试
[root@server1 ~]
> www.pythonav.cn
Server: 192.168.226.10
Address: 192.168.226.10
Non-authoritative answer:
Name: www.pythonav.cn
Address: 123.206.16.61
[root@server1 ~]
Server: 192.168.226.10
Address: 192.168.226.10
Name: www.gxy.com
Address: 111.222.111.222
www.gxy.com canonical name = HDRedirect-LB7-5a03e1c2772e1c9c.elb.us-east-1.amazonaws.com.
cicso上搭建
R1-R3初始化
no
enable
conf t
no cdp run
interface range e0/0 -3
duplex full
no ip do lo
line co 0
exec-t 0
logg sy
ho R
配置ip地址,给R1配置一个环回接口地址1.1.1.1,给R2配置默认路由R1,给R3配置静态路由(保证路由互通)
R1(config)
R1(config-if)
R1(config-if)
R1(config-if)
R1(config)
R1(config-if)
R1(config-if)
R1(config-if)
R1(config)
R1(config-if)
R2(config)
R2(config-if)
R2(config-if)
R2(config-if)
R2(config)
R3(config)
R3(config-if)
R3(config-if)
R3(config-if)
R3(config)
在R1上配置dns
R1(config)
R1(config)
R1(config)
在R2上指定dns服务器地址为1.1.1.1
R2(config)
R2(config)
测试
R2(config)
Translating "www.r3.com"...domain server (1.1.1.1) [OK]
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.13.3, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/1 ms
|