dhcp + dhcp脚本

本文档详细介绍了如何配置DHCP服务端、中继端和客户端,包括安装DHCP软件,编辑配置文件如dhcpd.conf和dhcrelay,设置网段信息,启用中继服务,并提供了开启网口转发的步骤。同时,提到了通过脚本来自动化这些过程,并附带了视频教程链接。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

脚本

an1="dhcp"
an2=""
an3=""
an4=""

function benyum(){
umount /dev/sr0 &> /dev/null
[ ! -d /media/cdrom ] && mkdir -p /media/cdrom 
mount /dev/sr0 /media/cdrom &> /dev/null
[ $? -ne 0 ] && echo "没插入光盘" && exit 1
[ ! -d /etc/yum.repos.d ] && mkdir -p /etc/yum.repos.d 
cd /etc/yum.repos.d
mv -f /etc/yum.repos.d/* /tmp/
cat > /etc/yum.repos.d/yum.repo << KOF
[local]
name=local
baseurl=file:///media/cdrom
gpgcheck=0
enabled=1
KOF
yum -y clean all &> /dev/null
yum makecache &> /dev/null
}

which $an1 $an2 $an3 $an4 &> /dev/null
[ $? -ne 0 ] && umount /dev/sr0 &> /dev/null && mount /dev/sr0 /media/cdrom &> /dev/null
if [ $? -eq 0 ];then
	yum -y install $an1 $an2 $an3 $an4 &> /dev/null 
else
	benyum
	yum -y install $an1 $an2 $an3 $an4 &> /dev/null
fi
> vim  /etc/dhcp/dhcpd.conf
function dhcp(){
name="why"
ip1="192.168.200.2"
ip2="192.168.200.100"
ip3="192.168.200.200"
ip4="192.168.200.0"
option domain-name "$name";
option domain-name-servers $ip1; default-lease-time 20000;
max-lease-time 48000;
log-facility local7;

subnet $ip4 netmask 255.255.255.0 {
   range $ip2 $ip3;
   option routers $ip1;
}
 
# host wanghaiyang {
#   hardware ethernet 00:0C:29:7B:A0:7B;
#   fixed-address 192.168.200.111;
#}
/etc/init.d/dhcp start
chkconfig dhcp --add
}

##配置DHCP服务

  • 主配置文件: /etc/dhcp/dhcpd.conf
  • 执行程序 /usr/sbin/dhcpd;/user/sbin/dhcrelay
  • 脚本:/etc/init.d/dhcpd;/etc/init.d/dhcrelay
  • 执行参数配置:/etc/sysconfig/dhcpd
  • DHCP中继配置:/etc/sysconfig/dhcrelay

yum -y install dhcp
vim /etc/dhcp/dhcpd.conf

option domain-name "why";
option domain-name-servers 192.168.200.2; default-lease-time 20000;
max-lease-time 48000;
log-facility local7;

subnet 192.168.200.0 netmask 255.255.255.0 {
   range 192.168.200.100 192.168.200.200;
   option routers 192.168.200.2;
 }
 
 host wanghaiyang {
   hardware ethernet 00:0C:29:7B:A0:7B;
   fixed-address 192.168.200.111;
 }

[root@wanghaiyang ~]# cat /etc/dhcp/dhcpd.conf 
# DHCP Server Configuration file.
        #下面路径为模板文件
#   see /usr/share/doc/dhcp*/dhcpd.conf.sample
#   see 'man 5 dhcpd.conf'

[root@wanghaiyang ~]# cd /etc/dhcp    #切换路径
[root@wanghaiyang dhcp]# cp  /usr/share/doc/dhcp*/dhcpd.conf.sample ./dhcpd.conf            #覆盖源
cp: overwrite `./dhcpd.conf'? y

[root@wanghaiyang dhcp]# egrep -v "#" /etc/dhcp/dhcpd.conf  > /etc/dhcp/dhcpd.conf.bak
[root@wanghaiyang dhcp]# cat /etc/dhcp/dhcpd.conf.bak >/etc/dhcp/dhcpd.conf



[root@wanghaiyang dhcp]# vim /etc/dhcp/dhcpd.conf
  #全局配置
  #opin:选项 domain-name 区域-名字 "你给他起的名字"
   option domain-name "example.org"; #域名解析名字
  #ns1.example.org, ns2.example.org;    #DNS服务器IP地址
   option domain-name-servers ns1.example.org, ns2.example.org;
   default-lease-time 600; #最小租约时间
   max-lease-time 7200;    #最大租约时间
   log-facility local7;    #日志路径
  
  #分发范围 subnet:声明;range:范围; option routers:路由,网关ip
  subnet 192.168.200.0 netmask 255.255.255.0 {
     range 192.168.200.100 192.168.200.200;
     option routers 192.168.200.2 ;
  } 
  #指定固定电脑获取固定地址
       #具体服务器名字(主机名)
  host fantasia {
    #网卡地址(mack地址)
    hardware ethernet 08:00:07:26:c0:a5;
    #强制插什么ip  #192.168.200.111
    fixed-address fantasia.fugue.com;
  } 
[root@wanghaiyang ~]# /etc/init.d/dhcpd restart
[root@wanghaiyang ~]# ifconfig | egrep -o "[0-9.]{15}" |head -1
192.168.200.111

DHCP中继

需要至少三台服务器,一台服务端。一台中继端,一台客户端
服务端:一个网卡。写配置文件,分发服务端,配置文件里添加客户端的网段等信息。
中继端:两个网卡,一个是连接服务端,一个是连接客户端
客户端:一个网卡,网段和中继端的其中一个网段相同

服务端

  1. 安装dhcp
  2. 配置dhcp,注意:需要添加一个subnet和本季相同的网段,不然会导致启动失败
  3. 启动DHCP
  4. 添加一个网段指向 route a2-net 192.168.100.0/24 gw 192.168.200.112
###   服务端   ###
[root@wanghaiyang dhcp]# vim /etc/dhcp/dhcpd.conf
option domain-name "why";
option domain-name-servers 192.168.200.2; default-lease-time 20000;
max-lease-time 48000;
log-facility local7;

#这是服务端IP如果不写,那么本地IP就写定值 下面的host
subnet 192.168.200.0 netmask 255.255.255.0 {
   range 192.168.200.100 192.168.200.200;
   option routers 192.168.200.2;
 }
 #上面的也可以这样写
 subnet 192.168.200.0 netmask 255.255.255.0 {}
 
 #这是客户端IP
subnet 192.168.100.0 netmask 255.255.255.0 {
   range 192.168.100.100 192.168.100.200;
   option routers 192.168.100.2;
 }
 
 host wanghaiyang {
   hardware ethernet 00:0C:29:7B:A0:7B;
   fixed-address 192.168.200.111;
 }
[root@wanghaiyang ~]# /etc/init.d/dhcpd restart
#临时添加一项路由表,gw后面写中继的IP,192.168.100.0/24网段的数据包发往中继
[root@wanghaiyang ~]# route add -net 192.168.100.0/24 gw 192.168.200.112
[root@wanghaiyang ~]# route

中继端

  1. 安装DHCP
  2. 配置DHCP中继 vim /etc/sysconfig/dhcrelay
  3. 启动DHCP中继服务 service dhcrelay restart
  4. 开启网口转发 vim /etc/sysctl.conf
[root@wanghaiyang ~]#  vim /etc/sysconfig/dhcrelay
# Command line options here
DHCRELAYARGS=""
# DHCPv4 only
#自己的网卡,没有顺序谁在前面都行
INTERFACES="eth0 eth1"
# DHCPv4 only
#服务端的IP
DHCPSERVERS="192.168.200.111"

[root@wanghaiyang ~]# service dhcrelay restart
[root@wanghaiyang ~]# vim /etc/sysctl.conf
#里面的这一行0改成1
net.ipv4.ip_forward=1

#刷新端口
[root@wanghaiyang ~]# sysctl -p
#启动中继服务
[root@wanghaiyang ~]# /etc/init.d/dhcrelay restart
[root@wanghaiyang ~]# dhcrelay 192.168.200.111

客户端

设置客户端自动获取IP地址,如果已经有其他的IP,ifdown eth0;ifup eth0

视频教学

https://birdteam.net/131100

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值