原理
DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)通常被应用在大型的局域网络环境中,主要作用是集中的管理、分配IP地址,使网络环境中的主机动态的获得IP地址、Gateway地址、DNS服务器地址等信息,并能够提升地址的使用率。DHCP协议采用客户端/服务器模型,主机地址的动态分配任务由网络主机驱动。当DHCP服务器接收到来自网络主机申请地址的信息时,才会向网络主机发送相关的地址配置等信息,以实现网络主机地址信息的动态配置。
安装配置dhcp服务
执行命令yum install dhcp –y安装dhcp服务相关软件
修改dhcp的配置文件
egrep -v '^$|#' /usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample
查看示例,过滤掉注释和空行
#截取红框部分内容,并修改为此处需要的配置,将配置写入 /etc/dhcp/dhcpd.conf
subnet 192.168.1.0 netmask 255.255.255.0 { #网段和子网掩码 range 192.168.1.100 192.168.1.254; #可自动获取的IP地址范围 option domain-name-servers 223.5.5.5; #dns服务器名称 option routers 192.168.1.1; #网关地址 option broadcast-address 192.168.1.255; #广播地址 default-lease-time 600; #默认租约期限,单位秒 max-lease-time 7200; #最长租约期限,单位秒 }
启动dhcpd服务
/etc/init.d/dhcpd start
服务端cat /var/lib/dhcpd/dhcpd.leases查看dhcp缓存
linux 客户端也可cat /var/lib/dhclient/dhclient-eth0.leases查看dhcp缓存
修改内核配置开启ip转发功能
vim /etc/sysctl.conf net.ipv4.ip_forward = 1 sysctl –p 加载内核参数
配置iptables转发规则nat
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -j MASQUERADE
此时可以ping通外网
通过dhcp获取固定分配的ip
若想给某一主机分配固定的IP地址,前提是知道要分配IP地址主机的网卡mac地址(物理地址)和主机名,也能固定为主机分配一个ip地址
5.1 cat /usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample |grep -Ev '^$|#'查看示例
修改为此处需要的配置,利用ifconfig查看网卡mac地址
host dhcp-client{ hardware ethernet 00:0C:29:E4:81:9A; fixed-address 192.168.1.199; }
将此内容追加到/etc/dhcp/dhcpd.conf文件中
/etc/init.d/dhcpd restart 重启dhcp服务
###
如有文件权限报错就修改/etc/init.d/dhcpd的 group=root user=root