关于DNS配置可以参考:
http://blog.chinaunix.net/uid-16607457-id-3311717.html
Centos Bind安装配置 DNS服务器(比较详细)
http://hi.baidu.com/yum_install/item/edd01b306402bbd56d15e9a4
CentOS NDS解析设置
http://hi.baidu.com/rockhuang1030/item/a6b28394d8820af129164797
vi /etc/sysconfig/network-scripts/ifcfg-eth0
CentOS配置简易DNS服务器
http://285946.blog.51cto.com/275946/249576
解释:A记录、MX记录、CNAME记录、TXT记录、AAAA记录、NS记录
http://blog.csdn.net/eroswang/article/details/6576190
关于查看域名A记录,MX记录,CNAME记录-NSLOOKUP用法介绍
http://www.cnaaa.com/style/info/shownews.asp?id=384
系统环境:CentOS 6.2
虚拟机:Vmworkstation 7.0
目标:将虚拟机中的一台服务器配置成dns服务器,正常能够解析。
域名:pandy8.com IP:192.168.1.187
最近想配置一个局域网邮箱服务器,但需要用到dns解析服务。于是根据虚拟平台进行实验。(后话俺没有权限接触VPS服务器。)
配置网络命令:
yum install -y system-config-network 或者 yum install system-config-network-tui
system-config-network
service network restart
1.先看下局域配置
#cat /etc/sysconfig/network-scripts/ifcfg-eth0
TYPE=Ethernet
BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=yes
IPV6INIT=no
NAME="Auto eth0"
UUID=b4eb3f56-8141-4203-815e-78b0a5746e62
ONBOOT=yes
IPADDR=192.168.1.187
NETMASK=255.255.255.0
DNS2=202.96.134.133
GATEWAY=192.168.0.2
DNS1=211.95.193.97
DEVICE=eth0
USERCTL=no
PREFIX=24
HWADDR=00:0C:29:C5:CF:BF
2.安装Bind
安装方法很多。我这里用最简单yum安装.注意要切换root用户进行操作.以下都是该用户下操作.
[root@dns /]#
yum -y install bind* caching-nameserver
3.主配置文件named.conf的配置。
我这里直接在/etc目录下操作。网上还有安装bind-chroot包,在/var/named/chroot/etc/目录下操作。大家可以去了解下。先备份下哦再编辑啦。
[root@dns etc]#
cd /etc
[root@dns etc]#
cp -p named.conf named.conf.bak
[root@dns etc]#
gedit named.conf
//更改过内容如下
options {
listen-on port 53 {
any; };//这里将127.0.0.1改为any.监听所有.
#listen-on-v6 port 53 { ::1; };//将ipv6注释掉啊。暂无需求.
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
memstatistics-file "/var/named/data/named_mem_stats.txt";
allow-query {
any; };//此处修改为any
recursion yes;
dnssec-enable yes;
dnssec-validation yes;
dnssec-lookaside auto;
/* Path to ISC DLV key */
bindkeys-file "/etc/named.iscdlv.key";
};
logging {
channel default_debug {
file "data/named.run";
severity dynamic;
};
zone "." IN {
type hint;
file "named.ca";
};
include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";
4.在此目录下还有一个文件要配置,命令如下:
[root@dns etc]#
gedit /etc/named.rfc1912.zones
zone "localhost.localdomain" IN {
type master;
file "named.localhost";
allow-update { none; };
};
zone "localhost" IN {
type master;
file "named.localhost";
allow-update { none; };
//注意以下为注释内容
#zone "1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa" IN {
# type master;
# file "named.loopback";
# allow-update { none; };
#};
zone "1.0.0.127.in-addr.arpa" IN {
type master;
file "named.loopback";
allow-update { none; };
};
zone "0.in-addr.arpa" IN {
type master;
file "named.empty";
allow-update { none; };
};
//以下是要添加正向的域。根据自己情况添加。我的是pandy8.com
zone "pandy8.com" IN {
type master;
file "pandy8.com.zone";
};
//添加反向解析域
zone "1.168.192.in-addr.arpa" IN {
type master;
file "1.168.192.in-addr.arpa";
};
5. 配置正、反解文件。
需要新建两个文件
pandy8.com.zone和
1.168.192.in-addr.arpa 。
[root@dns etc]#
cd /var/named/chroot/var/named///不应该放在这个位置
[root@dns etc]#
cd /var/named/
[root@dns named]#
touch pandy8.com.zone
[root@dns named]#
touch 1.168.192.in-addr.arpa
[root@dns named]#
gedit pandy8.com.zone //添加以下内容保存
$TTL 1D
@ IN SOA dns.pandy8.com. root (
20120524 ; serial //这里随便一个序列号
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
@ IN NS dns.pandy8.com.
@ IN MX 10 mail.pandy8.com.
dns IN A 192.168.1.187
@ IN A 192.168.1.187
mail IN A 192.168.1.187
www IN A 192.168.1.187
ftp IN CNAME www
[root@dns named]#
gedit 1.168.192.in-addr.arpa //添加以下内容保存退出
$ORIGIN 1.168.192.in-addr.arpa.
@ IN SOA dns.pandy8.com. root(
20120523 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
@ IN NS dns.pandy8.com.
187 IN PTR dns.pandy8.com.
187 IN PTR mail.pandy8.com.
187 IN PTR www.pandy8.com.
6.修改/etc/resolv.conf文件。只有修改了这个文件才可以用自己的机器进行域名解析,命令如下:
[root@dns named]# gedit /etc/resolv.conf
只要加上一句:nameserver 192.168.1.187 就行了。
# Generated by NetworkManager
search pandy8.com
nameserver 192.168.1.187
注意:resolv.conf的值此时无法永远保存的,在电脑重启后变成原样。解决方法见
http://hi.baidu.com/afei47/blog/item/6ff2898272e5d29e6d81196f.html,大致如下,
手动配置:
DNS服务器 : 192.168.1.187 , 搜索域: pandy8.com。
(本机地址,
这样设定,无法使用yum远程安装,所以,先安装所有软件之后,在设定这些信息)
断开网络再连接,或者:
service network restart
7.有时候需要关闭防墙
[root@dns named]#/etc/init.d/iptables stop
[root@dns named]#chkconfig iptables off //开机永久关闭
只要设定iptables通过25,110端口,应该没问题,但是注意网络提供商是否屏蔽这两个端口,否则设定成其他端口。
验证配置:
更改正反解析文件所属组
chown :named 1.168.192.in-addr.arpa
chown :named pandy8.com.zone
检测配置文件和解析文件有没有错误。
named-checkconf
named-checkzone pandy8.com.zone /var/named/pandy8.com.zone
zone pandy8.com.zone/IN: mail.pandy8.com.zone/MX 'mail.pandy8.com' (out of zone) has no addresses records (A or AAAA)
zone pandy8.com.zone/IN: loaded serial 0
OK
named-checkzone 1.168.192.in-addr.arpa /var/named/1.168.192.in-addr.arpa
zone 1.168.192.in-addr.arpa/IN: loaded serial 0
OK
8.启动服务
[root@dns named]# service named restart
[root@dns named]# chkconfig named on //开机开启
9.测试
[root@dns named]#
nslookup www.pandy8.com
Server: 192.168.1.187
Address: 192.168.1.187#53
Name: www.pandy8.com
Address: 192.168.1.187
//查看A记录
[pandy@localhost ~]$
nslookup -qt=a pandy8.com
*** Invalid option: qt=a
Server: 192.168.1.187
Address: 192.168.1.187#53
Name: pandy8.com
Address: 192.168.1.187
//查询到正确地址ok
//查询MX记录
[root@dns named]#
host -t MX pandy8.com
pandy8.com mail is handled by 10 mail.pandy8.com.
//查询MX记录
[pandy@localhost ~]$
nslookup
> set type=MX <<输入的信息
> pandy8.com <<输入的信息
Server: 192.168.1.187
Address: 192.168.1.187#53
pandy8.com mail exchanger = 10 mail.pandy8.com.
>
//测试A记录
[root@bogon named]#
ping www.pandy8.com
PING www.pandy8.com (192.168.1.187) 56(84) bytes of data.
64 bytes from dns.pandy8.com (192.168.1.187): icmp_seq=1 ttl=64 time=0.131 ms
64 bytes from dns.pandy8.com (192.168.1.187): icmp_seq=2 ttl=64 time=0.082 ms
64 bytes from dns.pandy8.com (192.168.1.187): icmp_seq=3 ttl=64 time=0.099 ms
64 bytes from dns.pandy8.com (192.168.1.187): icmp_seq=4 ttl=64 time=0.108 ms
对于不能发件的问题,做了端口映射,具体如下:
为了使其他电脑能够访问你的邮件服务器,你需要设置你的防火墙或者路由,以便允许以下必要的端口连接服务器。
IMAP - 143
IMAPS - 993
POP3 - 110
POP3S - 995
对于不能收件,大多问题出在DNS解析上。
首先,需要一条MX记录,如:mail.domain.com 注意 /etc/postfix/main.cf 中 myhostname = mail.domain.com 它需要和MX记录中的值一致!
其次,需要一条A记录,将mail.domain.com指向一个固定IP。
问题:
1.因为每次重启,都会resolv.conf的值此时无法永远保存的,在电脑重启后变成原样。按照上面的解决方式也不是很好,那么是不是可以先备份一份没问题的resolv.conf.bak,然后电脑启动进入后,在覆盖resolv.conf?
sudo cp -rf /etc/resolv.conf /etc/resolv.conf.bak 备份
sudo rm -f /etc/resolv.conf 删除
sudo cp -rf /etc/resolv.conf.bak /etc/resolv.conf 还原