欢迎各位兄弟 发布技术文章

这里的技术是共享的

You are here

马哥 20_04 _DHCP服务【攻城狮论坛の免费分享】有大用

DHCP: Dynamic Host Configuration Protocal<--前身 bootp (Boot Protocal)



早期的网吧等 cpu,内存,键盘什么的都有,就是没有硬盘

image.png



DHCP里面引入了 lease 租约的概念

现在的电脑 都有硬盘的

DHCP 真正实现了动态.需要就分配,不需要就回收

image.png

DHCP 在租期达到一半的时候,就决定是否需要续租了,续租后 还是原来的时候


boot->dhcp

lease租约

续租

2H,    1H->2H (到一半时,是续租,但是租期不是3小时,而是还是2小时,换句话说,此时是一次延长一个小时)

       1H->2H


2H,    1H (到一半时,联系服务器,联系不上的话,再过一半,,即0.5小时,再联系服务器)

            1H->0.5H (如果联系上服务器,还是续租总计2小时)

            0.5h-->0.25H(0.5小时时,再联系不上服务器的话,再走一半,即0.25小时,)

            0.25H-->0.125h((0.25小时时,再联系不上服务器的话,再走一半,即0.125小时,)


当到了最后仍然联系不上服务器时,干脆释放地址,重新找地址

image.png


找服务器时,一家一家的找房子,是广播的

如果找到了三家,一般来讲是最近的,响应速度最快的(客户端一般接受第一个响应的服务器)


TCP/IP        (客户端配置TCP/IP属性的时候,配置项)

    IPADDR        必须

    NETMASK        必须

    GATEWAY        不必须    (没有它的话,就是只能本地通信,不跟外网联系)

    DNS                 不必须 

    (NIS)                (不必须)    (这是linux网络中常用的一种服务)


对于windows来讲,可能还有windows名,netbells名称,主机名等


地址池:DHCP能够给其它的主机提供ip的列表

image.png


客户端找 dhcp要ip地址是广播的,

dhcp响应客户端也是广播的(因为此时那个客户端只有mac地址,没有ip地址)

dhcp广播后,客户端就收到ip地址了(假如两个dhcp都提供了ip地址)

客户端收到ip后,就要说一声,我收到了ip地址,我使用的是第一个dhcp提供的地址,此时仍是广播(因为要让两个dhcp(及所有的主机)都知道我的ip)

第一个dhcp要向客户端说一声,我知道了,此时也是广播的,因为要通知所有人,我给这个客户端分配了某ip地址

image.png


Client-->DHCPDISCOVER (发现报文)    广播出去 udp

        HDCPOFFER  <-- Server   (提供报文,回应报文,回应一个ip)    广播出去 

Client-->DHCPREQUEST (请求报文,请求这个ip)       广播出去 

        DHCPACK  <-- Server   (确认报文,确认这个ip)    广播出去 


续租的时候是单播  (续租房子的时候不用满大街找房子)

Client-->DHCPREQUEST    (请求自己这个ip)         单播

        DHCPACK  <-- Server   (仍旧确认这个ip)       单播


续租不成功的话,就要重试 (再不成功的话,再重试续租) (再再不成功的话,再重试续租)

(最后仍不成功的话,就换房东,把地址释放,发起 第一步 DHCPDISCOVER (广播) )


路由器不会转发广播包,因此DHCP不能跨物理网络来实现


把中间的路由器配置成为dhcp的中继器 (DHCP Relay),各个dhcp服务器就可以跨网络了


一方的客户端请求广播后, 路由器(中继器) 单播这一方的客户端的请求到另一方的dhcp服务器,

另一方的dhcp服务器 单播给路由器(中继器),路由器(中继器)呢,广播回应给一方的客户端

一方的客户端 发送 REQUEST 请求给路由器(中继器), 路由器(中继器)再单播给另一方的dhcp服务器

另一方的dhcp服务器 再单播给路由器(中继器),路由器(中继器)再广播回应给一方的客户端


当一端没有dhcp服务器的时候,也是可以借助于另一端的dhcp服务器来进行工作


image.png


dhcp必须要有一个地址池,提供给本地主机使用

地址池与dhcp要不要在同一个网段中呢?肯定要的,如果不要的话,客户端就不是本地客户端了,

就必须是通过路由器来进行通信,就不是在同一个IP网络(逻辑网络)中了

此时使用ip地址是能够互相通信吗?应该可以的

此时单播这种方式续租是不能完成的

所以dhcp提供的地址池一定要跟自己的网卡在同一网段中,这就是表示我就是在本地网络中提供服务的

image.png


image.png

dhcp的有一个地址池是跟由器的某个网卡的地址段

但是这种将来这样子配置的可能性很小


现在讲的是配置一个dhcp服务器给本地网络主机提供地址掩码网关以及dns服务器等这几种情况

主要目的是提供php?其础的,不打算讲的过于深入


假如没有远程网络,都是本地网络

保留地址(固定地址,静态地址)是地址池外的,也应该与dhcp的网卡在同一网段中

保留地址是靠mac来识别的

image.png



下面看看如何配置dhcp服务器

软件包的名称是dhcp,跟dns一样,也是isc.org提供的

我们使用rpm包来安装就完了



[root@localhost ~]# yum list all | grep dhcp

This system is not registered to Red Hat Subscription Management. You can use su                                      bscription-manager to register.

dhcpv6-client.i386                         1.0.10-20.el5              installed    #ipv6的客户端

dhcp.i386                                  12:3.0.5-33.el5_9          Cdrom_Base #服务器端包,为什么不叫dhcpd呢?

dhcp-devel.i386                            12:3.0.5-33.el5_9          Cdrom_Base

dhcpv6.i386                                1.0.10-20.el5              Cdrom_Base  # ipv6专用的

libdhcp.i386                               1.20-13.el5                Cdrom_Base

libdhcp-devel.i386                         1.20-13.el5                Cdrom_Base

libdhcp4client.i386                        12:3.0.5-33.el5_9          Cdrom_Base

libdhcp4client-devel.i386                  12:3.0.5-33.el5_9          Cdrom_Base

libdhcp6client.i386                        1.0.10-20.el5              Cdrom_Base

libdhcp6client-devel.i386                  1.0.10-20.el5              Cdrom_Base

sblim-cmpi-dhcp.i386                       1:1.0-49.el5               Cdrom_Base

sblim-cmpi-dhcp-devel.i386                 1:1.0-49.el5               Cdrom_Base

sblim-cmpi-dhcp-test.i386                  1:1.0-49.el5               Cdrom_Base

[root@localhost ~]#


[root@localhost ~]# yum -y install dhcp

image.png


[root@localhost ~]# rpm -ql dhcp

/etc/dhcpd.conf

/etc/rc.d/init.d/dhcpd     #我们提供dhcp 服务器的话 ,只需要提供 dhcpd就可以了       

/etc/rc.d/init.d/dhcrelay  # 这是中继器服务

/etc/sysconfig/dhcpd        # 它是 /etc/rc.d/init.d/dhcpd 的配置文件

/etc/sysconfig/dhcrelay

/usr/bin/omshell

/usr/sbin/dhcpd        # dhcpd 提供服务的程序

/usr/sbin/dhcrelay    # 中继器

/usr/share/doc/dhcp-3.0.5

/usr/share/doc/dhcp-3.0.5/IANA-arp-parameters

/usr/share/doc/dhcp-3.0.5/README

/usr/share/doc/dhcp-3.0.5/RELNOTES

/usr/share/doc/dhcp-3.0.5/api+protocol

/usr/share/doc/dhcp-3.0.5/dhcpd.conf.sample

/usr/share/doc/dhcp-3.0.5/draft-ietf-dhc-authentication-14.txt

/usr/share/doc/dhcp-3.0.5/draft-ietf-dhc-dhcp-dns-12.txt

/usr/share/doc/dhcp-3.0.5/draft-ietf-dhc-failover-07.txt

/usr/share/doc/dhcp-3.0.5/ja_JP.eucJP

/usr/share/doc/dhcp-3.0.5/ja_JP.eucJP/dhclient-script.8

/usr/share/doc/dhcp-3.0.5/ja_JP.eucJP/dhclient.8

/usr/share/doc/dhcp-3.0.5/ja_JP.eucJP/dhclient.conf.5

/usr/share/doc/dhcp-3.0.5/ja_JP.eucJP/dhclient.leases.5

/usr/share/doc/dhcp-3.0.5/ja_JP.eucJP/dhcp-eval.5

/usr/share/doc/dhcp-3.0.5/ja_JP.eucJP/dhcp-options.5

/usr/share/doc/dhcp-3.0.5/rfc1542.txt

/usr/share/doc/dhcp-3.0.5/rfc2131.txt

/usr/share/doc/dhcp-3.0.5/rfc2132.txt

/usr/share/doc/dhcp-3.0.5/rfc2485.txt

/usr/share/doc/dhcp-3.0.5/rfc2489.txt

/usr/share/doc/dhcp-3.0.5/rfc951.txt

/usr/share/man/man1/omshell.1.gz

/usr/share/man/man5/dhcp-eval.5.gz

/usr/share/man/man5/dhcp-options.5.gz

/usr/share/man/man5/dhcpd-eval.5.gz

/usr/share/man/man5/dhcpd-options.5.gz

/usr/share/man/man5/dhcpd.conf.5.gz

/usr/share/man/man5/dhcpd.leases.5.gz

/usr/share/man/man8/dhcpd.8.gz

/usr/share/man/man8/dhcrelay.8.gz

/var/lib/dhcpd

/var/lib/dhcpd/dhcpd.leases  # (leases 租约)这里记明白哪个地址分配给谁使用的

[root@localhost ~]#

可以不是路由器,只要是个主机,装上 dhcp 的软件包 只要启用 dhcrelay 功能就可以了,就是中继器

所以 relay 和 dhcpd 一般来说是不能同时使用的,这就是为什么软件包没有叫 dhcpd的原因

所以软件包不叫 dhcpd 而叫dhcp,因为它提供了两个服务 1)dhcpd  2)dhcrelay

image.png


dhcp的配置文件    

/etc/dhcpd.conf

[root@localhost ~]# vim /etc/dhcpd.conf

里面没有内容,但是注释告诉我们 有个模板  我们复制过来

image.png

[root@localhost ~]# cp /usr/share/doc/dhcp-3.0.5/dhcpd.conf.sample /etc/dhcpd.conf

cp:是否覆盖“/etc/dhcpd.conf”? y

[root@localhost ~]#


[root@localhost ~]# vim /etc/dhcpd.conf

#每一行都要用分号结尾(没有分号,语法错误)

ddns-update-style interim;        #( interim 临时的,暂时的)(ddns dynamic dns)动态dns的更新方式,地址发生改变后会 动态的通知dns服务器,把dns服务器数据文件里面的内容改一改,这非常危险,有人把里面的对应的dns域名改成他的ip地址了     (有人把icbc.com的地址改成他的电脑,他的电脑上的页面与icbc.com的页面一模一样,提示你输入账号密码,一点击,告诉网站在维护,请稍候,他把账号密码登入真正的icbc.com网站中去,然后要确认码,然后假icbc.com告诉客户,网站修复好,请输入确认码,假icbc.com提示有错误,,,然后呢他把确认码输入真正的icbc.com,那你的钱就没了,这就是钓鱼网站)(攻击dns方法有很多比如有缓存毒化,第一次访问icbc.com时,dns解析结果是缓存到本地的,通过一些客户端软件,把里面缓存的内容改一改,下次访问的时候不是通过dns服务器解析的,而是通过本地获取)

 动态dns很危险,一般不用,更新方式有三种,另外两种都废弃了,所有只有这一种

ignore client-updates;  #是不是忽略客户端更新,(就是客户端更新不起作用)这是配合上面一行工作的,怎么去更新dns服务器上面的数据的

#所以上面两行都不用管它了

#指令 值 这叫指令




#可以定义多个子网,必须是定义一个子网,与本机(当前的dhcp服务器的网卡)的ip地址在同一个网段中(本地地址池)

#否则dhcp服务器启动不了

subnet 192.168.1.0 netmask 255.255.255.0 {        #子网 地址池列表


# --- default gateway

        option routers                  192.168.1.1;   #默认网关,路由器,给客户端提供的默认的网关地址        #关键字 指令 值   这叫选项

        option subnet-mask              255.255.255.0; #子网掩码


        option nis-domain               "domain.org"; #nis域,我们用不着,可以注释掉

        option domain-name              "domain.org";#域名 给 /etc/resolv.conf 当中的search 后面的字符串,这就是搜索域

                                                            (image.png)

        option domain-name-servers      192.168.1.1,180.110.21.78;#dns服务器地址,如果有多个的话,用逗号(,)隔开,对linux而言 最多三个            加个公网地址吧


        option time-offset              -18000; # Eastern Standard Time   #时间偏移,用来定义时区的

#       option ntp-servers              192.168.1.1;

#       option netbios-name-servers     192.168.1.1;

# --- Selects point-to-point node (default is hybrid). Don't change this unless

# -- you understand Netbios very well

#       option netbios-node-type 2;


       # range dynamic-bootp 192.168.0.128 192.168.0.254;   

            range dynamic-bootp 192.168.1.60 192.168.1.70;   

 #范围,地址池 指定起始地址和结束地址,这就是地址池中可以分配出去的地址    linux上的dhcp服务器向外分配地址的时候,是从大到小来的(windows是从小到大)

        default-lease-time 21600;#默认租约长度,单位是秒    6小时

        max-lease-time 43200;#最大租约长度,单位是秒        12小时


        # we want the nameserver to appear at a fixed address

        host ns {            #定义保留地址的     host就是定义定义保留地址,某个主机的    ns是标记符,没有意义,你自己拿来去识别客户端的一个标记而已

                next-server marvin.redhat.com;#下一个服务器,指定用于pxc当中的,用于向对方客户端提供文件服务器的,    指定文件服务器,通过这个服务器获取引导文件的

                hardware ethernet 12:34:56:78:AB:CD;        #指定对方的mac地址

                fixed-address 207.175.42.254;#给它分配的保留地址 (固定地址)

        }

}


 /etc/dhcpd.conf 改成 如下

[root@localhost ~]# vim /etc/dhcpd.conf

ddns-update-style interim;

ignore client-updates;


subnet 192.168.1.0 netmask 255.255.255.0 {


# --- default gateway

        option routers                  192.168.1.1;

        option subnet-mask              255.255.255.0;


        option nis-domain               "domain.org";

        option domain-name              "mageedu.com";

        option domain-name-servers      192.168.1.1;


        option time-offset              -18000; # Eastern Standard Time

#       option ntp-servers              192.168.1.1;

#       option netbios-name-servers     192.168.1.1;

# --- Selects point-to-point node (default is hybrid). Don't change this unless

# -- you understand Netbios very well

#       option netbios-node-type 2;


        range 192.168.1.10 192.168.1.20;

        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 207.175.42.254;

        #}

}



[root@localhost ~]# service dhcpd start

启动 dhcpd:                                               [确定]

[root@localhost ~]#


dhcp是基于udc工作的,它既然是服务器,就是监听到某个端口上,

UDP:

        67/udp        服务端是监听到67号端口上

        68/udp        客户端是监听到68号端口上    服务端要租约响应报文给客户端,所以客户端也监听到68端口上



服务器端

[root@localhost ~]# netstat -unlp

Active Internet connections (only servers)

Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name

udp        0      0 0.0.0.0:933                 0.0.0.0:*                               3725/rpc.statd

udp        0      0 0.0.0.0:936                 0.0.0.0:*                               3725/rpc.statd

udp        0      0 192.168.1.104:53            0.0.0.0:*                               4794/named

udp        0      0 192.168.1.45:53             0.0.0.0:*                               4794/named

udp        0      0 127.0.0.1:53                0.0.0.0:*                               4794/named

udp        0      0 0.0.0.0:67                  0.0.0.0:*                               8257/dhcpd

udp        0      0 0.0.0.0:68                  0.0.0.0:*                               3420/dhclient

udp        0      0 0.0.0.0:49000               0.0.0.0:*                               4294/avahi-daemon

udp        0      0 0.0.0.0:5353                0.0.0.0:*                               4294/avahi-daemon

udp        0      0 0.0.0.0:111                 0.0.0.0:*                               3675/portmap

udp        0      0 0.0.0.0:631                 0.0.0.0:*                               4106/cupsd

udp        0      0 :::5353                     :::*                                    4294/avahi-daemon

udp        0      0 :::37497                    :::*                                    4294/avahi-daemon

[root@localhost ~]#


教室里有dhcp,服务器是个dhcp,无线路由也提供dhcp,,,,共计三个dhcp服务器

我们的客户使用哪个dhcp呢,谁的响应快,就使用谁提供的地址


在客户端上 

image.png

image.png

image.png

image.png

image.png


修改过后,重启网络服务

# server network restart

image.png

看看地址 

#ifconfig

image.png

我这里看不出来 是哪个dhcp提供的客户端地址

马哥那边能看出来不是配置的dhcp服务器提供的地址

下图是马哥的

image.png


在服务器端(192.168.1.45) (干脆提供192.168.1.33),我们固定地址(保留地址) 

[root@localhost ~]# vim /etc/dhcpd.conf

ddns-update-style interim;

ignore client-updates;


subnet 192.168.1.0 netmask 255.255.255.0 {


# --- default gateway

        option routers                  192.168.1.1;

        option subnet-mask              255.255.255.0;


        option nis-domain               "domain.org";

        option domain-name              "mageedu.comgg";

        option domain-name-servers      192.168.1.1;


        option time-offset              -18000; # Eastern Standard Time

#       option ntp-servers              192.168.1.1;

#       option netbios-name-servers     192.168.1.1;

# --- Selects point-to-point node (default is hybrid). Don't change this unless

# -- you understand Netbios very well

#       option netbios-node-type 2;


        range 192.168.1.10 192.168.1.20;

        default-lease-time 21600;

        max-lease-time 43200;


        # we want the nameserver to appear at a fixed address

        host ns2 {    #随便起个名 ns2

               next-server marvin.redhat.com;

               hardware ethernet 00:0C:29:0F:3A:5D;    #把上面的客户端的 mac地址填进来

                    #当然 00:0C:29 是 vmware固定的前缀

               fixed-address 192.168.1.33;    #一定不能是地址池中的地址

        }

}


在服务器端 (192.168.1.45)  把汉字注释去掉,如下

[root@localhost ~]# vim /etc/dhcpd.conf

ddns-update-style interim;

ignore client-updates;


subnet 192.168.1.0 netmask 255.255.255.0 {


# --- default gateway

        option routers                  192.168.1.1;

        option subnet-mask              255.255.255.0;


        option nis-domain               "domain.org";

        option domain-name              "mageedu.comgg";

        option domain-name-servers      192.168.1.1;


        option time-offset              -18000; # Eastern Standard Time

#       option ntp-servers              192.168.1.1;

#       option netbios-name-servers     192.168.1.1;

# --- Selects point-to-point node (default is hybrid). Don't change this unless

# -- you understand Netbios very well

#       option netbios-node-type 2;


        range 192.168.1.10 192.168.1.20;

        default-lease-time 21600;

        max-lease-time 43200;


        # we want the nameserver to appear at a fixed address

        host ns2 {

                next-server marvin.redhat.com;

                hardware ethernet 00:0C:29:0F:3A:5D;

                fixed-address 192.168.1.33;

        }

}


在服务器端 (192.168.1.45)

[root@localhost ~]# service dhcpd restart

关闭 dhcpd:                                               [确定]

启动 dhcpd:                                               [确定]

[root@localhost ~]#



客户端 (网卡是 00:0C:29:0F:3A:5D )重启网络

# service network restart

image.png

客户端 ( 网卡是 00:0C:29:0F:3A:5D ) 看ip ,,,,可以看到192.168.1.33 已经生效了,所以专用地址(固定地址 保留地址) 优先级要高

image.png


服务器端 (192.168.1.45)

[root@localhost ~]# tail /var/lib/dhcpd/dhcpd.leases            (可以看到租约)

# This lease file was written by isc-dhcp-V3.0.5-RedHat


lease 192.168.1.20 {

  starts 1 2019/02/18 08:57:46;

  ends 1 2019/02/18 14:57:46;

  tstp 1 2019/02/18 14:57:46;

  binding state active;

  next binding state free;

  hardware ethernet 00:0c:29:0f:3a:5d;

}

[root@localhost ~]#


[root@localhost ~]# tail /var/lib/dhcpd/dhcpd.leases~

  next binding state free;

  hardware ethernet 00:0c:29:0f:3a:5d;

}

lease 192.168.1.20 {

  starts 1 2019/02/18 08:57:46;

  ends 1 2019/02/18 14:57:46;

  binding state active;

  next binding state free;

  hardware ethernet 00:0c:29:0f:3a:5d;

}

[root@localhost ~]#


教室里太多人做dhcp服务器,地址太多  我们只让两台电脑在一起,其中一台做dhcp


当然不用桥接了 也不要NAT 也不用Host-only (因为这两种情况下,vmware本身也作为一个dhcp服务器)

(当然把vmware的hdcp服务器关掉就可以了)

image.png

(马哥的英文图)

image.png





image.png

(下面把 vmware的hdcp服务器关掉就可以了)


image.png

(马哥的英文图)

image.png


我们使用另一种虚拟的办法 让两个主机在同一个网络中 (VMnet2) (内部的独有的假设出来的专用网络)

(此时谁都连不上这个网络VMnet2,连物理机都连不上,它们两在一个虚拟的私有的网络中通信,跟物理机都没法通信了)

服务器端 和 客户端 都是同样如 下面几个图的配置

image.png

image.png


(假如有两个网卡的话,把没有用到的网卡断掉吧) 下图是断掉第二个网卡

image.png)


服务端 ( 192.168.1.45 )

# vim /etc/dhcpd.conf         (把固定地址(保留地址)任意改下吧,改下后,就说明不是使用原来的固定地址(保留地址)了)

image.png

 服务端 ( 192.168.1.45 )

  # service dhcpd restart 

image.png

# service network restart

image.png

(这个报错,大约是因为禁用了 eth1 这个网卡吧)

客户端   ( 00:0c:29:0f:3a:5d 这个网卡的电脑 )

# service network restart

image.png

# ifconfig       ( 00:0c:29:0f:3a:5d  这个网卡的电脑 )           可以看到ip是最大的

image.png


# tail /var/lib/dhcpd/dhcpd.leases         可以看到租约了

192.168.1.20 分配给 00:0c29:0f:3a:5d 了

starts 租约开始时间

ends  租约结束时间

image.png


刚刚每次都要重启客户端网络服务的,我们可以不必这么麻烦

[root@localhost ~]# dhclient -h

Internet Systems Consortium DHCP Client V3.0.5-RedHat

Copyright 2004-2006 Internet Systems Consortium.

All rights reserved.

For info, please visit http://www.isc.org/sw/dhcp/

Usage: dhclient [-1dqr] [-nwx] [-p <port>] [-s server]                [-cf config-file] [-lf lease-file][-pf pid-file] [-e VAR=val]                [ -I <dhcp-client-identifier> ] [-B]

                [ -H <host-name> | -F <fqdn.fqdn> ] [ -T <timeout> ]

                [ -V <vendor-class-identifier> ]

                [ -R <request option list> ]

                [-sf script-file] [interface][root@localhost ~]#



[root@localhost ~]# man dhclient

image.png


客户端 关闭client

image.png


客户端

# dhclient eth0  (只有一个网卡吧 不指eth0也行)

# dhclient


Listening on 监听哪个网卡

Sending on 从哪个网卡发送的

DHCPOFFER 哪个dhcp服务器提供地址的

HDCPACK  哪个dhcp地址确认

bound 客户绑定ip地址  可以看到是最大的

image.png

# dhclient             是个运行的进程 不能执行第二次  

dhclient (10431) is already running - exiting. (提示 dhclient 已经在运行)

image.png

# killall dhclient        把这个进程杀死

# dhclient    重来一次申请ip地址

image.png


服务器        ( 192.168.1.45 )

# vim /etc/dhcpd.conf

image.png

image.png

# service dhcpd restart             (重启dhcpd服务器)

image.png


客户端

# killall dhclient        把这个进程杀死

# dhclient    重来一次申请ip地址

DHCPREQUEST 请求续租  这里请求了两次(因为人家192.168.1.20 还没有到期,请求了两次)

(因为列表中不包含 192.168.1.20  这个地址了,所以服务器端不给这个地址了)

所以重新 DHCPDISCOVER

.....................

最终给的地址是  192.168.1.18

image.png


每次都要 killall ,如果不想每次使用killall

可以使用 # dhclient -d  (但第一次时 必须要先 执行killall 即  #  killall dhclient  )

(  dhclient -d  是工作在前台的 )

image.png

ctrl+c 取消执行 



dhcp的功能是非常强大的,它可以分类获得地址的

可以让windows获得200以上的地址

让linux获得200以下的地址,

dhcp可以根据操作系统来判断的客户端来源分类的

还能根据网卡地址来分类,比如是虚拟机的话,可以给特定的网段地址

不是虚拟机的话,再给特定的网段地址

windows的话,再给另外的特定网段地址

这些功能大多数情况下 不怎么用,所以不讲了

配置php的工作环境时,偶尔可能会用到




普通分类: