|NO.Z.00010|——————————|^^ 部署 ^^|——|Linux&DHCP服务.V02|——|4台server|DHCP服务|

一、DHCP服务搭建
### --- 准备实验环境
~~~     两台机器;网络连接模式设为自定义VMnet+模式
~~~     关闭VMware虚拟网络编辑器的DHCP功能,切记。在vmware:默认租约是30分钟,最长租约是2小时。

### --- 防护的关闭:
iptables —L                                                 // 防火墙
gerenforce                                                  // selinux
二、DHCP配置
### --- 实验环境:

centos6.x-server1:server:20.20.20.21    192.168.1.21
centos6.x-server2:client:20.20.20.22    192.168.1.22    随便dhcp分配IP地址
centos6.x-server3:client:20.20.20.23    192.168.1.23    固定dhcp分配IP地址
### --- 检查环境

[root@server21 ~]# getenforce
Disabled
[root@server21 ~]# service iptables status
iptables: Firewall is not running.
[root@server21 ~]# iptables -L                                  // 默认清空是未启动的
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         
Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination  
### --- 检查dhcp和dhcp-common是否安装
### --- yum源设置

[root@server21 ~]# rpm -q dhcp
package dhcp is not installed
[root@server21 ~]# rpm -q dhcp-common
dhcp-common-4.1.1-51.P1.el6.centos.x86_64
三、DHCP安装及配置文件解释说明
### --- 安装dhcp

[root@server21 ~]# yum install -y  dhcp                     // dhcp是向外租赁资源的服务,dhcp需要把资源写入配置文件后才可以启动,没有写入配置文件资源,是启动不成功的。
[root@server21 ~]# cat /etc/dhcp/dhcpd.conf                 // dhcp的配置文件
# DHCP Server Configuration file.
#   see /usr/share/doc/dhcp*/dhcpd.conf.sample              // 去看/usr/share/doc/dhcp下的某一个目录下有一个文件是dhcpd.conf.sample .sample是模板文件,默认是不生效的。作为备用的文件。
#   see 'man 5 dhcpd.conf'                                  // 查看帮助的命令。man 5的级别,就是帮你来解释说明配置你文件的说明
[root@server21 ~]# cp -a /usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample /etc/dhcp/dhcpd.conf       //将母版配置文件复制到dhcp的配置文件出,覆盖
[root@server21 ~]# ll /etc/sysconfig/dhcrelay               // 中继配置文件
四、DHCP配置文件详解
### --- DHCP的分为两种:全局配置和局部配置

[root@server21 ~]# vim  /etc/dhcp/dhcpd.conf
option domain-name "example.org";
option domain-name-servers ns1.example.org, ns2.example.org;    
default-lease-time 600;
max-lease-time 7200;                                        // 以上四条是全部重复的,
log-facility local7;                                        // 日志保存的设备;日志保存到/var/log/masage这个文件
subnet 10.152.187.0 netmask 255.255.255.0 {                 // subnet是一个一个资源池
}
host passacaglia {                                          // 给某一台指定的主机设定一个固定的IP地址
  hardware ethernet 0:0:c0:5d:bd:95;
  filename "vmunix.passacaglia";
  server-name "toccata.fugue.com";
}
class "foo" {                                               // 超级作用域的配置
  match if substring (option vendor-class-identifier, 0, 4) = "SUNW";
}
### --- subnet配置说明

subnet 192.168.88.0 netmask 255.255.255.0 {                 // 声明要分配的网段和子网掩码;dhcp配置文件中subnet下至少有一个声明是当前主机所使用的网段。
    range 192.168.88.3 192.168.88.254;                      // 什么可用IP地址池;range是声明可对外分配的IP地址范围,我们说明是IP地址池。
    option domain-name :atguigu.com";                       // 设置DNS域
    option domain-name-server 8.8.8.8;                      // 设置DNS服务器地址;若是不分配DNS地址只能在局域网内使用,若是给了DNS地址,就可以进行域名解析,就可以在互联网上通信
    option routers 192.168.88.2;                            // 默认网关地址;设置正确的网关。最好跟NAT地址(桥接地址)匹配一直,
    option broadcast-address 192.168.88.255;                // 广播地址(可不写)
    default-lease-time 600;                                 // 默认租约(S)
    max-lease-time 7200;                                    // 最大租约(s)
}

一、DHCP实验部署:DHCP基本功能实验
### --- 生成配置文件

[root@server21 ~]# cp -a /usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample /etc/dhcp/dhcpd.conf
### --- 修改配置文件
~~~     将配置文件的前几个subnet什么注释掉,修改最后一个subner声明
~~~     注:注意配置文件中每行结尾的分号和结束大括号,谢谢!

[root@server21 ~]# vim /etc/dhcp/dhcpd.conf
subnet 192.168.1.0  netmask 255.255.255.0 {
  range 192.168.1.100 192.168.1.200;
#  option domain-name-servers ns1.internal.example.org;
#  option domain-name "internal.example.org";
#  option routers 10.5.5.1;
#  option broadcast-address 10.5.5.31;
  default-lease-time 600;
  max-lease-time 7200;
}
### --- 重启服务

service dhcpd start
[root@server21 ~]# netstat -tlun 
udp        0      0 0.0.0.0:67                  0.0.0.0:*   
### --- 验证

[root@server22 ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0 // 注销网卡设置
ONBOOT=yes
BOOTPROTO=dhcp
[root@server22 ~]# ifdown eth0;ifup eth0                        // 重启指定网卡,生产环境中不建议使用service,全局使用
[root@server22 ~]# ip addr
 eth0: inet 192.168.1.103/24                                    // 获取有效的IP地址
[root@server22 ~]# tail -10 /var/log/messages                   // 查看日志租约四部曲
Feb  2 02:50:47 localhost dhclient[6424]: DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 4 (xid=0x108757ee        //DHCPDISCOVER发起一个请求,来自于哪里)
Feb  2 02:50:47 localhost dhclient[6424]: DHCPOFFER from 192.168.1.1                                                        //DHCPOFFER
Feb  2 02:50:47 localhost dhclient[6424]: DHCPREQUEST on eth0 to 255.255.255.255 port 67 (xid=0x108757ee)                   //DHCPREQUEST
Feb  2 02:50:47 localhost dhclient[6424]: DHCPACK from 192.168.1.1 (xid=0x108757ee)                                         //DHCPACK
Feb  2 02:50:49 localhost NET[6475]: /sbin/dhclient-script : updated /etc/resolv.conf
Feb  2 02:50:50 localhost dhclient[6424]: bound to 192.168.188 -- renewal in 2731 seconds.
二、保留地址(固定地址分配)
### --- 获取客户端的Mac地址

[root@server22 ~]# arp -a                                       // 查看客户机的Mac地址
? (192.168.1.1) at 50:3a:a0:4b:78:ec [ether] on eth0
### --- 修改/etc/dhcp/dhcpd.conf文件

[root@server21 ~]# vim /etc/dhcp/dhcpd.conf 
host fantasia {
  hardware ethernet 50:3a:a0:4b:78:ec;                          // 客户机的Mac地址
  fixed-address 192.168.1.88;                                   // 配置地址池以外的IP地址;//固定分配给客户机的IP地址(可以使用地址池以外的IP)
}
### --- 重启DHCP服务

[root@server21 ~]# service dhcpd restart   
### --- 重启客户机网卡验证IP获取是否成功
~~~     修改客户端网卡配置

[root@server23 ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=dhcp
ifdown eth0; ifup eth0
[root@server23 ~]# ifdown eth0;ifup eth0
### --- 验证

[root@server23 ~]# ifdown eth0;ifup eth0
[root@server23 ~]# ip addr
2: eth0:inet 192.168.1.88/24 
[root@server23 ~]# tail -6 /var/log/messages 
Feb  2 01:46:38 localhost kernel: e1000: eth0 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: RX
Feb  2 01:46:38 localhost kernel: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
Feb  2 01:46:40 localhost dhclient[3324]: DHCPREQUEST on eth0 to 255.255.255.255 port 67 (xid=0x22ec641b)
Feb  2 01:46:40 localhost dhclient[3324]: DHCPACK from 192.168.1.1 (xid=0x22ec641b)
Feb  2 01:46:42 localhost NET[3375]: /sbin/dhclient-script : updated /etc/resolv.conf
Feb  2 01:46:42 localhost dhclient[3324]: bound to 192.168.1.88 -- renewal in 3331 seconds.
[root@server23 ~]# vim /var/log/messages                        // 验证发生了续租
Feb  2 03:15:24 localhost dhcpd: DHCPACK on 192.168.1.104 to 08:00:27:e1:56:1a (localhost) via eth0
Feb  2 03:18:59 localhost dhcpd: DHCPREQUEST for 192.168.1.88 from 54:35:30:62:8c:71 (DESKTOP-MTTRBER) via eth0
三、超级作用域(同一网络域):
### --- 超级作用域介绍
~~~     DHCP服务器可为#单个物理网络上的客户端提供多个作用域租约地址

### --- 实验环境准备
~~~     三台虚拟机同一网络模式,一个DHCP服务器,两个客户机
四、超级作用域:实验步骤
### --- 客户端设置为DHCP网卡

[root@server22 ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0
ONBOOT=yes
BOOTPROTO=dhcp
[root@server22 ~]# ifdown eth0
[root@server23 ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=dhcp
[root@server23 ~]# ifdown eth0
[root@server21 ~]# yum install -y dhcp
### --- 设置DHCP服务器的单臂路由所需子网卡

[root@server21 ~]# cp /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scripts/ifcfg-eth0:0
[root@server21 ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0:0
DEVICE=eth0:0
IPADDR=192.168.2.21
[root@server21 ~]# ifup eth0:0 
[root@server21 ~]# ip addr
2: eth0: 
    inet 192.168.1.21/24 brd 192.168.1.255 scope global eth0
    inet 192.168.2.21/24 brd 192.168.2.255 scope global eth0:0
### --- 开启路由转发

[root@server21 ~]# vim /etc/sysctl.conf
net.ipv4.ip_forward = 1 
[root@server21 ~]# sysctl -p                                    // 刷新内核参数配置文件
net.ipv4.ip_forward = 1 
### --- 修改/etc/dhcp/dhcpd.conf文件                                // 之前的网段声明和主机声明全部注释掉!

[root@server21 ~]# cp -a /usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample /etc/dhcp/dhcpd.conf
[root@server21 ~]# vim /etc/dhcp/dhcpd.conf
class "foo" {
  match if substring (option vendor-class-identifier, 0, 4) = "SUNW";
}
shared-network 1-2 {                                            // 所使用网段的地址192.168.1.21 192.168.2.21
  subnet 192.168.1.0 netmask 255.255.255.0 {
    option routers 192.168.1.21;
    range 192.168.1.100 192.168.1.100;                          // 因为我们需要验证第一个网段不够用的时候,再去分配下一个地址,设置一个来获取验证。
  }
  subnet 192.168.2.0 netmask 255.255.255.0 {                    // 摄于内容注释掉或者删除掉,切记别拉下括号
    option routers 192.168.2.21;
    range 192.168.2.100 192.168.2.200;
  } 
} 
### --- 重启DHCP服务

[root@server21 ~]# service dhcpd restart
### --- 分别重启两台机器的网卡,查看获取的地址

[root@server22 ~]# ifup eth0
[root@server22 ~]# ip addr
2: eth0:inet 192.168.1.100/24                                   // 获取到的地址是192.168.1.103
[root@server23 ~]# ifup eth0
[root@server23 ~]# ip addr
2: eth0: 192.168.2.100/24 
[root@server22 ~]# ping 192.168.2.100                           // 这两个客户机之间ping是可以正常通信的, 

一、DHCP中继
### --- DHCP中继

~~~     DHCP中继介绍:DHCP Relay(DHCPR)DHCP中继是一个小程序,
~~~     可以实现在不同和物理网段之间处理和转发DHCP信息的功能。
二、实验环境准备
### --- DHCP服务器
eth0 (192.168.1.21) VMnet10

### --- DHCP中继
eth0 (192.168.1.21)VMnet10
eth1 (20.20.20.21)VMnet11
### --- 外网客户机:
### --- 注:关闭所有防护:iptables Selinux

eth0 (IP地址自动获取) VMnet11
三、配置DHCP服务器
### --- 配置DHCP服务器
### --- 客户端网卡eth0设置为dhcp ifdown eht0

[root@server22 ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0
ONBOOT=yes
BOOTPROTO=dhcp
[root@server22 ~]# ifdown eth0
[root@server23 ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0
ONBOOT=yes
BOOTPROTO=dhcp
[root@server23 ~]# ifdown eth0
### --- 软件安装

[root@server21 ~]# yum install -y dhcp
[root@server21 ~]# cp -a /usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample /etc/dhcp/dhcpd.conf
### --- 修改/etc/dhcp/dhcpd.conf文件
~~~     声明两个subnet,其他无关可以不做操作或删除

[root@server21 ~]# vim /etc/dhcp/dhcpd.conf 
subnet 192.168.1.0 netmask 255.255.255.0 {
  range 192.168.1.100 192.168.1.200;
  option routers 192.168.1.21;
  default-lease-time 600;
  max-lease-time 7200;
}
subnet 10.10.10.0 netmask 255.255.255.0 {
  range 10.10.10.10 10.10.10.200;
  option routers 10.10.10.21;
  default-lease-time 600;
  max-lease-time 7200;
}
### --- 重启dhcpd服务:

[root@server21 ~]# service dhcpd start
### --- 指定网关:只能中继器的内网IP为网关地址
### --- 配置DHCP中继服务器
### --- 网卡配置

~~~     一块网卡:ip=192.168.10.20
~~~     一块网卡:ip=100.100.100.20
### --- 软件安装
[root@server22 ~]# yum install -y dhcp
 
### --- 修改中继配置文件
[root@server22 ~]# vim /etc/sysconfig/dhcrelay
INTERFACES="eth0 eth1"
DHCPSERVERS="192.168.1.21"
### --- 开启路由转发
[root@server22 ~]# vim /etc/sysctl.conf 
net.ipv4.ip_forward = 1
[root@server22 ~]# sysctl -p
net.ipv4.ip_forward = 1

### --- 重启中继服务
[root@server22 ~]# service dhcrelay start
### --- 测试外网主机
[root@server21 ~]# tail -f /var/log/messages                    // 实时查看dhcp服务器的日志
[root@server22 ~]# tail -f /var/log/messages                    // 实时查看中继下的日志有什么区别
[root@server23 ~]# ifup eth0                                    // 重启客户端网卡
[root@server23 ~]# ip addr
2: eth0: inet 192.168.1.104/24 
四、拓展实验:此图核试验规划有所区别,实验规划只是用一台测试机,此图使用了两台

 
 
 
 
 
 
 
 
 

Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart
                                                                                                                                                   ——W.S.Landor

 

 

posted on   yanqi_vip  阅读(17)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

导航

统计

点击右上角即可分享
微信分享提示