科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网网络频道Linux 作为 DHCP 服务器

Linux 作为 DHCP 服务器

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

大多数的情况下 Linux作为 DHCP 服务器而 windows95/98 作为 DHCP 客户。Linux 也可以作为 DHCP 客户,即你要安装 dhcpcd rpm 软件包 ,Linux 作为 DHCP 服务器,只需要安装 dhcpd rpm 包。

作者:论坛整理 来源:zdnet网络安全 2008年3月26日

关键字: DHCP DHCP协议 DHCP服务器 网络协议

  • 评论
  • 分享微博
  • 分享邮件

  大多数的情况下 Linux作为 DHCP 服务器而 windows95/98 作为 DHCP 客户。Linux 也可以作为 DHCP 客户,即你要安装 dhcpcd rpm 软件包 ,Linux 作为 DHCP 服务器,只需要安装 dhcpd rpm 包。

  一.DHCP 服务器工作的前提条件:

  为了使 DHCP 服务器为 windows 机器服务,你可能需要创建一个到地址 255.255.255.255 的路由,加这条路由命令到 /etc/rc.d/rc.local 使得每次启动后自动运行。

  #route add -host 255.255.255.255 dev eth0

  如果报告错误消息:255.255.255.255:Unkown host

  试着加下面的入口到 /etc/hosts 文件:

  #route add -host dhcp dev eth0 。

  二.DHCPd 后台程序总是读取配置文件/etc/dhcpd.conf, 下面给出一个 DHCP 配置文件的例子:

  #Sample /etc/dhcpd.conf

  default-lease-time 1200;

  max-lease-time 9200;

  option subnet-mask 255.255.255.0;

  option broadcast-address 192.168.1.255;

  option routers 192.168.1.254;

  option domain-name-servers 192.168.1.1,192.168.1.2;

  option domain-name "mydomain.org";

  subnet 192.168.1.0 netmask 255.255.255.0 {

  range 192.168.1.10 192.168.1.100;

  range 192.168.1.150 192.168.1.200;

  }

  这将允许 DHCP 服务器分配两段地址范围给客户 192.168.1.10-100 或者 192.168.1.150-200,如果客户不继续请求 DHCP 地址则 1200 秒后释放 IP 地址,否则最大允许租用的时间为 9200 秒。

  服务器发送下面的参数给 DHCP 客户机:用 255.255.255.0 作为子网掩码,用 192.168.1.255 作为广播地址,用 192.168.1.254 作为默认网关,用 192.168.1.1 and 192.168.1.2 作为 DNS服务器如果你要为 windows 客户指定一个 WINS服务器,你需要包括下面的选项到 dhcpd.conf 文件中:option netbios-name-servers 192.168.1.1。

  三.你也能为某块网卡指定固定的 IP 地址,无论何时,这块网卡将总是从 DHCP 服务器获得固定的IP地址,加下面的语句到 /etc/dhcpd.conf:

  host haagen {

  hardware ethernet 08:00:2b:4c:59:23;

  fixed-address 192.168.1.222;

  }

  也可连写为一行:

  host Jephe {hardware ethernet 00:a0:c9:a6:96:33;fixed-address 192.168.1.12;}

  你也可为某台机器指定不同的网关地址,名服务器等:

  host Jephe {hardware ethernet 00:a0:c9:a6:96:33;fixed-address 192.168.1.12;option routers 192.168.11.5;}

  四. 大多数情况下,DHCP 的安装不创建一个 dhcpd.leases 文件,在你启动 DHCP 服务器之前,你必须创建空文件 dhcpd.leases:

  #touch /var/state/dhcp/dhcpd.leases

  为启动 DHCP 服务器,简单地打入 /usr/sbin/dhcpd 或者用 #ntsysv 把 DHCP 服务自动启动,这将启动 dhcpd 在 eth0 设备上;如果你想在 eth1 设备上启动 dhcpd,则 #/usr/sbin/dhcpd eth1;如果为了调试 DHCP,则用 #/usr/sbin/dhcpd -d -f。

  五.两块网卡的情况:

  有时你需要在一台安装了两块网卡(作防火墙或网关)的机器上安装 DHCP 服务,下面的例子指出一台防火墙机器上的一种 DHCP 设置,因为对外的网卡(internet)不需要提供 DHCP 服务。

  因此这样设置如下:

  subnet 192.168.1.0 netmask 255.255.255.0 {

  range 192.168.1.2 192.168.1.4;

  default-lease-time 86400;

  max-lease-time 259200;

  option subnet-mask 255.255.255.0;

  option broadcast-address 192.168.1.255;

  option routers 192.168.1.254;

  option domain-name-servers 192.168.1.254;

  }

  subnet 202.102.34.102 netmask 255.255.255.255 {

  }

  六. FAQ

  a. 为 MAC 机器固定 IP 地址?

  当设置 MAC 机用 DHCP 功能获得 IP 地址后,如不知得到何地址,可在 MAC 机上发送一邮件出去,收信者可通过 mail header 检查发送者 IP 地址,而后 ping 该 IP 地址再利用 arp命令检查 arp 缓存中的该 IP 地址的对应物理地址。

  b. 若 LAN 上有 windows 机器装上了某 DHCP 功能的软件,如 sygate, wingate 之类,则可能其他 windows 客户会优先去寻找 windows DHCP 服务器,而不是 Linux DHCP 服务器。

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章