ubuntu下DHCP服务器搭建

1、 安装DHCP服务

安装isc-dhcp-server:

sudo apt install isc-dhcp-server


2、配置DHCP服务

首先需要知道目标主机的网卡名称:

$ ifconfig
由下图可见,网卡名为ens33

ubuntu下DHCP服务器搭建_第1张图片

接下来配置 /etc/default/isc-dhcp-server 文件,

$ sudo vi /etc/default/isc-dhcp-server
将INTERFACES的内容补充为目标主机的网卡名称enp33。

配置 /etc/dhcp/dhcpd.conf 文件:

$ sudo vi /etc/dhcp/dhcpd.conf
文件内容中需要配置的是域名和子网IP等信息,option domain-name “example.org” 不用修改,下一行的domain-name-server需要注释掉在第二文件片段中补充。

目标主机的子网IP为200.200.156.117/24,因此subnet为200.200.156.0,DHCP分配范围设置为119-120,

其余地址留给广播和静态IP。ntp-servers和netbios-name-servers设置与DNS一致,netbios-node-type默认为8

tip:特别注意:ens33网卡与dhcp配置文件配置分配的IP需要在同一网段中。

否则dhcp启动会出错。

配置完成之后重启DHCP服务:

$ sudo service isc-dhcp-server restart


查看dhcp是否正常运行:

$ sudo netstat -uap
当显示dhcpd的program name时表示dhcp服务安装配置启动成功

如果不成功,重启DHCP服务后,立即查看/var/log/syslog日志:tail -n 50 /var/log/syslog,查看最后50行日志即可。

3、验证服务

使用终端接入同二层,dhcp获取地址,看能否获取到分配的IP。

4、option43字段设置,(待测试)

配置 /etc/dhcp/dhcpd.conf 文件:

$ sudo vi /etc/dhcp/dhcpd.conf

option serverip code 43 = string;

subnet 192.168.100.0 netmask 255.255.255.0 {

range  192.168.100.2 192.168.100.254;

option routers 192.168.100.1;

option subnet-mask 255.255.255.0;

option serverip 03:0C:31:39:32:2E:31:36:38:2E:32:32:2E:31;

}

以WAC的IP地址为192.168.22.1为例,对应的Option 43字段应该填写为:03:0C: 31:39:32:2E:31:36:38:2E:32:32:2E:31。其中,03为固定值,代表子选项类型;十六 进制数0C(“0C”等于十进制数“12”)代表IP地址192.168.22.1的长度,包含小数 点“.”;十六进制数31对应“1”的ACCII值,32对应“2”的ASCII值,以此类 推,十六进制数2E对应小数点“.”的ASCII值,即值31:39:32:2E:31:36:38:2E: 32:32:2E:31表示AC的IP地址192.168.22.1。

ASCII表见http://www.asciima.com/

5、DHCP6

建一个文件/etc/dhcp/dhcpd6.conf,添加配置内容

default-lease-time 600;
max-lease-time 7200;
log-facility local7;
subnet6 2001:db8:0:1::/64 {
        # Range for clients
        range6 2001:db8:0:1::129 2001:db8:0:1::254;
 
        # Range for clients requesting a temporary address
        range6 2001:db8:0:1::/64 temporary;
 
        # Additional options
        option dhcp6.name-servers fec0:0:0:1::1;
        option dhcp6.domain-search "domain.example";
 
        # Prefix range for delegation to sub-routers
        prefix6 2001:db8:0:100:: 2001:db8:0:f00:: /56;
 
        # Example for a fixed host address
        host specialclient {
                host-identifier option dhcp6.client-id 00:01:00:01:4a:1f:ba:e3:60:b9:1f:01:23:45;
                fixed-address6 2001:db8:0:1::127;
        }
}

然后在 /var/db下添加一个空文件dhcpd6.leases

touch /var/db/dhcpd6.leases

在运行 ISC-DHCP之前,你需要把eth0接口地址设置成上面subnet6网段2001:db8:0:1::/64的信息,这样才可以分配地址给下面的设备,如下

sudo ifconfig eth0 add 2001:db8:0:1::1/64

然后启动dhcpv6服务器:

service isc-dhcp-server6 start             

ps -aux| grep dhcp查看进程:  -6表示IPV6

service isc-dhcp-server6 stop

查看日志同::tail -n 50 /var/log/syslog  (如果获取不到IPV6地址,先将dhcp进程全部杀掉,包括IPv4的,然后 service isc-dhcp-server start           service isc-dhcp-server6 start          )

你可能感兴趣的:(linux,服务器,ubuntu,linux)