Linux Is Not Matrix——使用域名访问局域网网站

   一直以来咱们的考试啊,评教啊,判分啊,各种咱们学校学生访问咱们自己的网站啊,这种情况都是需要输入192.168.xxx.xxx:xxxx这种形式的IP地址来访问的。咱们自己开发的时候都习惯了,顺手就背了一个IP端口号,但是用户记不住啊,你让学生进门之前先背一个IP端口,进去立马就忘了。

   所以最近被安排研究一下局域网域名访问网站的方案,域名是什么呢,域名就是itoo.com这种写法,反正就是一个很简单的有意义的字母,来代替IP+端口。

   至于为什么要用这种方案呢?举个例子,我说某某部门备案工厂号19216822226工厂,你知道是哪个吗?那我说浙江温州江南皮革厂。。。你们不就懂了嘛~

   所以,首先需要一个本地DNS服务器,域名解析服务。这个东西是干什么的呢?它会解析你在浏览器中输入的网址,把他变成IP+端口,然后再去访问。

   在Linux系统下有一个加bind的软件,可以实现DNS解析域名,那么就一起来愉快的安装吧。

yum install -y bind bind-chroot bind-utils

   安装bind软件,然后编辑配置文件。

vi /etc/named.conf
   将内容按照注释修改成下面这样。

options {
        listen-on port 53 { any; };<span style="white-space:pre">	</span>//这里改成any
        //listen-on-v6 port 53 { ::1; };//这句注释掉
        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; };<span style="white-space:pre">	</span>//这里改成any

        /* 
         - If you are building an AUTHORITATIVE DNS server, do NOT enable recursion.
         - If you are building a RECURSIVE (caching) DNS server, you need to enable 
           recursion. 
         - If your recursive DNS server has a public IP address, you MUST enable access 
           control to limit queries to your legitimate users. Failing to do so will
           cause your server to become part of large scale DNS amplification 
           attacks. Implementing BCP38 within your network would greatly
           reduce such attack surface 
        */
        recursion yes;

        dnssec-enable yes;
        dnssec-validation yes;

        /* Path to ISC DLV key */
        bindkeys-file "/etc/named.iscdlv.key";

        managed-keys-directory "/var/named/dynamic";

        pid-file "/run/named/named.pid";
        session-keyfile "/run/named/session.key";
};
    然后修改named.rfc1912.zones文件, vi /etc/named.rfc1912.zones,至于为什么是这个文件呢。。。因为在上面named.conf中有一句include "/etc/named.rfc1912.zones";我没写出来而已- -

   在里面添加这几句
zone "itoo.com" IN{
        type master;
        file "itoo.com.zone";
};

zone "0.168.192.in-addr.arpa" IN{
        type master;
        file "0.168.192.in-addr.zone";
};
   其实上面写啥都行,只要type是master,下面的是要读取的文件名称。那么我们建两个新文件,和上面一样就行,首先是itoo.com.zone,我们要在这里添加正向解析,什么是正向解析呢,就是我输入itoo.com可以访问到IP,添加下面的内容。
$TTL 1D
@       IN SOA   ns.itoo.com. root (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
@       IN      NS      ns.itoo.com.
ns      IN      A       192.168.22.226
www     IN      A       192.168.22.226
   这个大概就是定义的一种规则,比如我访问www.itoo.com就转向到192.168.22.226,ns就不用管了,这里是设置用哪个DNS服务器来解析,暂时就不管了,就先这么写。
   然后在设置反向解析文件。编辑0.168.192.in-addr.zone这个文件,添加。
$TTL 1D
@       IN SOA  ns.itoo.com. root  (
                                        12      ; serial
                                        28800   ; refresh
                                        14400   ; retry
                                        3600000 ; expire
                                        86400 ) ; minimum
@       IN      NS      ns.itoo.com.
1       IN      PTR     www.itoo.com
   这个大概就是输入IP能查到域名,这样就设置好了,然后启动服务。
service named start
   然后把自己电脑的DNS服务器地址设置成我们刚才安装软件的服务器地址,输入www.itoo.com就能看到192.168.22.226:80这个端口的东西了。
   这样看起来是完成了,但是呢,咱们提高班肯定是做活做得要完整的,我们要实现的是输入www.itoo.com就能访问到我们考试或者评教的界面的,那这个80端口肯定是不行的,怎么办呢?
   诶,这个篇幅可以了,下篇继续。

你可能感兴趣的:(Linux Is Not Matrix——使用域名访问局域网网站)