前几天重装了系统,可惜之前离职的同事为我配置的DNS服务器忘了备份,没有了,只能自己动手来。
DNS的基本理论知识还是知道一些,也知道bind组件,记得在装Linux的时候勾选了DNS,这里就省去了一步安装bind组件了。必须安装的组件应该是bind,bind-libs,bind-chroot,我猜的。其实系统中还装了bind-utils,这个工具集不知道是否必须,ypbind不知道是什么东东,不管它。
其实配置这些服务不算难,一般的帮助文档都能在/usr/share/doc/中能找到。bind也不例外,/usr/doc/bind*/下边就是所有的文档了。而且给了一个sample,这不是很方便么。
值得记下来的是bind-chroot组件,这个东东使得/var/named/chroot变成了bind所认为的根目录,记得好像在哪里见过说涉及安全还是权限问题。所以配置文件中提到的/etc/ /var/***都指的是/var/named/chroot/下的,而不是真正的系统根目录。这一点让我困惑了好一阵子。
sample给的还是很有用意的,稍微想一下就会发现,sample下的etc目录,其实就是指/var/named/chroot下的etc目录,换句话说,/var/named/chroot/etc/里边的东东应该长的和/usr/share/doc/bind*/sample/etc/里差不多。同理,sample下的var目录就对应了/var/named/chroot/var。
不要一股脑的复制sameple到chroot中,最好对比着named.conf中所需要的东西来复制,其实默认的named.conf有些貌似也用不到,在我这里,反而因为一项加密的东西ddns_key而导致bind无法启动,删掉后正常了。
在named.conf中应该添加一个自己的zone,仿照着其他例子来写就OK,有个named.rfc***.zones,可以参照。然后在/var/named/chroot/var/named中建立同名的zone文件,同样的仿照其他的zone文件来写。
下班时间到了,详细的就不记录了,很多东西不懂,照猫画虎的配置出来一个,先应付着。
普通家用的路由器可以称之为标准的linux嵌入式设备,所以拥有一台linux主机,也就可以具备路由器的全部功能。所需要的是可能你的linux主机需要至少两块网卡,或者还需要无线网卡。
提及一下简单的思路,具体的软件安装和配置方法可以分别从网上搜索。
编辑/etc/sysctl.conf文件中的net.ipv4.ip_forward值,将其修改为1,保存后再使用sysctl -p命令使配置即时生效。或者使用echo “1″ > /proc/sys/net/ipv4/ip_forward命令临时开启,重启后不生效的。这样就开启了Linux的路由转发功能。
再者安装DHCP,使你的linux主机成为一台DHCP服务器,DHCP的安装很简单,一般linux发行版都带有这个软件,如果默认没有安装使用安装光盘安装,或者从网上下载也可,只是版本众多,所以用光盘里的也是最省事的办法。配置文件为/etc/dhcpd.conf,具体的配置可以参考我的另一篇文章启用dhcp relay为不同子网分配IP, option domain-name-servers需要配置为本机的IP,也就是你DHCP服务器准备分配地址的网卡IP。
接下来就需要安装DNS服务器了,这里使用DNS并不是需要这台主机解析域名,仅仅是一个转发DNS请求的作用。所以安装后应该不需要配置什么。安装的组件应该是bind,bind-chroot等。 当然,如果DHCP的option domain-name-servers配置了一个可用的公网DNS,那么就不需要安装DNS了。
最后还需要iptables来开启NAT伪装,来做地址转换,开启的命令如下,iptables -t nat -A POSTROUNTING -o eth0 -j MASQUERADE ,具体网口地址就是你的外网口,视具体情况修改。可以将这条命令写入/etc/rc.d/rc.local或者用iptables-save > /root/iptables-saved来保存目前的iptables状态,再将iptables-restore /root/iptables-saved写入/etc/rc.d/rc.local,来使开机配置生效。
这样简单的就成了,工作的原理也很简单了,linux主机为客户端分配IP,分配网关、DNS,网关地址和DNS地址应该都是这台linux主机,这台linux主机的外网口接入了互联网,他的接入方式可能是局域网静态地址,也可能是动态地址,或者是PPPOE拨号接入的,这些都无所谓,我们的linux主机始终会将另一个内网口(dhcp分配地址所在的网卡)的数据转发至外网口上来,从而使客户端看起来在通过一台路由器上网了。
或者还可以安装NTP,PPPOE服务,甚至radius,如果有无线网卡,也许还应该有hostapd来配合无线网卡来加密SSID,总之就是随心所欲了。
所有的安装配置都写的很简单,旨在记录一种思路和方法,以备不时之需了。
COMMENTS