DHCP服务和NIS服务
■ 掌握Linux系統網絡配置
■ 掌握DHCP和NIS的服務器配置和客戶端使用
■ 使用DHCP中繼代理實現跨網段的網絡地址自動分配
■ 使用NIS服務實現主機和用戶帳戶的同步
<章節內容> 1.1 LINUX系統網絡配置在開始使用Linux網絡之前,必須了解Linux網絡相關配置文件所在的目錄與文件名以及相關的設置命令,并熟記這些網絡配置文件和命令,這樣在進行網絡測試與修改時就會事半功倍。
1.1.1 更改主機名比如主機名為gouzhongxing,ip地址為192.168.20.2
1. 修改系統信息,/etc/sysconfig/network的主要功能是修改主機名稱(HOSTNAME)與是否啟動Network。
# cat /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=gouzhongxing.xapc.com
2. 修改/etc/hosts里面的名字,為自己的域名加上解析。/etc/hosts文件是用于記錄計算機的IP對應的主機名稱或主機的別名。
# tail -2 /etc/hosts
127.0.0.1 localhost.localdomain localhost
192.168.20.2 gouzhongxing.xapc.com
3. 最后在終端下執行:
# hostname gouzhongxing.xapc.com
特別提示:三處修改的名字要保持一致,否則會出現問題。
1.1.2 配置IP地址/子網掩碼/網關/DNS方法1:使用 netconfig/system-config-network
方法2:直接修改網卡的配置文件
在/etc/sysconfig/network-scripts目錄中,編輯ifcfg-eth0文件。
DEVICE=eth0
BOOTPROTO=none
ONBOOT=yes
TYPE=Ethernet
IPADDR=192.168.20.2 # 要設置的ip
NETMASK=255.255.254.0 # 要設置的子網掩碼
GATEWAY=192.168.20.1 # 要設置的網關
HWADDR=00:0c:29:4f:3d:c8 # 要設置的網卡地址
為主機設置DNS服務器地址
# cat /etc/resolv.conf
nameserver 192.168.20.2 # 要設置的DNS服務器地址
設置完成后,重新啟用一下網卡設置后配置文件生效
# /etc/rc.d/init.d/network restart
或
# service network restart
1.1.3 查看和快速設置IP地址的命令——ifconfigifconfig命令用于查看和更改網絡接口的地址和參數
一個更改網絡接口的IP地址的例子:
# ifconfig eth0 down
# ifconfig eth0 211.101.149.233 netmask 255.255.255.0 up
1.2 DHCP服務和中繼代理 1.2.1 知識回顧DHCP稱為動態主機配置協議。DHCP服務允許工作站連接到網絡并且自動獲取一個IP參數。配置DHCP服務的服務器可以為每一個網絡客戶提供IP地址、子網掩碼、缺省網關、WINS服務器的IP地址,以及DNS服務器的IP地址等。
DHCP協議中的數據包類型(7種報文)分別是:DHCPDISCOVER包、DHCPOFFER包、DHCPOFFER包、DHCPACK包、DHCPDECLINE包、DHCPNAK包、DHCPRELEASE包。
一個完整的IP租約生成過程如下圖所示:
1. IP租用請求。DHCP客戶機啟動計算機后,通過UDP端口67廣播一個DHCPDISCOVER信息包,向網絡上的任意一臺DHCP服務器請求提供IP租約。
2. IP租用提供。網絡上所有的DHCP服務器都會收到此信息包,每臺DHCP服務器通過UDP端口68給DHCP客戶機回應一個DHCPOFFER廣播包,提供一個IP地址。
3. IP租用選擇。客戶機從不止一臺DHCP服務器收到提供后,會選擇第一個收到的DHCPOFFER包,并向網絡中廣播一個DHCPREQUEST消息包,表明自己已經接受了一個DHCP服務器提供的IP地址。該廣播包中包含所接受的IP地址和服務器的IP地址。
4. IP租約確認。被客戶機選擇的DHCP服務器在接收到DHCPREQUEST廣播后,會廣播返回給客戶機一個DHCPACK消息包,表明已經接受客戶機的選擇,并將這一IP地址的合法租用以及其他的配置信息都放入該廣播包中發給客戶機。客戶機在收到DHCPACK包后,會使用該廣播包中的信息來配置自己的TCP/IP,則租用過程完成,客戶機可以在網絡中通信。
1.2.2 DHCP服務的相關文件■ 軟件包名稱為 dhcp
■ 配置文件為 /etc/dhcpd.conf
■ 模板文件為 /usr/share/doc/dhcp-3.0pl1/dhcpd.conf.sample
■ DHCP租約文件 /var/lib/dhcp/dhcpd.leases
■ 指定那塊網卡提供DHCP服務 /etc/sysconfig/dhcpd
■ 系統日志 /var/log/messages
1.2.3 DHCP中繼代理一、在網絡中部署DHCP
■ 在單物理子網環境中部署DHCP
在單物理子網環境中,為了均衡負載和提供容錯能力,通常會配置兩臺DHCP服務器,在實際應用中較好的解決方案是使用80/20規則來平衡兩臺DHCP服務器的使用。一臺性能較好的DHCP配置成主服務器。
■ 在多物理子網環境中部署DHCP
由于DHCP在分配IP地址時是使用廣播方式通信,但路由器就是會隔離廣播。默認情況下,一個物理子網中的DHCP服務器是無法為其它物理子網中的DHCP客戶端分配IP地址的。為了使網絡中所有的DHCP客戶端都能獲得IP地址租約,可以采取兩種方案:一種是每個物理子網中都配置一臺或兩臺DHCP服務器;另一種是在一個物理子網中配置一臺DHCP服務器,在其它物理子網中使用DHCP中繼代理。兩種方案均使用80/20規則。在實際應用中后一種解決方案比較常用。
二、使用DHCP中繼代理
其工作過程是:
(1)收到本子網的DHCP客戶端廣播發出的DHCP消息后,如果在預定的時間內沒有DHCP服務器廣播發出DHCP回應消息,則會將客戶端的DHCP消息以單播方式轉發給指定的DHCP服務器。
(2)DHCP服務器收到 DHCP中繼代理轉發來的DHCP消息后,會提供一個與DHCP中繼代理的IP地址在同一子網的IP地址,然后以單播方式將回應的DHCP消息發送給DHCP中繼代理。
(3)DHCP中繼代理收到DHCP服務器回應的DHCP消息后,再通過廣播方式發送給DHCP客戶端。
這樣以單播方式就不會受到路由器的限制。
1.2.6 實現DHCP中繼代理的三個重要步驟1、設置配置文件
# cat /etc/sysconfig/dhcrelay
INTERFACES=“eth0 eth1”
DHCPSERVERS=“192.168.20.2”
2、開啟路由轉發功能
# echo “1” > /proc/sys/net/ipv4/ip_forward
3、啟動中繼代理服務
# service dhcrelay start
1.3 DHCP中繼代理配置實例網絡拓撲結構如圖,首先確保網絡暢通。
步驟一:Linux A上配置DHCP服務,可以為兩個子網提供服務
步驟二:Linux B上配置DHCP中繼代理
步驟三:windows XP作為192.168.100.0網段的客戶端獲取IP地址
具體實現過程如下:
步驟一、在dhcp服務器Linux C上做如下設置:
查看dhcp軟件包是否安裝
[root@xapc ~]# rpm -q dhcp
package dhcp is not installed
掛載第四張安裝光盤
[root@xapc ~]# mount /dev/cdrom /media
mount: block device /dev/cdrom is write-protected, mounting read-only
安裝dhcp軟件包
[root@xapc ~]# rpm -ivh /media/Server/dhcp-3.0.1-12_el5.i386.rpm
warning: /media/Server/dhcp-3.0.1-12_EL.i386.rpm: V3 DSA signature: NOKEY, key ID 37017186
Preparing... ########################################### [100%]
1:dhcp ########################################### [100%]
復制配置文件模板
[root@xapc ~]# cp /usr/share/doc/dhcp-3.0.1/dhcpd.conf.sample /etc/dhcpd.conf
修改后的配置文件內容如下:
[root@xapc ~]# cat /etc/dhcpd.conf
ddns-update-style interim;
ignore client-updates;
subnet 192.168.20.0 netmask 255.255.255.0 {
# --- default gateway
option routers 192.168.20.2;
option subnet-mask 255.255.255.0;
option domain-name-servers 192.168.20.2;
range 192.168.20.128 192.168.20.254;
default-lease-time 21600;
max-lease-time 43200;
# we want the nameserver to appear at a fixed address
host ns {
next-server marvin.redhat.com;
hardware ethernet 12:34:56:78:AB:CD;
fixed-address 192.168.13.222
}
}
在配置文件中增加如下內容:
subnet 192.168.100.0 netmask 255.255.255.0 {
# --- default gateway
option routers 192.168.100.1;
option subnet-mask 255.255.255.0;
option domain-name-servers 192.168.20.2;
range 192.168.100.128 192.168.100.254;
default-lease-time 21600;
max-lease-time 43200;
}
啟動dhcpd服務
[root@xapc ~]# service dhcpd start
Starting dhcpd: [ OK ]
步驟二、在dhcp中繼代理Linux B上做如下配置:
eth0及eth1設置如下:
[root@xapc ~]# ifconfig
eth0 Link encap:Ethernet HWaddr 00:0C:29:89:5E:16
inet addr:192.168.20.1 Bcast:192.168.20.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:fe89:5e16/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:1415 errors:0 dropped:0 overruns:0 frame:0
TX packets:35 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:161233 (157.4 KiB) TX bytes:4361 (4.2 KiB)
Interrupt:185 Base address:0x1400
eth1 Link encap:Ethernet HWaddr 00:0C:29:89:5E:20
inet addr:192.168.100.1 Bcast:192.168.100.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:fe89:5e20/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:1434 errors:0 dropped:0 overruns:0 frame:0
TX packets:16 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:164142 (160.2 KiB) TX bytes:840 (840.0 b)
Interrupt:169 Base address:0x1480
同Linux C一樣檢查并安裝dhcp軟件包
[root@xapc ~]# rpm -q dhcp
package dhcp is not installed
[root@xapc ~]# mount /dev/cdrom /media
mount: block device /dev/cdrom is write-protected, mounting read-only
[root@xapc ~]# rpm -ivh /media/Server/dhcp-3.0.1-12_EL.i386.rpm
warning: /media/cdrom/Server/dhcp-3.0.1-12_EL.i386.rpm: V3 DSA signature: NOKEY, key ID db42a60e
Preparing... ########################################### [100%]
1:dhcp ########################################### [100%]
修改dhcp中繼的配置文件如下:
[root@xapc ~]# cat /etc/sysconfig/dhcrelay
# Command line options here
INTERFACES="eth0 eth1"
DHCPSERVERS="192.168.20.2"
啟動dhcprelay服務
[root@xapc ~]# service dhcrelay start
Starting dhcrelay: [ OK ]
啟用ip轉發
[root@xapc ~]# echo "1" > /proc/sys/net/ipv4/ip_forward
步驟三、這時,可以在Linux A上進行IP的自動獲取。
在dhcp客戶端Linux A自動獲取IP后,查看dhcp服務器Linux C上的數據庫文件:
[root@xapc ~]# tail -7 /var/lib/dhcp/dhcpd.leases
lease 192.168.20.2 {
starts 6 2011/10/28 09:23:32;
ends 6 2011/10/28 15:23:32;
binding state active;
next binding state free;
hardware ethernet 00:0c:29:55:3a:2e;
}
dhcp服務器已經成功為192.168.20.0網段分配IP。
1.4 NIS服務NIS(網絡信息服務)也稱YP(Yellow Pages)協議,是一個提供目錄服務的RPC(遠程過程調用)應用服務。NIS簡化了UNIX和LINUX桌面客戶的管理工作,客戶端利用它可以使用中心服務器的管理文件。桌面系統的用戶無需建立他們自己的/etc/passwd,他們只簡單的使用維護在NIS服務器的文件即可。
NIS是一個客戶機/服務器系統,ypbind是定義NIS服務器的客戶端進程。一旦確定了服務器位置,客戶機綁定到了服務器上,所以客戶端的查詢都發往服務器。ypserv是回答客戶端查詢的服務器進程。
NIS服務器集中維護用戶的帳號信息(數據庫)供NIS客戶機進行查詢,又稱為NIS映射表。
yp-tools/ypbind,ypserv三個軟件包,用來安裝NIS服務器,安裝linux時可以選擇安裝。
1.4.1 ypserv.conf文件服務器端有兩個配置文件,ypserv.conf和securenets文件,用于定義安全性。securenets文件用于對NIS客戶端主機進行訪問控制,需要手工建立。
ypserv.conf的語法格式
host:map:security:[mangle[]]
各字段含義如下:
■ host 授權或禁止訪問的計算機,它由地址/掩碼對確定。例如 192.168.1.0/255.255.255.0。* 表示所有主機。
■ map 該字段表示訪問的NIS映射表項名稱。例如:passwd.byuid。* 表示映射表 中所有的字段都可用。
■ security 授權訪問類型
l none 允許訪問,不加強安全性。
l port 允許特權端口訪問。只接收源端口小于1024的連接。
l deny 禁止訪問。
l des 訪問時需要數字加密標準(DES)認證。
舉例如下:
# Host : MAP : Security : mangle
192.168.1.0/255.255.255.0 : * : none : no
* : * : deny : no
1.4.2 yp.conf文件/etc/yp.conf是客戶端ypbind進程的配置文件。如果找不到yp.conf文件,ypinit進程使用nisdomainname 命令返回的NIS域名,廣播定位NIS服務器。ypbind將綁定到第一個相應請求的服務器上。
ypserver hostname
domain nisdomain broadcast | server hostname
其中,hostname,nisdomain字符為變量。
使用ypserver配置選項為客戶機指定服務器。yp.conf文件包括ypserver選項時,客戶機使用命令nisdomainname返回的NIS域名,向ypserver命令的hostname字段指定的服務器發出請求。/etc/hosts文件中必須包含該主機的IP地址,DNS是取代的HOSTS的,在DNS中設定也是可以的。ypserver選項強制客戶機連接到特定的服務器上。
在yp.conf文件中使用domain選項定義了NIS域名,指出客戶機是廣播定位還是直接向服務器發送請求。
例子:
# tail -1 /etc/yp.conf
domain xapc server xapcserver
其中xapc作為域名,jh是這個域的服務器。xapcserver在hosts中必須有相對應的IP地址,或者DNS能夠對域名xapcserver進行解析。
1.4.3 nsswitch.conf文件WINDOWS 2003的域跟NIS非常類似,在局域網內有一臺WIN2003域控制器,下面有一些機器加入到這個域中,當域中的機器登錄時,有一個選項是選擇登入到本機還時登入到域內,登入本地的密碼由本機控制,但是如果登入域內,密碼則有域控制器負責管理。
LINUX也是網絡操作系統,跟WIN2003沒有本質的區別,LINUX使用重要的文件/etc/nsswitch.conf來控制登錄。
nsswitch.conf文件不僅能處理主機表和DNS之間的優先次序,還能處理其它的問題。它為幾個不同的系統管理數據庫定義來源
由nsswitch.conf控制的數據庫:
■ alias EMAIL別名
■ ethers 用于RARP的以太網地址。
■ hosts 主機名和IP地址
■ password 用戶帳號信息。
還有許多,沒有列出來。
例一:使用不帶NIS的nsswitch.conf
password: files
shadow: files
...........
hosts: dns files
最后一句很重要,dns在先,files在后,這里的files指的是/etc/hosts文件,如果有客戶端查詢的時候,先找dns,再找files。這一句決定了順序。
例二:使用帶NIS的nsswitch.conf example:
hosts: files nis dns
protocols: nis files
.........
........
........
nsswich.conf文件已經取代了hosts.conf,因為它可以提供更多的資源控制方式。LINUX系統中通常這兩個文件都有,但實際上起作用的是nsswitch.conf文件。
1.4.4 NIS測試及故障排除NIS客戶端應該綁定到服務器。ypwhich命令可以檢測客戶端是否正確的連接到服務器。
如果客戶機正確的綁定到服務器,用ypcat可以檢測服務器提供的信息。
如果NIS軟件不正常工作,則可以檢查如下幾項內容:
■ 確認進程正在進行。使用ps auxw命令列出所有正在運行的進程,確認該進程正在運行。
■ 檢查系統日志(/var/log)文件,查看是否有消息指明影響配置的外設問題。
■ 如果進程看上去在運行但是沒有響應,殺死它們并重新啟動。在某些情況,守護程序工作不正常,需要重新啟動。
■ 確認/etc/nsswitch.conf配置文件正確。通常問題都出現在這里。
1.5 NIS服務配置實例步驟一 在Linux B上配置NIS Server,基本設置步驟如下:
1、安裝NIS服務器軟件包
2、設置time和time-udp服務的啟動狀態
3、建立服務器中的NIS域名
4、設置ypserv服務的配置文件
5、啟動NIS服務器
6、構建NIS數據庫
步驟二 Linux A作為NIS Client驗證NIS服務
1、安裝NIS客戶機軟件包
2、設置hosts文件中的NIS服務器主機記錄
3、建立NIS的域名
4、設置yp.conf配置文件
5、設置nsswitch.conf文件
6、啟動ypbind服務程序
7、使用NIS客戶機測試與NIS服務器的連接
8、NIS客戶端用戶登錄
具體實現過程如下:
步驟一 在Linux B上配置NIS Server
1、 檢查NIS服務器端軟件包是否已經安裝
[root@xapc ~]# rpm -qa | grep yp
libgcrypt-1.2.0-3
freetype-2.1.9-1
ypbind-1.17.2-3
crypto-utils-2.1-4
perl-Crypt-SSLeay-0.51-5
beecrypt-3.1.0-6
cryptsetup-0.1-4
yp-tools-2.8-7
pyparted-1.6.8-2
[root@xapc ~]#
掛載光盤安裝未安裝的軟件包
[root@xapc ~]# mount /dev/cdrom /media/cdrom/
mount: block device /dev/cdrom is write-protected, mounting read-only
[root@xapc ~]# rpm -ivh /media/cdrom/RedHat/RPMS/ypserv-2.13-5.i386.rpm
warning: /media/cdrom/RedHat/RPMS/ypserv-2.13-5.i386.rpm: V3 DSA signature: NOKEY, key ID db42a60e
Preparing... ########################################### [100%]
1:ypserv ########################################### [100%]
[root@xapc ~]#
2、啟動time和time-udp服務
修改time和time-udp服務的配置
[root@xapc ~]# chkconfig time on
[root@xapc ~]# chkconfig time-udp on
[root@xapc ~]# service xinetd restart
Stopping xinetd: [ OK ]
Starting xinetd: [ OK ]
[root@xapc ~]#
3、加入域xapc,并修改相應的配置文件和腳本
[root@xapc ~]# nisdomainname
(none)
[root@xapc ~]# nisdomainname xapc
修改后的系統配置文件
[root@xapc ~]# cat /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=xapc.com
NISDOMAIN=xapc
修改后的系統啟動腳本
[root@xapc ~]# cat /etc/rc.d/rc.local
#!/bin/sh
#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don't
# want to do the full Sys V style init stuff.
touch /var/lock/subsys/local
/bin/nisdomainname xapc
4、將主配置文件最后一行的注釋標記去掉
[root@xapc ~]# tail /etc/ypserv.conf
# If you comment out the next rule, ypserv and rpc.ypxfrd will
# look for YP_SECURE and YP_AUTHDES in the maps. This will make
# the security check a little bit slower, but you only have to
# change the keys on the master server, not the configuration files
# on each NIS server.
# If you have maps with YP_SECURE or YP_AUTHDES, you should create
# a rule for them above, that's much faster.
* : * : * : none
定義客戶端訪問控制
[root@xapc ~]# cat /var/yp/securenets
255.255.255.0 192.168.11.0
5、檢查portmap服務是否已經啟動
[root@xapc ~]# service portmap status
portmap (pid 1816) is running...
啟動ypserv服務
[root@xapc ~]# service ypserv start
Starting YP server services: [ OK ]
6、添加域用戶zhang3
[root@xapc ~]# useradd zhang3
[root@xapc ~]# passwd zhang3
Changing password for user zhang3.
New UNIX password:
BAD PASSWORD: it is too simplistic/systematic
Retype new UNIX password:
passwd: all authentication tokens updated successfully.
生成map映像數據庫文件,鍵入CTRL+D即可。此時,系統會在/var/yp/目錄下生成一個xapc子目錄。里面包含許多映像文件。
[root@xapc ~]# /usr/lib/yp/ypinit -m
At this point, we have to construct a list of the hosts which will run NIS
servers. xapc.com is in the list of NIS server hosts. Please continue to add
the names for the other hosts, one per line. When you are done with the
list, type a <control D>.
next host to add: xapc.com
next host to add:
The current list of NIS servers looks like this:
xapc.com
Is this correct? [y/n: y] y
We need a few minutes to build the databases...
Building /var/yp/xapc/ypservers...
Running /var/yp/Makefile...
gmake[1]: Entering directory `/var/yp/xapc'
Updating passwd.byname...
Updating passwd.byuid...
Updating group.byname...
Updating group.bygid...
Updating hosts.byname...
Updating hosts.byaddr...
Updating rpc.byname...
Updating rpc.bynumber...
Updating services.byname...
Updating services.byservicename...
Updating netid.byname...
Updating protocols.bynumber...
Updating protocols.byname...
Updating mail.aliases...
gmake[1]: Leaving directory `/var/yp/xapc'
xapc.com has been set up as a NIS master server.
Now you can run ypinit -s xapc.com on all slave server.
查看生成后的map映像數據庫文件
[root@xapc ~]# ls -l /var/yp/xapc/
total 432
-rw------- 1 root root 12430 May 10 09:44 group.bygid
-rw------- 1 root root 12438 May 10 09:44 group.byname
-rw------- 1 root root 12463 May 10 09:44 hosts.byaddr
-rw------- 1 root root 12664 May 10 09:44 hosts.byname
-rw------- 1 root root 13204 May 10 09:44 mail.aliases
-rw------- 1 root root 13081 May 10 09:44 netid.byname
-rw------- 1 root root 12479 May 10 09:44 passwd.byname
-rw------- 1 root root 12475 May 10 09:44 passwd.byuid
-rw------- 1 root root 29187 May 10 09:44 protocols.byname
-rw------- 1 root root 14498 May 10 09:44 protocols.bynumber
-rw------- 1 root root 16377 May 10 09:44 rpc.byname
-rw------- 1 root root 14229 May 10 09:44 rpc.bynumber
-rw------- 1 root root 49714 May 10 09:44 services.byname
-rw------- 1 root root 102400 May 10 09:44 services.byservicename
-rw------- 1 root root 12352 May 10 09:44 ypservers
[root@xapc ~]#
至此,NIS服務器端配置完畢。
步驟二 Linux A作為NIS Client驗證NIS服務
1、 檢查NIS客戶端軟件包是否已經安裝。NIS客戶機需要安裝ypbind和yp-tools兩個軟件包,ypbind和yp-tools軟件包是RHEL4中默認安裝的
[root@xapc ~]# rpm -qa | grep yp
libgcrypt-1.2.0-3
freetype-2.1.9-1
ypbind-1.17.2-3
crypto-utils-2.1-4
perl-Crypt-SSLeay-0.51-5
beecrypt-3.1.0-6
cryptsetup-0.1-4
yp-tools-2.8-7
pyparted-1.6.8-2
[root@xapc ~]#
2、 設置hosts文件中的NIS服務器主機記錄,NIS客戶機需要通過主機名訪問NIS服務器
[root@xapc ~]# cat /etc/hosts
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1 xapc.com xapc localhost.localdomain localhost
192.168.11.11 xapcserver
3、 加入域xapc,NIS客戶機中建立NIS域名的操作與NIS服務器中相同。
[root@xapc ~]# nisdomainname
(none)
[root@xapc ~]# nisdomainname xapc
[root@xapc ~]# cat /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=xapc.com
NISDOMAIN=xapc
[root@xapc ~]# cat /etc/rc.d/rc.local
#!/bin/sh
#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don't
# want to do the full Sys V style init stuff.
touch /var/lock/subsys/local
/bin/nisdomainname xapc
4、設置客戶端yp.conf配置文件,增加最后一行。NIS客戶機的配置文件是yp.conf
yp.conf文件中需要設置NIS域名和服務器主機名稱。
[root@xapc ~]# tail /etc/yp.conf
# ypserver HOSTNAME
# Use server HOSTNAME for the local domain. The
# IP-address of server must be listed in /etc/hosts.
#
# broadcast
# If no server for the default domain is specified or
# none of them is rechable, try a broadcast call to
# find a server.
#
domain xapc server xapcserver
4、 設置nsswitch.conf文件,文件中需要添加使用nis作為主機信息的查詢方式
[root@xapc ~]# cat /etc/nsswitch.conf | grep nis
# nis or yp Use NIS (NIS version 2), also called YP
# nisplus or nis+ Use NIS+ (NIS version 3), unsupported
#passwd: db files ldap nis
#shadow: db files ldap nis
#group: db files ldap nis
passwd: files nis
shadow: files nis
group: files nis
#hosts: db files ldap nis dns
5、 ypbind服務程序需要portmap服務的支持,檢查portmap服務是否已經啟動
[root@xapc ~]# service portmap status
portmap (pid 1798) is running...
啟動ypbind服務
[root@xapc ~]# service ypbind start
Binding to the NIS domain: [ OK ]
Listening for an NIS domain server.
7、測試客戶端能否找到服務器,查看能訪問的map映像數據庫文件。yp-tools軟件包中提供了三個測試命令:
■ yptest命令可對NIS服務器進行自動測試
■ ypwhich命令可顯示NIS客戶機所使用的NIS服務器的主機名稱和數據庫文件列表
■ ypcat命令顯示數據庫文件列表和指定數據庫的內容
[root@xapc ~]# ypwhich
xapcserver
[root@xapc ~]# ypcat -x
Use "ethers" for map "ethers.byname"
Use "aliases" for map "mail.aliases"
Use "services" for map "services.byname"
Use "protocols" for map "protocols.bynumber"
Use "hosts" for map "hosts.byname"
Use "networks" for map "networks.byaddr"
Use "group" for map "group.byname"
Use "passwd" for map "passwd.byname"
[root@xapc ~]#
8、使用域用戶zhang3登陸,成功!
[root@xapc ~]# su zhang3
bash-3.00$
<本章實驗>任務1:安裝配置DHCP服務器及中繼代理,在客戶端獲取IP地址
注意事項
提示1:dhcpd.conf配置文件缺省不存在,需要手工建立
提示2:dhcpd.conf配置文件中的任何錯誤配置都可能導致dhcpd服務程序不能正常啟動
任務2:安裝配置NIS服務器和NIS客戶機,驗證用戶登錄
注意事項
提示1:NIS服務器和客戶機中都需要較多的配置步驟,要按照順序進行配置
提示2:NIS服務器和客戶機中都需要運行相應的服務程序,portmap服務程序需要提前啟動
提示3:網絡防火墻有可能造成NIS服務器和客戶機連接失敗,必要時可以關閉兩端主機中的防火墻
<本章總結>■ DHCP服務器可向DHCP客戶機提供IP地址、缺省網關地址等配置信息
■ RHEL4系統中包括dhcpd服務器的安裝包,需要手工進行安裝
■ DHCP服務器的主配置文件是dhcpd.conf,dhcpd.conf文件中包括聲明、參數和選項三類設置內容
■ Linux系統作為DHCP客戶機需要設置網絡接口配置文件,并重新啟動網絡接口
■ NIS服務可以對系統中的用戶帳號等信息進行集中管理;一臺NIS服務器可以為多臺NIS客戶機提供信息查詢服務;NIS服務器需要運行ypserv和yppasswdd兩個網絡服務程序;ypserv服務的配置文件是ypserv.conf
■ NIS客戶機需要運行ypbind服務程序,ypbind服務的配置文件是yp.conf
轉載于:https://blog.51cto.com/19880423/700034
總結
以上是生活随笔為你收集整理的DHCP服务和NIS服务的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 开发一款自动指向特定页面元素的jQuer
- 下一篇: 冬季饮食保健30条