# 19.5 协同工作的 DNS: Slave DNS 及子域授权设定
## 19.5 协同工作的 DNS: Slave DNS 及子域授权设定
我们在本章一开始就曾谈过,DNS 大概是未来最重要的网络服务之一,因为所有的主机名需求都得要 DNS 提供才行。 因此,ISP 在提供 domain name 注册时,就强调得要有两部以上的 DNS 服务器才行。而为了简化 DNS 管理人员的负担, 使用 Master/Slave DNS 架构的情况会比较好!为什么呢?让我们再回忆一下 Slave DNS 的特色:
- 为了不间断的提供 DNS 服务,你的领域至少需要有两部 DNS 服务器来提供查询的功能;
- 承上,这几部 DNS 服务器应该要分散在两个以上的不同 IP 网域才好;
- 为方便管理,通常除了一部主要 Master DNS 之外,其他的 DNS 会使用 slave 的模式;
- slave DNS 服务器本身并没有数据库,他的数据库是由 master DNS 所提供的;
- master/slave DNS 必需要可以相互传输 zone file 的相关信息才行,这部份需要 /etc/named.conf 之设定辅助。
除此之外,如果你有朋友或者是学生想要跟你要一个子域,那又该如何设定另一部 DNS 服务器呢?就让我们依序来谈谈啰~
- - - - - -
### 19.5.1 master DNS 权限的开放
我们使用 [19.4.3](#DNS_master_case) 的案例,继续来架设一部支持该案例的 slave DNS 吧!基本的假设为:
- 提供 slave DNS 服务器进行 zone transfer 的服务器为 master.centos.vbird
- centos.vbird 及 100.168.192.in-addr.arpa 两个 zone 都提供给 slave DNS 使用
- master.centos.vbird 的 named 仅提供给 slave.centos.vbird 这部主机进行 zone transfer
- Slave DNS server 架设在 192.168.100.10 这部服务器上面 (所以 zone file 要修订)
如上所示,我们的 master.centos.vbird 这部服务器除了 named.conf 需要调整之外,两个 zone file 也都需要调整! 在 named.conf 当中,需要设定哪个 IP 可以对我的 zone 进行传输 (allow-transfer),而在 zone file 当中,就是各加入一笔 NS 的记录即可!增加的部分如下所示:
```
# 1\. 修订 named.conf,主要修改 zone 参数内的 allow-transfer 项目
[root@www ~]# vim /etc/named.conf
....前面省略....
zone "centos.vbird" IN {
type master;
file "named.centos.vbird";
allow-transfer { 192.168.100.10; }; // 在这里新增 slave 的 IP
};
zone "100.168.192.in-addr.arpa" IN {
type master;
file "named.192.168.100";
allow-transfer { 192.168.100.10; }; // 在这里新增 slave 的 IP
};
```
在上头所列示的那两个数据库档案当中,你必须要新增所需要的 NS 标志才行!NS 对应的主机名为 slave.centos.vbird, IP 则是 192.168.100.10 呦!结果如下:
```
# 2\. 在 zone file 里面新增 NS 标志,要注意需要有 A(正解) 及 PTR(反解) 的设定
[root@www ~]# vim /var/named/named.centos.vbird
$TTL 600
@ IN SOA master.centos.vbird. vbird.www.centos.vbird. (
2011080402 3H 15M 1W 1D )
@ IN NS master.centos.vbird.
@ IN NS slave.centos.vbird.
master.centos.vbird. IN A 192.168.100.254
slave.centos.vbird. IN A 192.168.100.10
@ IN MX 10 www.centos.vbird.
....(底下省略)....
[root@www ~]# vim /var/named/named.192.168.100
$TTL 600
@ IN SOA master.centos.vbird. vbird.www.centos.vbird. (
2011080402 3H 15M 1W 1D )
@ IN NS master.centos.vbird.
@ IN NS slave.centos.vbird.
254 IN PTR master.centos.vbird.
10 IN PTR slave.centos.vbird.
....(底下省略)....
# 要特别注意一件事,那就是,你的 zone file 内的序号要增加!鸟哥测试日期是 8/4,
# 第 2 次进行,所以序号就以该天的日期为准来设计的!最后记得 restart 一下啦!
[root@www ~]# /etc/init.d/named restart
[root@www ~]# tail -n 30 /var/log/messages | grep named
starting BIND 9.7.0-P2-RedHat-9.7.0-5.P2.el6_0.1 -u named -t /var/named/chroot
....(中间省略)....
zone 100.168.192.in-addr.arpa/IN: loaded serial 2011080402
zone centos.vbird/IN: loaded serial 2011080402
zone 100.168.192.in-addr.arpa/IN: sending notifies (serial 2011080402)
zone centos.vbird/IN: sending notifies (serial 2011080402)
```
反正重新启动过 named 后,直觉记得就是要查阅 messages 登录信息就对了。从上表的输出来看,会多一个 sending notifies (传送注意事项) 关键词的数据,那就是提醒 slave DNS 来比对序号大小了!所以,你说,序号有没有很重要呢?当然很重要啊! 连登录讯息都会告知序号的大小哩!这样 master DNS 就设定妥当啰!接下来玩玩 Slave 的设定吧!
- - - - - -
### 19.5.2 Slave DNS 的设定与数据库权限问题
既然 Slave DNS 也是 DNS 服务器嘛!所以,当然也是需要安装 bind, bind-chroot 等等的软件! 这部份回去 [19.3.1](#what_software) 里面瞧瞧即可,反正记得使用 yum 安装就对了。 接下来得要设定 named.conf 吧?而既然 Master/Slave 的数据库是相同的,所以,理论上, named.conf 内容就是大同小异啰~ 唯一要注意的就是 zone type 类型的差异,以及宣告 master 在哪里就是了。 至于 zone filename 部分,由于 zone file 都是从 master 取得的,透过 named 这个程序来主动建立起需要的 zone file,因此这个 zone file 放置的目录权限就很重要!让我们直接来处理看看:
```
# 1\. 准备 named.conf 的内容:
[root@clientlinux ~]# vim /etc/named.conf
....(前面的部分完全与 master.centos.vbird 相同,故省略)....
zone "centos.vbird" IN {
type slave;
file "slaves/named.centos.vbird";
masters { 192.168.100.254; };
};
zone "100.168.192.in-addr.arpa" IN {
type slave;
file "slaves/named.192.168.100";
masters { 192.168.100.254; };
};
# 2\. 检查 zone file 预计建立的目录权限是否正确!底下目录为系统默认值:
[root@clientlinux ~]# ll -d /var/named/slaves
drwxrwx---. 2 named named 4096 2011-06-25 11:48 /var/named/slaves
# 注意权限、使用者以及群组三个字段的数据!需要与 named 这个用户及群组有关!
[root@clientlinux ~]# ll -dZ /var/named/slaves
drwxrwx---. named named system_u:object_r:named_cache_t:s0 /var/named/slaves
# 也不要忘记与 SELinux 有关的事情!
```
为了方便使用者设定,CentOS 预设在 /var/named/slaves/ 处理好了相关权限~所以你可以轻松的处理权限问题~ 我们就建议你的 slave zone file 放置在该目录下!所以上表当中的 file 参数才会这么写~此外,那个 masters 结尾有个 s 喔!这里最容易写错~那么要不要处理 zone file 呢?除了 named.ca 这个 . 需要主动存在之外, 另外两个 type slave 的数据库档案,当然不必存在啊!因为会从 master 处取得嘛!接下来,就让我们来启动 named 并进行观察吧!
```
[root@clientlinux ~]# /etc/init.d/named start
[root@clientlinux ~]# chkconfig named on
[root@clientlinux ~]# tail -n 30 /var/log/messages | grep named
starting BIND 9.7.0-P2-RedHat-9.7.0-5.P2.el6_0.1 -u named -t /var/named/chroot
loading configuration from '/etc/named.conf'
....(中间省略)....
running
zone 100.168.192.in-addr.arpa/IN: Transfer started.
zone 100.168.192.in-addr.arpa/IN: transferred serial 2011080402
zone centos.vbird/IN: Transfer started.
zone centos.vbird/IN: transferred serial 2011080402 <==注意序号正确否
# 你会看到如上的讯息,重点是还有告知序号喔!非常重要!
[root@clientlinux ~]# ll /var/named/slaves
-rw-r--r--. 1 named named 3707 2011-08-05 14:12 named.192.168.100
-rw-r--r--. 1 named named 605 2011-08-05 14:12 named.centos.vbird
# 这两个 zone file 会主动被建立起来呢!
[root@clientlinux ~]# dig master.centos.vbird @127.0.0.1
[root@clientlinux ~]# dig -x 192.168.100.254 @127.0.0.1
# 上述两个检测的指令如果是正确的显示出 A 与 PTR 的话,那就完成了!
```
你瞧!如此一来你的 zone file 就会主动的被建立起来喔!未来如果你的 master DNS 要更新数据库时, 只要修改过序号,并重新启动 named 后,这部 slave DNS 就会跟着更新啦!啊!真是『福气啦!』!! 不过,如果你发现到启动 slave DNS 时,你的登录信息竟然是这样:
```
zone centos.vbird/IN: Transfer started.
transfer of 'centos.vbird/IN' from 192.168.100.254#53: connected using
192.168.100.10#58187
dumping master file: tmp-a1bYfCd3i3: open: permission denied
transfer of 'centos.vbird/IN' from 192.168.100.254#53: failed while receiving
responses: permission denied
transfer of 'centos.vbird/IN' from 192.168.100.254#53: end of transfer
```
如果出现类似这样的讯息时,不必怀疑啦!肯定是权限错误啦!请再次检查你的数据库档案所放置的目录权限是否可以让 named 写入啊!处理处理就好了!现在,你的 DNS 会变的更加强壮啰!因为有类似的备援系统啰~不过仍然要注意的是, 网络查询 centos.vbird 时,master 与 slave 的地位是相同的,并不是 master 挂点才使用 slave 来查询喔!所以,这两部服务器的相同 domain 的数据库内容要完全一致才行!
- - - - - -
### 19.5.3 建置子域 DNS 服务器:子域授权课题
除了 Master/Slave 需要协同 DNS 服务器共同提供服务之外,DNS 之间如果有上层、下属的关系时,该如何设定? 亦即,假设我的网域很大,我只想要负责上层的 DNS 而已,下层希望直接交给各单位的负责人来负责,要怎么设定呢? 举个例子来说,以成大为例,成大计中仅管理各个系所的 DNS 服务器 IP 而已,由于各个系所的主机数量可能很大, 如果每个人都要请计中来设定,那么管理员可能会疯掉,而且在实际设计上也不太人性化。
所以啰,计中就将各个 subdomain (子域) 的管理权交给各个系所的主机管理员去管理,如此一来, 各系所的设定上面会比较灵活,且上层 DNS 服务器管理员也不用太麻烦吶!
好了,那么如何开放子域授权呢?我们以刚刚在 master 上面建立的 centos.vbird 这个 zone 为例, 假设今天你是个 ISP ,有个人想要跟妳申请 domain name ,他要的 domain 是『 niki.centos.vbird 』, 那你该如何处理?
- 上层 DNS 服务器:亦即是 master.centos.vbird 这一部,只要在 centos.vbird 那个 zone file 内,增加指定 NS 并指向下层 DNS 的主机名与 IP (A) 即可,而 zone file 的序号也要增加才行;
- 下层 DNS 服务器:申请的领域名必须是上层 DNS 所可以提供的名称,并告知上层 DNS 管理员,我们这个 zone 所需指定的 DNS 主机名与对应的 IP 即可。然后就开始设定自己的 zone 与 zone file 相关数据。
假设我们管理 niki.centos.vbird 的服务器主机名为 dns.niki.centos.vbird ,而这部主机的 IP 为 192.168.100.200, 那接下来就让我们实际来设定吧!
- 上层 DNS 服务器:只需新增 zone file 的 NS 与 A 即可
上层 DNS 的处理真是简单到爆炸!我们只要修改 master DNS (www.centos.vbird 那一部) 里面的 named.centos.vbird 这个正解档案即可。slave DNS 不用修改,是因为他会自动更新嘛!新增如下的数据即可:
```
[root@www ~]# vim /var/named/named.centos.vbird
@ IN SOA master.centos.vbird. vbird.www.centos.vbird. (
2011080501 3H 15M 1W 1D )
# 上面的 SOA 部分序号加大,底下新增这两行即可 (原本的数据都保留不动)!
niki.centos.vbird. IN NS dns.niki.centos.vbird.
dns.niki.centos.vbird. IN A 192.168.100.200
[root@www ~]# /etc/init.d/named restart
[root@www ~]# tail -n 30 /var/log/messages | grep named
Aug 5 14:22:36 www named[9564]: zone centos.vbird/IN: loaded serial 2011080501
# 登录档的关键是上面的序号部分~必须是我们填写的新的序号才对!
[root@www ~]# dig dns.niki.centos.vbird @127.0.0.1
# 你会发现是错误的!找不到 A 喔!
```
上层 DNS 的设定非常简单!只要修改 zone file 即可~不过,由于 zone file 指定的是 NS 的查询权功能, 因此,最后那个指令在 dig dns.niki.centos.vbird 时,却会找不到 A 喔!那是正常的~因为 192.168.100.200 尚未设定好 niki.centos.vbird 这个领域嘛!所以追踪的结果并没有发现在 192.168.100.200 有 niki.centos.vbird 的 zone 啊! 所以当然找不到。此时数据库的管理权在 192.168.100.200 上啦!这样可以理解吗?再来处理下层 DNS 吧!
- 下层 DNS 服务器:需要有完整的 zone 相关设定
下层的 DNS 设定就与 [19.4](#DNS_master) 的详细内容一样了!所以在这里我们仅列出重要的项目:
```
# 1\. 修改 named.conf ,增加 zone 的参数,假设档名为 named.niki.centos.vbird
[root@niki ~]# vim /etc/named.conf
....(前面省略)....
zone "niki.centos.vbird" IN {
type master;
file "named.niki.centos.vbird";
};
# 2\. 建立 named.niki.centos.vbird
[root@niki ~]# vim /var/named/named.niki.centos.vbird
$TTL 600
@ IN SOA dns.niki.centos.vbird. root.niki.centos.vbird. (
2011080501 3H 15M 1W 1D )
@ IN NS dns.niki.centos.vbird.
dns IN A 192.168.100.200
www IN A 192.168.100.200
@ IN MX 10 www.niki.centos.vbird.
@ IN A 192.168.100.200
# 为了简化整个版面,所以鸟哥都使用 hostname 而非 FQDN!请见谅!
# 3\. 启动并观察相关登录信息
[root@niki ~]# /etc/init.d/named restart
[root@niki ~]# tail -n 30 /var/log/messages | grep named
....(前面省略)....
zone niki.centos.vbird/IN: loaded serial 2011080501
....(底下省略)....
# 同时,<u>记得处理一下防火墙的放行问题</u>!否则测试会失败!!
[root@niki ~]# dig www.niki.centos.vbird @192.168.100.254
# 上述的动作必须要有响应才行!否则就会出问题~
```
- - - - - -
### 19.5.4 依不同接口给予不同的 DNS 主机名: view 功能的应用
想象一个环境,以我们目前的局域网络服务器来说,我的 master.centos.vbird 有两个界面,分别是 192.168.100.254/24 (对内) 及 192.168.1.100/24 (对外),那当我外边的用户想要了解到 master.centos.vbird 这部服务器的 IP 时,取得的竟然是 192.168.100.254,因此还得要透过 NAT 才能联机到该接口,但明明 192.168.100.254 与外部的 192.168.1.100 是同一台服务器主机嘛!干嘛还得要经过 NAT 转到内部接口呢?有没有办法让外部的查询找到 master.centos.vbird 是 192.168.1.100 而内部的找到则回应 192.168.100.254 呢?可以的!那就透过 view 的功能!
那么 view 要怎么处理呢?其实就是让不同来源的用户,能够取得他们自己的 zone 响应就是了。举例来说,当用户来自 10.0.0.1 时,这个来源不可能是内部 (192.168.100.0/24) ,因此这个来源就会使用外部的 zone file 内容来响应。 因此,我们就得要准备同一个 zone 需要两个不同的设定,再将个别的设定带入自己的客户端查询当中。
现在我们针对这个概念,对于鸟哥的区网设定 view 的原则是这样的:
- 建立一个名为 intranet 的名字,这个名字代表客户端为 192.168.100.0/24 的来源;
- 建立一个名为 internet 的名字,这个名字代表客户端为非 192.168.100.0/24 的其他来源
- intranet 使用的 zone file 为本章前面各小节所建立的 zone filename,internet 使用的 zone filename 则在原本的档名后面累加 inter 的扩展名,并修订各标志的结果。
再次强调,最终的结果当中,从内网查到的 www.centos.vbird IP 应该是 192.168.100.254,而只要不是鸟哥内网来源的客户端, 查到的 www.centos.vbird IP 应该是 192.168.1.100 才对!那就让我们来实际设定此一项目吧!
```
[root@www ~]# vim /etc/named.conf
options {
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; };
recursion yes;
allow-transfer { none; };
};
acl intranet { 192.168.100.0/24; }; <==针对 intranet 给予的来源 IP 指定
acl internet { ! 192.168.100.0/24; any; }; <==加上惊叹号 (!) 代表反向选择的意思
view "lan" { <==只是一个名字,代表的是内网
match-clients { "intranet"; }; <==吻合这个来源的才使用底下的 zone
zone "." IN {
type hint;
file "named.ca";
};
zone "centos.vbird" IN {
type master;
file "named.centos.vbird";
allow-transfer { 192.168.100.10; };
};
zone "100.168.192.in-addr.arpa" IN {
type master;
file "named.192.168.100";
allow-transfer { 192.168.100.10; };
};
};
view "wan" { <==同样,只是个名字而已!
match-clients { "internet"; }; <==代表的则是外网的 internet 来源
zone "." IN {
type hint;
file "named.ca";
};
zone "centos.vbird" IN {
type master;
file "named.centos.vbird.inter"; <==档名必须与原有的不同!
};
// 外网因为没有使用到内网的 IP,所以 IP 反解部分可以不写于此
};
```
上表中,有些数据是重复的,有些则需要经过修改。现在,让我们来改改 named.centos.vbird.inter 吧!
```
[root@www ~]# cd /var/named
[root@www named]# cp -a named.centos.vbird named.centos.vbird.inter
[root@www named]# vim named.centos.vbird.inter
$TTL 600
@ IN SOA master.centos.vbird. vbird.www.centos.vbird. (
2011080503 3H 15M 1W 1D )
@ IN NS master.centos.vbird.
master.centos.vbird. IN A 192.168.1.100
@ IN MX 10 www.centos.vbird.
www.centos.vbird. IN A 192.168.1.100
linux.centos.vbird. IN CNAME www.centos.vbird.
ftp.centos.vbird. IN CNAME www.centos.vbird.
forum.centos.vbird. IN CNAME www.centos.vbird.
workstation.centos.vbird. IN A 192.168.1.101
[root@www named]# /etc/init.d/named restart
[root@www named]# tail -n 30 /var/log/messages
[root@www named]# dig www.centos.vbird @192.168.100.254
www.centos.vbird. 600 IN A 192.168.100.254
# 要得到上面的 IP 才是对的喔!因为接口来自于 192.168.100.0/24 网段
[root@wwww named]# dig www.centos.vbird @192.168.1.100
www.centos.vbird. 600 IN A 192.168.1.100
# 要得到上面的 IP 才是对的喔!因为接口来自非 192.168.100.0/24 网段
```
有没有很简单!这样就能让你的 DNS 依据不同的用户来源,分别给予同一个主机名的不同解析呢!
例题:你的网站读者非常的多,但是分布在世界各地。你想让亚洲区的读者联机到台湾的站台,而其他国家的联机则连到美国的站台, 但又不想要让使用者自己挑选不同的主机名,想使用同一组主机名,此时该如何是好?答:鸟哥可以想到的最简单的方案,就是透过 DNS 来设定相同主机名的不同 IP 目标,亦即是透过 view 来规范即可。 不过,与上述鸟哥的区网简单范例不同,我们得要收集亚洲区的 IP 才行,这些区段可能可以透过底下的网站来取得:
- 五大洲的 IP 管理所属人:<http://www.iana.org/numbers/>
- 每个单位的 IP 分布:
<http://www.iana.org/assignments/ipv4-address-space/ipv4-address-space.xml>
- 台湾地区 IP 分布:
[http://rms.twnic.net.tw/twnic/User/Member/Search/main7.jsp?Order=inet\_aton%28Startip%29](http://rms.twnic.net.tw/twnic/User/Member/Search/main7.jsp?Order=inet_aton%28Startip%29)
然后再透过 acl 以及 view 来规范即可。鸟哥的收集资料如下,如果有误,还请告知!
```
acl asia { 1.0.0.0/8; 14.0.0.0/8; 27.0.0.0/8; 36.0.0.0/8; 39.0.0.0/8;
42.0.0.0/0; 49.0.0.0/8; 58.0.0.0/8; 59.0.0.0/8; 60.0.0.0/8;
61.0.0.0/8; 101.0.0.0/8; 103.0.0.0/8; 106.0.0.0/8; 110.0.0.0/8;
111.0.0.0/8; 112.0.0.0/8; 113.0.0.0/8; 114.0.0.0/8; 115.0.0.0/8;
116.0.0.0/8; 117.0.0.0/8; 118.0.0.0/8; 119.0.0.0/8; 120.0.0.0/8;
121.0.0.0/8; 122.0.0.0/8; 123.0.0.0/8; 124.0.0.0/8; 125.0.0.0/8;
126.0.0.0/8; 175.0.0.0/8; 180.0.0.0/8; 182.0.0.0/8; 183.0.0.0/8;
202.0.0.0/8; 203.0.0.0/8; 210.0.0.0/8; 211.0.0.0/8; 218.0.0.0/8;
219.0.0.0/8; 220.0.0.0/8; 221.0.0.0/8; 222.0.0.0/8; 223.0.0.0/8;
139.175.0.0/16; 140.0.0.0/8;150.116.0.0/16;150.117.0.0/16;
163.0.0.0/8; 168.95.0.0/16;192.0.0.0/8;
};
acl nonasia { ! "asia"; any; };
```
如上所示,加入 asia 与 nonasia 的相关设定,再使用 view 来处理相关的 zone ,并修改 zone file 内容, 就能够处理好这个案例的需求啰!
- - - - - -
- 鸟哥的Linux私房菜:服务器架设篇 第三版
- 第一部份:架站前的进修专区
- 作者序
- 第一章、架设服务器前的准备工作
- 1.1 前言: Linux 有啥功能
- 1.2 基本架设服务器流程
- 1.3 自我评估是否已经具有架站的能力
- 1.4 本章习题
- 第二章、基础网络概念
- 2.1 网络是个什么玩意儿
- 2.2 TCP/IP 的链结层相关协议
- 2.3 TCP/IP 的网络层相关封包与数据
- 2.4 TCP/IP 的传输层相关封包与数据
- 2.5 连上 Internet 前的准备事项
- 2.6 重点回顾:
- 2.7 本章习题
- 2.8 参考数据与延伸阅读
- 第三章、局域网络架构简介
- 3.1 局域网络的联机
- 3.2 本书使用的内部联机网络参数与通讯协议
- 第四章、连上 Internet
- 4.1 Linux 连上 Internet 前的注意事项
- 4.2 连上 Internet 的设定方法
- 4.3 无线网络--以笔记本电脑为例
- 4.4 常见问题说明
- 4.5 重点回顾
- 4.6 本章习题
- 4.7 参考数据与延伸阅读
- 第五章、 Linux 常用网络指令
- 5.1 网络参数设定使用的指令
- 5.2 网络侦错与观察指令
- 5.3 远程联机指令与实时通讯软件
- 5.4 文字接口网页浏览
- 5.5 封包撷取功能
- 5.6 重点回顾
- 5.7 本章习题
- 5.8 参考数据与延伸阅读
- 第六章、 Linux 网络侦错
- 6.1 无法联机原因分析
- 6.2 处理流程
- 6.3 本章习题
- 6.4 参考数据与延伸阅读
- 第二部分:主机的简易资安防护措施
- 第七章、网络安全与主机基本防护:限制端口, 网络升级与 SELinux
- 7.1 网络封包联机进入主机的流程
- 7.2 网络自动升级软件
- 7.3 限制联机埠口 (port)
- 7.4 SELinux 管理原则
- 7.5 被攻击后的主机修复工作
- 7.6 重点回顾
- 7.7 课后练习
- 7.8 参考数据与延伸阅读
- 第八章、路由观念与路由器设定
- 8.1 路由
- 8.2 路由器架设
- 8.3 动态路由器架设:quagga (zebra + ripd)
- 8.4 特殊状况:路由器两边界面是同一个 IP 网段: ARP Proxy
- 8.5 重点回顾
- 8.6 本章习题
- 8.7 参考数据与延伸阅读
- 第九章、防火墙与 NAT 服务器
- 9.1 认识防火墙
- 9.2 TCP Wrappers
- 9.3 Linux 的封包过滤软件:iptables
- 9.4 单机防火墙的一个实例
- 9.5 NAT 服务器的设定
- 9.6 重点回顾
- 9.7 本章习题
- 9.8 参考数据与延伸阅读
- 第十章、申请合法的主机名
- 10.1 为何需要主机名
- 10.2 注册一个合法的主机名
- 10.3 重点回顾
- 10.4 本章习题
- 10.5 参考数据与延伸阅读
- 第三部分:局域网络内常见的服务器架设
- 第十一章、远程联机服务器SSH / XDMCP / VNC / RDP
- 11.1 远程联机服务器
- 11.2 文字接口联机服务器: SSH 服务器
- 11.3 最原始图形接口: Xdmcp 服务的启用
- 11.4 华丽的图形接口: VNC 服务器
- 11.5 仿真的远程桌面系统: XRDP 服务器
- 11.6 SSH 服务器的进阶应用
- 11.7 重点回顾
- 11.8 本章习题
- 11.9 参考数据与延伸阅读
- 第十二章、网络参数控管者: DHCP 服务器
- 12.1 DHCP 运作的原理
- 12.2 DHCP 服务器端的设定
- 12.3 DHCP 客户端的设定
- 12.4 DHCP 服务器端进阶观察与使用
- 12.5 重点回顾
- 12.6 本章习题
- 12.7 参考数据与延伸阅读
- 第十三章、文件服务器之一:NFS 服务器
- 13.1 NFS 的由来与其功能
- 13.2 NFS Server 端的设定
- 13.3 NFS 客户端的设定
- 13.4 案例演练
- 13.5 重点回顾
- 13.6 本章习题
- 13.7 参考数据与延伸阅读
- 第十四章、账号控管: NIS 服务器
- 14.1 NIS 的由来与功能
- 14.2 NIS Server 端的设定
- 14.3 NIS Client 端的设定
- 14.4 NIS 搭配 NFS 的设定在丛集计算机上的应用
- 14.5 重点回顾
- 14.6 本章习题
- 14.7 参考数据与延伸阅读
- 第十五章、时间服务器: NTP 服务器
- 15.1 关于时区与网络校时的通讯协议
- 15.2 NTP 服务器的安装与设定
- 15.3 客户端的时间更新方式
- 15.4 重点回顾
- 15.5 本章习题
- 15.6 参考数据与延伸阅读
- 第十六章、文件服务器之二: SAMBA 服务器
- 16.1 什么是 SAMBA
- 16.2 SAMBA 服务器的基础设定
- 16.3 Samba 客户端软件功能
- 16.4 以 PDC 服务器提供账号管理
- 16.5 服务器简单维护与管理
- 16.6 重点回顾
- 16.7 本章习题
- 16.8 参考数据与延伸阅读
- 第十七章、区网控制者: Proxy 服务器
- 17.1 什么是代理服务器 (Proxy)
- 17.2 Proxy 服务器的基础设定
- 17.3 客户端的使用与测试
- 17.4 服务器的其他应用设定
- 17.5 重点回顾
- 17.6 本章习题
- 17.7 参考数据与延伸阅读
- 第十八章、网络驱动器装置: iSCSI 服务器
- 18.1 网络文件系统还是网络驱动器
- 18.2 iSCSI target 的设定
- 18.3 iSCSI initiator 的设定
- 18.4 重点回顾
- 18.5 本章习题
- 18.6 参考数据与延伸阅读
- 第四部分:常见因特网服务器架设
- 第十九章、主机名控制者: DNS 服务器
- 19.1 什么是 DNS
- 19.2 Client 端的设定
- 19.3 DNS 服务器的软件、种类与 cache only DNS 服务器设定
- 19.4 DNS 服务器的详细设定
- 19.5 协同工作的 DNS: Slave DNS 及子域授权设定
- 19.6 DNS 服务器的进阶设定
- 19.7 重点回顾
- 19.8 本章习题
- 19.9 参考数据与延伸阅读
- 第二十章、WWW 伺服器
- 20.1 WWW 的簡史、資源以及伺服器軟體
- 20.2 WWW (LAMP) 伺服器基本設定
- 20.3 Apache 伺服器的進階設定
- 20.4 登錄檔分析以及 PHP 強化模組
- 20.5 建立連線加密網站 (https) 及防砍站腳本
- 20.6 重點回顧
- 20.7 本章習題
- 20.8 參考資料與延伸閱讀
- 第二十一章、文件服务器之三: FTP 服务器
- 21.1 FTP 的数据链路原理
- 21.2 vsftpd 服务器基础设定
- 21.3 客户端的图形接口 FTP 联机软件
- 21.4 让 vsftpd 增加 SSL 的加密功能
- 21.5 重点回顾
- 21.6 本章习题
- 21.7 参考数据与延伸阅读
- 第二十二章、邮件服务器: Postfix
- 22.1 邮件服务器的功能与运作原理
- 22.2 MTA 服务器: Postfix 基础设定
- 22.3 MRA 服务器: dovecot 设定
- 22.4 MUA 软件:客户端的收发信软件
- 22.5 邮件服务器的进阶设定
- 22.6 重点回顾
- 22.7 本章习题
- 22.8 参考数据与延伸阅读