zoukankan      html  css  js  c++  java
  • DHCP--简介、安装、中继实现

    一、DHCP简介

    DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)通常被应用在大型的局域网络环境中,主要作用是集中的管理、分配IP地址,使网络环境中的主机动态的获得IP地址、Gateway地址、DNS服务器地址等信息,并能够提升地址的使用率。
    DHCP协议采用客户端/服务器模型,主机地址的动态分配任务由网络主机驱动。当DHCP服务器接收到来自网络主机申请地址的信息时,才会向网络主机发送相关的地址配置等信息,以实现网络主机地址信息的动态配置。DHCP具有以下功能:
    1. 保证任何IP地址在同一时刻只能由一台DHCP客户机所使用。
    2. DHCP应当可以给用户分配永久固定的IP地址。
    3. DHCP应当可以同用其他方法获得IP地址的主机共存(如手工配置IP地址的主机)。
    4. DHCP服务器应当向现有的BOOTP客户端提供服务。
    DHCP有三种机制分配IP地址:
    1) 自动分配方式(Automatic Allocation),DHCP服务器为主机指定一个永久性的IP地址,一旦DHCP客户端第一次成功从DHCP服务器端租用到IP地址后,就可以永久性的使用该地址。
    2) 动态分配方式(Dynamic Allocation),DHCP服务器给主机指定一个具有时间限制的IP地址,时间到期或主机明确表示放弃该地址时,该地址可以被其他主机使用。
    3) 手工分配方式(Manual Allocation),客户端的IP地址是由网络管理员指定的,DHCP服务器只是将指定的IP地址告诉客户端主机。
    三种地址分配方式中,只有动态分配可以重复使用客户端不再需要的地址。
    DHCP消息的格式是基于BOOTP(Bootstrap Protocol)消息格式的,这就要求设备具有BOOTP中继代理的功能,并能够与BOOTP客户端和DHCP服务器实现交互。BOOTP中继代理的功能,使得没有必要在每个物理网络都部署一个DHCP服务器。RFC 951和RFC 1542对BOOTP协议进行了详细描述。

    二、环境介绍

    A   Server DHCP服务端
    B   Client DHCP客户端
    C   Relay 中继服务器

    三、DHCP安装

    1.server端执行以下操作:

    service iptables stop                   # 临时关闭防火墙
    setenforce 0                        # 临时关闭 selinux
    chkconfig --level 2345 NetworkManager off     # 停止网络管理服务的开机自启动设置
    service NetworkManager stop              # 关闭网络管理服务

    2.编辑网卡设置
    vim  /etc/sysconfig/network-scripts/ifcfg-eth0

    DEVICE=eth0
    TYPE=Ethernet
    ONBOOT=yes
    NM_CONTROLLED=no        #表示该接口将通过该配置文件进行设置,而不是通过网络管理器进行管理
    BOOTPROTO=static        #服务器自身使用静态IP地址
    IPADDR=10.1.1.88        #配置地址为
    GATEWAY=10.1.1.2         #网关配置

    3.开始安装DHCP

    yum -y install dhcp*

    4.编辑DHCP配置文件

    vim /etc/dhcp/dhcpd.conf

    allow bootp;
    default-lease-time 172800;                   #默认租约时间(单位为秒,48小时为48*3600秒,即172800秒)
    max-lease-time 172800;                     #最大租约时间
    log-facility local7;                      #syslog设置,可以到/var/log/syslog文件查看DHCP分配的日志
    subnet 10.1.1.0 netmask 255.255.255.0 {           #子网和子网掩码
    option routers 10.1.1.2;                     #客户端的默认网关
    option subnet-mask 255.255.255.0;               #客户端的子网掩码
    option domain-name "test.com";                #客户端的搜索域
    option domain-name-servers 10.1.1.2;             #客户端的域名服务器
    range dynamic-bootp 10.1.1.150 10.1.1.200;          #可供分配的IP范围
    }

    5.配置文件修改完成后重启DHCP服务

    service dhcpd restart

    6.修改Client端网卡文件

    vim /etc/sysconfig/network-scripts/ifcfg-eth0

    DEVICE=eth0
    TYPE=Ethernet
    ONBOOT=yes
    NM_CONTROLLED=no      #不通过网络管理器进行管理
    BOOTPROTO=dhcp        #通过dhcp服务来获得IP

    7.重启Client端网卡

    service network restart

    8.查看客户端网卡

    ifconfig       #查看结果若为10.1.1.150-200之间,测试即为成功。

    四、DHCP中继

    用DHCP Relay代理可以去掉在每个物理的网段都要有DHCP服务器的必要,它可以传递消息到不在同一个物理子网的DHCP服务器,也可以将服务器的消息传回给不在同一个物理子网的DHCP客户机。

    1.Server端修改DHCP服务配置文件,增加子网设置并重启服务:

    vim /etc/dhcp/dhcpd.conf

    subnet 10.1.2.0 netmask 255.255.255.0 {
    option routers 10.1.2.2;                          #客户端的默认网关
    option subnet-mask 255.255.255.0; option domain-name "test.com";  #客户端的搜索域
    option domain-name-servers 10.1.1.2;                   #客户端的域名服务器
    range dynamic-bootp 10.1.2.150 10.1.2.200;                #可供分配的IP范围
    }

    service dhcpd restart

    2.在中继服务器中安装DHCP

    yum install dhcp*   -y 
    安装dhcp软件包,安装完之后,就已经包含了dhcp中继相关的程序和脚本等文件。

    3.配置dhcp中继服务器,只需修改配置文件/etc/sysconfig/dhcrelay服务即可,作为路由器使用时,还需要开启服务器的路由转发功能。

    vim  /etc/sysconfig/dhcrelay

    INTERFACES="eth0 eth1"        #指定要监听网卡,不定义就是监听所有
    DHCPSERVERS="10.1.1.88"        #指定DHCP服务器的地址

    4.修改网卡配置文件

    vim /etc/sysconfig/network-scripts/ifcfg-eth0

    DEVICE=eth0
    TYPE=Ethernet
    ONBOOT=yes
    BOOTPROTO=static
    IPADDR=10.1.1.2
    NETMASK=255.255.255.0
    GATEWAY=10.1.1.2
    NM_CONTROLLED=no#不通过网络管理器进行管理

    vim /etc/sysconfig/network-scripts/ifcfg-eth1

    DEVICE=eth1
    TYPE=Ethernet
    ONBOOT=yes
    BOOTPROTO=static
    IPADDR=10.1.2.1
    NETMASK=255.255.255.0
    GATEWAY=10.1.2.1
    NM_CONTROLLED=no#不通过网络管理器进行管理

    5.开启路由转发功能、重启网卡、重启DHCP中继服务

    echo 1 > /proc/sys/net/ipv4/ip_forward
    service network restart
    service  dhcrelay restart 

    6.可新部署一台客户端重复上面客户端操作验证是否可以获取IP

  • 相关阅读:
    系统编程-进程-fork深度理解、vfork简介
    九鼎S5PV210开发板的SD卡启动、uboot tftp升级内核镜像
    jiffies相关时间比较函数time_after、time_before详解
    Java基础第六章(循环结构二)
    Java基础第五章(循环结构一)
    Java基础第四章(选择结构二)
    Java基础第三章(选择结构一)
    Java基础第二章(变量、数据类型和运算符)
    Java基础第一章
    HTML iframe的使用
  • 原文地址:https://www.cnblogs.com/Huang-Niu/p/11331809.html
Copyright © 2011-2022 走看看