分类: LINUX
2010-03-03 12:05:16
DHCP动态主机配置协议
DHCP服务是为大量客户机自动分配地址,提供集中管路,减轻管理和维护成本、提高网络配置效率的一种服务。他可以分配的地址信息包括:网卡的ip地址、子网掩码网络地址广播地址DNS 服务器地址默认网关等。
DHCP软件包的名称是dhcp
DHCP软件包的主要文件:
1. 主配置文件/etc/dhcpd.conf
2. 执行程序/usr/sbin/dhcpd /usr/sbin/dhcrelay
3. 服务脚本/etc/init.d/dhcp /etc/init.d/dhcrelay
4. 主配置文件/etc/dhcpd.conf
5. 执行参数配置/etc/sysconfig/dhcpd监听网卡
6. DHCP中继配置文件/etc/sysconfig/dhcrelay定义在那个网卡之间relay及DHCP服务器地址
dhcp服务器的配置
1. 为服务器配置一个静态的ip地址如192.168.104.1
2. 安装服务所需要的dhcp包 :
mkidr /mnt/cdrom
mount /dev/cdrom /mnt/cdrom
rpm –ivh /mnt/cdrom/Server/dhcp-
3. cp /usr/share/doc/dhcp-
里面有全局配置eg:ddns-update-stayle interim;和区域配置
subnet 192.168.0.0 netmask 255.255.255.0 {#子网段和子网掩码
option routers 192.168.0.1 #默认网关
option subnet-mask 255.255.255.0#默认掩码
option nis-domain “domain.org”;#nis域
option domain-name “domain.org”;#域名
option domain-name-servers “192.168.
option ntp-servers 192.168.1.1;#ntp服务器
option time-offset -18000;#时间偏移
option netbios-name-servers 192.168.1.1;#wins服务器
range 192.168.0.128 1092.168.0.254;#地址池必须在上面的子网内
default-lease-time 21600;#最小租约时间
max-lease-time 43200;#最大租约时间
host ns {#为某个mac绑定静态地址
hardware Ethernet 12:34:56:78:AB:CD;
fixed-address 207.175.42.254;
}
}
4. 修改配置文件
ddns-update-style interim;
ignore client-updates;
subnet 192.168.104.0 netmask 255.255.255.0 {
option routers 192.168.104.254;
option subnet-mask 255.255.255.0;
option domain-name “test.com”;
option domain-name-servers 192.168.104.253;
range 192.168.104.1 192.168.104.10;
default-lease-time 21600;
max-lease-time 43200;
}
service dhcpd configtest 检查语法是否有错
service dhco start 启动服务
chkconfig dhcpd on 加入到自动加载队列
netstat –nulp 看67号端口是否开启
找台客户机试试吧^_^ dhclient –d eth0
检查是否成功
ifconfig 看ip是否是你定义的网段一般是从最大的ip开始分的
route 看看网关是不是192.168.104.254
vi /etc/resolv.conf 看看nameserver 是不是 192.168.104.253
如果不想让动态更新nameserver在网卡的配置文件里加上PEERDNS=no
下面我们玩一下地址绑定
首先在服务器端编辑/etc/dhcpd.conf
vim /etc/dhcpd.conf
把host ns改为
host ns {
hardware Ethernet 00:11:22:33:44:55;#要绑定地址的主机的mac地址
fixed-address 192.168.104.100;#为主机绑定的地址最好不要在上面的地址池中
}
重启网络服务
service dhcpd restart
在客户端
dhclient –d eth0
如果提示dhclient(num) already running- exiting
则 执行下面命令
kill num(num为dhclient后面跟的数字)
dhclient –d eth0