关于DNS
Domain Name System 域名解析 FQDN ßàIP
FQDN:Full Qualified Domain Name
gov edu net com org mil int顶级
在互联网上递归和迭代是同时出现的 迭代是自己去找 一家家的找
DNS 域和区域
资源记录的类型(Resource Record Type) SOA NS A PTR MX CNAME TXT
A实现把主机名转换成ip地址 PTR实现把ip地址转换成主机名
MX 邮件交换器:正向解析需要,反向不需要 CNAME正式名称:前面是别名,后面是正式名称
TXT表明当前域的拥有者的身份信息
SOA 起始授权 Start Of Authority
DNS监听53号端口提供服务 同时监听udp和tcp
平时解析通过udp来实现 区域传送通过tcp端口来实现
DNS服务器类型:主域名服务器 辅助域名服务器 缓存域名服务器 转发器
提供DNS服务器功能的软件
Bind在读取域名很多的情况下运行效率很高 但启动很慢
PowerDNS 同等情况,启动快,但效率不高,提供的功能并不是很多
MyDNS 停止维护了 下一代是MyDNSng 提供实时更新的功能,但同等情况下效率低
bind就是个软件包 启动后进程名就叫named named提供DNS服务
域名解析就是针对于数据库 把请求的域名或者ip进行转换解析
database : zone file 域名àip reverse zone file ipà域名
根文件file : root dns server
装bind 数据文件在/var/named 配置文件在/etc/init.d/named 主配置文件/etc/named.conf
rndc是bind的远程控制器 可以控制dns服务器上的配置 监听953端口 是个进程
数据文件/vat/named有几个默认文件 named.ca localhost.zone named.local
dig -t NS 查找类型为NS的位置 查看保存在/var/named/named.ca
localhost.zone 记录了资源 正向的解析 格式为:name TTL IN RECORD_TYPE value 第一条记录必须是SOA
例子: $TTL 86400表示定义TTL值,以后省略
@ IN SOA localhost. admin.localhost. (
2011012801
1H
10M
7D
1D)
@ IN NS localhost.
localhost. IN A 127.0.0.1
named.local是反向解析 ip解析成域名 格式与上个相同 例子:
@ IN SOA localhost. admin.localhost. (
2011012801
1H
10M
7D
1D)
@ IN NS localhost.
1 IN PTR localhost.
要把/etc/named.conf /var/named/* -R 的属组全改为named
service named configtest 检查named有没有什么语法错误
编辑/etc/named.conf 格式例子:
options {
direectory “/var/named”;
} ;
zone “.” IN {
type hint;
file “named.ca”;
};
zone “localhost” IN {
type master ;
file “localhost.zone”;
};
zone “0.0.127.in-addr.arpa” IN {
type master
file “named.local”;
};
service named start 启动服务
DNS区域传送 完全区域传送 增量型区域传送
dig -t 加类型(域名) , dig -x 加ip 查找某个资源记录所对应的结果
rndc
借助rndc来清理缓存 DNS自身不能清理缓存 用rndc flush 清空缓存
但这时候dns是不接受rndc的控制的
rndc进程有个主配置文件 /etc/endc.key 但不重要 重要的是/etc/rndc.conf
rndc -confgen > /etc/rndc.conf
rndc status 显示当前rndc的状态 rndc stop 停止rndc的服务 rndc reload 重读配置文件
dig -t axfr 完全区域传送
allow-transfer 允许传送 后跟{ none;}说明不允许任何人传送
子域授权
查询日志写到/etc/named.conf中的options中 写querylog 后面跟数字 1
dig txt chaos wersion.bind @127.0.0.1 查询软件的版本号 查谁的后面地址写上谁的地址
version “None of your bnsiness” 写在/etc/named.conf中的options中 屏蔽对方查询你的版本号
listen on 后面指定端口号 指定匹配的地址(打算监听的)写在/etc/named.conf中的options中
表示监听哪个端口及地址
allow-recursion 表示递归 后跟网段地址
主配置文件也支持acl 配置和在squid中的方法相同 先声明 后在options中使用
allow-query 定义允许谁查询
host -t A 主机域名
DHCP: 动态主机配置协议,基于UDP实现 前身是Bootp,引导协议 主要实现无盘工作站
DHCP动态分配ip地址 当到期,关机,手动释放时,ip地址将被归还.
主配置文件/etc/dhcpd.conf 在/etc/sysconfig下有dhcpd,是dhcp启动或关闭时读取的文件
启动dhcp时运行的脚本/etc/init.d/dhcpd
主配置文件需要手动配置 可以拷贝 拷贝usr/share/doc/dhcp-3.0.5下的dhcpd.conf.sample到/etc下并重命名为dhcpd.conf
编辑/etc/sysconfig/dhcpd文件可以指定要监听的网卡 例如DHCPDARGS=eth0
dhclient 启动的进程 dhclient 后跟网卡 -d 显示过程 ctrl +c 取消显示过程
DHCP客户端监听udp的68端口 DHCP服务端监听67端口
在/var/lib/dhcpd目录下有两个文件 记录着分配信息 是dhcp数据库文件 所有主机所获得的地址信息
定义获取ip的范围 在配置文件中用class定义 再用pool调用
格式: class “vmware” {
match if 。。。。。。。
}
pool {
allow members of “vmware”
range 192.168.10.1 192.168.10.9
}
DHCP中继的功能
在不同主机启动不同的服务 在dhcp主机上启动dhcpd服务 在linux主机(或者路由器启动中继功能)启动dhcrelay服务
/proc/sys/net/ipv4/ip-forward echo >1 开启路由功能
配置文件在/etc/sysconfig/dhcrelay 进程文件/etc/init.d/dhcrelay
启动服务 service dhcrelay start
本文出自 “攀岩,永不驻足。” 博客,谢绝转载!