Linux下dhcp服务器及Linux客户机网络配置

原文:http://linux.chinaitlab.com/server/852407.html


       CentOS Linux环境下如何配置DHCP服务器的方法
    DHCP服务器工作原理
    DHCP(Dynamic Host Configuration Protocol),基于TCP/IP,用于动态配置工作站的网络接口,使工作站的网络接口管理自动化。它使用的一个广播的地址 255.255.255.255向这个局域网发送广播,这个广播的包只能到达同一个硬件设备内的局域网络,不能穿越路由器。网络中的每个客户机依次从 DHCP服务器取得IP。由于使用标准的TCP/IP协议,所以客户机可以是Linux也可以是Windows
    Linux计算机配置成DHCP服务器时要求网卡能够支持多播广播,并且要求启用全部为1的广播地址(255.255.255.255),检查支持广播使用ifconfig命令,输出的内容应该包含以下内容:
    UP BROADCAST RUNING MULTICAST MTU: 1500 METRIC:1
    DHCP服务器软件:
    dhcpd网站:http://www.isc.org
    目前最新版本下载地址是:
    ftp://ftp.isc.org/isc/dhcp/dhcp-3.0.5.tar.gz 或者使用 dhcp-latest.tar.gz
    安装方法:
    # tar xvzf dhcp-latest.tar.gz
    解压
    #cd dhcp-3.0.1/
    # ./configure
    # make
    # make install
    # vi /etc/dhcpd.conf
    //没有配置文件,必须手动编辑
    # touch /var/state/dhcp/dhcpd.leases
    //地址池,记录已经分配的出去的IP,必须有这个文件
    # dhcpd
    //启动服务器
    可以使用# which dhcpd 命令检查软件的安装位置。一般在/usr/sbin/dhcpd有管理的工具。而把二进制文件放在/usr/bin目录下
    # vi /etc/dhcpd.conf。DHCP需要知道自己管理的网段范围,以及分配的网关路由。一般有以下内容
    1. 默认网关
    2. IP地址
    3. 子网掩码
    4. DNS服务器地址
    5. 租用时间


    配置服务器文件 /etc/dhcpd.conf文件的具体内容:
    ddns-update-style none; //必须的
    subnet 10.0.0.0 netmask 255.255.255.0 {
    option routers 10.0.0.254; //默认网关
    option subnet-mask 255.255.255.0; //子网掩码
    option domain-name “centospub.com”; //域名。注意:本域名centospub.com与本站域名无关只是随便写的,以提供本站知名度!
    option domain-name-servers 10.0.0.254; //DNS服务器,必须是配置好的
    range 10.0.0.128 10.0.0.253;
    default-lease-time 21600; //租用时间,默认是秒,6小时
    max-lease-time 43200; //最大租用时间,默认是秒,12小时
    host mail {
    hardware ethernet 12:34:56:78:AB:CD;
    fixed-address 10.0.0.1; //邦定网卡的MAC地址和IP,注意MAC写法
    }
    }
    subnet 10.0.0.0 netmask 255.255.255.0 必须和自己主机的IP地址在一个范围内,不能为别的网段提供服务。
    range 10.0.0.128 10.0.0.253; //很关键,指定分配的地址池,排除已使用的IP和静态IP如上面的DNS服务器的254等!
    启动服务器# usr/sbin/dhcpd
    grep bootp /etc/services 查找DHCP使用的端口号,一般是UDP协议67:

    netstat -unl | grep 67 查看工作是否正常


    Linux客户机的配置:

  修改ifcfg-eth0的文件,将BOOTPROTO选项改为DHCP,自动获取:
    /etc/sysconfig/network-scripts/ifcfg-eth0   

    DEVICE=eth0
  BOOTPROTO=dhcp
  HWADDR=00:0C:29:D1:8D:D2
  ONBOOT=dhcp

    或者使用netconfig配置动态地址, 然后运行:

    重新启动网络服务:

    # service network restart
    这样Linux客户端就可以使用地址了!
    Windows 客户端直接使用自动获取就可以了
    调试:
    调试服务器:
    1. 查看日志文件
    tail -f /var/log/messages
    2. 查看租用记录文件
    more /var/lib/dchp/dhcpd.leases或前面的路径,具体根据自己的设置
    调试客户机:
    #dhclient etho

    Windows下:
    ipconfig /renew
    应用案例:
    要求:
    配置一台DHCP服务器,为100台主机分配地址,使用192.168.0.0/24网段,静态主机地址如下:
    默认网关:192.168.0.254
    DNS服务器:192.168.0.1
    邮件服务器:192.168.0.2
    DHCP服务器:192.168.0.254
    ddns-update-style none;
    subnet 10.0.0.0 netmask 255.255.255.0 {
    option routers 192.168.0.254;
    option subnet-mask 255.255.255.0;
    option domain-name “centospub.com”;
    option domain-name-servers 192.168.0.1;
    range 192.168.0.3 192.168.0.102;
    default-lease-time 21600;
    max-lease-time 43200;
    host ns {
    hardware ethernet 12:34:56:78:AB:CD;
    fixed-address 192.168.0.1;
    }
    host mail {
    hardware ethernet 12:34:56:78:CC:AB;
    fixed-address 192.168.0.2;
    }
    }

    Linux客户机网络及IP的配置:

动态方式:直接在vmware上设置 桥接方式,并选中 复制物理网络状态,使用DHCP模式,就可上网。

使用VirtualBox装了很多虚拟机,默认采用的DHCP的方式,但是随着虚拟机越来越多以后,这种方式很不方便,所以需要将机器的IP都设置为静态IP
      

       
需要添加的几项内容的解释:
IPADDR    IP地址
NETMASK    子网掩码
NETWORK    网关地址

通常,如果我们想更改主机地址为静态地址或者更改主机名,需要修改的几个文件包括:
    /etc/sysconfig/network    设置主机名和网络配置
    /etc/sysconfig/network-scripts/ifcfg-eth0    针对特定的网卡进行设置
    /etc/resolv.conf    设置DNS
    /etc/hosts            设置指定的域名解析地址
    
一般我们只需要修改网卡的配置文件就可以了,例如我的配置文件如下:

    DEVICE=eth0
    BOOTPROTO=static
    TYPE=Ethernet
    NAME="System etho0"
    BROADCAST=192.168.56.255
    HWADDR=08:00:27:24:F8:9B
    IPADDR=192.168.56.101
    IPV6INIT=yes
    IPV6_AUTOCONF=yes
    NETMASK=255.255.255.0
    NETWORK=192.168.56.1
    ONBOOT=yes
    
设置完成后,重启一下网卡就可以了:service network restart

我们还有一个办法可以实现设置静态IP,那就是通过 ifconfig 这个命令。通常,我们都用它来查看当前网卡的一些信息,同时,他也可以用来进行一些网卡信息的设置。

修改的命令如下:ifconfig eth0 192.168.56.102

但是,这个命令执行后,只能够在当前会话中修改网卡的地址,我们看一下 ifcfg-eth0 的配置文件,仍然是
    # Advanced Micro Devices [AMD] 79c970 [PCnet32 LANCE]
    DEVICE=eth0
    ONBOOT=yes
    BOOTPROTO=dhcp
    HWADDR=08:00:27:43:73:2f
也就是说重新启动服务器后,仍然会按照配置文件中的方式进行IP的获取。

所以,如果需要修改IP为静态IP的话,最好的方式还是通过修改配置文件来完成。

参考资料:
1、用ifconfig设置参数遇到的问题            
2、手动设置CentOS的IP       

阅读更多
换一批

没有更多推荐了,返回首页