环境如下:        (参考之前,保证二个子网可以互相ping通)

虚拟机vm1        192.168.170.3                    VMnet8 (NAT模式)

虚拟机vm2        192.168.155.3                    VMnet1 (仅主机模式)

虚拟机gate        192.168.170.4 (eth1)       VMnet8 (NAT模式)

192.168.155.4 (eth0)       VMnet1 (仅主机模式)

第一种:在网关gate配置DHCP服务器

(eth0)   为   192.168.155.0/24   子网提供IP地址分配服务

(eth1)   为   192.168.170.0/24   子网提供IP地址分配服务

1、putty连接192.168.170.4

[root@mail root]#  vi    /etc/dhcpd.conf

ddns-update-style interim;
ignore client-updates; subnet 192.168.155.0 netmask 255.255.255.0 { option routers 192.168.155.4;
option subnet-mask 255.255.255.0;
option domain-name-servers 192.168.155.4;
option time-offset 28800; # Eastern Standard Time range 192.168.155.10 192.168.155.198;
default-lease-time 86400;
max-lease-time 172800; host www {
next-server marvin.redhat.com;
hardware ethernet 12:34:56:78:AB:CD;
fixed-address 207.175.42.254; } } subnet 192.168.170.0 netmask 255.255.255.0 { option routers 192.168.170.4;
option subnet-mask 255.255.255.0;
option domain-name-servers 192.168.170.4;
option time-offset 28800; # Eastern Standard Time range 192.168.170.6 192.168.170.230;
default-lease-time 86400;
max-lease-time 172800; host nd {
next-server marvin.redhat.com;
hardware ethernet 12:34:56:78:AB:CD;
fixed-address 207.175.42.254; }
}

设置eth0网卡的IP地址,直接编辑

[root@mail root]#  vi    /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.155.4
NETMASK=255.255.255.0
GATEWAY=192.168.155.4

设置eth1网卡的IP地址,直接编辑

[root@mail root]#  vi    /etc/sysconfig/network-scripts/ifcfg-eth1

DEVICE=eth1
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.170.4
NETMASK=255.255.255.0
GATEWAY=192.168.170.4

重启network,DHCP服务

[root@mail sysconfig]#  service    network    restart

[root@mail sysconfig]#   service    dhcpd   restart

测试二个子网是否都正常工作

如果在Windows端
①将 VMnet1 和 VMnet8 的(属性-》TCP/IPv4-》把里面的“自动获取IP”打上勾,设置DNS服务器)

   

等几分钟,正常如下图   (出现网络几)

②cmd 进命令行 ipconfig /all

(看 ip 是不是在 刚才设置的ip范围之内,和下面红色部分与设置的一致)

(注意:

1、因为会有租期的影响,如果某步设置出错,重启DHCP服务后,IP地址不变,可以把系统时间调快几天,让租约失效,重新获取。

2、

看看 VMnet1 和 VMnet8 的IP在刚才设置文件里面的范围?如果不是,可能就是其他虚拟机分配的IP。去把DHCP服务关闭就好了。
到主界面 “编辑”-》分别把“使用本地DHCP服务将IP地址分配给虚拟机”的勾 去掉。

再禁用,然后启动 这二个网卡,重新获取

3、可能子网其他的DHCP服务器分配了,这时候只能看看是那个关掉其DHCP服务

如果在Linux端也可以用  dhclient 命令来测试DHCP服务

第二种:配置DHCP中继代理服务器

(如果做了第一种,先把gate的DHCP服务关闭,避免影响今次实验)

DHCP请求广播包是不能通过路由器的,因为路由器是具有隔离广播风暴的功能。

所以在VM1建立DHCP服务器,192.168.155.0/24子网是没法获取到的,这时候就需要在VM2建立DHCP中继代理服务器。

(二个子网要ping通,这里VM1和VM2ping通)

1、在VM1(170.3)建立DHCP服务器,基本步骤 跟上一篇基本一样,就是/etc/dhcpd.conf文件多了个子网

[root@localhost root]#  vi    /etc/dhcpd.conf

ddns-update-style interim;
ignore client-updates;
subnet 192.168.170.0 netmask 255.255.255.0 {
option routers 192.168.170.4;
option subnet-mask 255.255.255.0;
option domain-name "gr.org";
option domain-name-servers 192.168.170.3;
option time-offset 28800;
range dynamic-bootp 192.168.170.30 192.168.170.110;
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; }
} subnet 192.168.155.0 netmask 255.255.255.0 { option routers 192.168.155.4;
option subnet-mask 255.255.255.0;
option domain-name-servers 192.168.155.3;
option time-offset 28800; # Eastern Standard Time
range 192.168.155.81 192.168.155.200;
default-lease-time 86400;
max-lease-time 172800; }

2、gate端

保证开启转发   ( 以前做过可以跳过 )

[root@localhost root]#  vi    /etc/sysctl.conf

net.ipv4.ip_forward = 1

[root@localhost root]# sysctl    -p   (更改生效)

关闭防火墙,或者以后学到防火墙时,直接放行66和67端口

[root@localhost root]#  service    iptables    stop

3、VM2(155.3)开始配置DHCP中继代理服务器

先安装DHCP软件,参考上一篇

[root@localhost root]#  vi     /etc/sysconfig/dhcrelay  (设置DHCP服务器)

# Command line options here
INTERFACES="eth0"
DHCPSERVERS="192.168.170.3"

[root@localhost root]#   service   dhcrelay    start      (启动中继服务)
启动 dhcrelay:                                            [  确定  ]

4、去Windows端测试

禁用,再启动,出现下图

CMD命令行输入   ipconfig/all

IP在设置范围之内,正确。

去170.3机查看分配的IP网络信息
[root@localhost root]#   cat    /var/lib/dhcp/dhcpd.leases

7、二种 为二个不同的子网配置DHCP服务器(中继代理服务器)的更多相关文章

  1. mysql 远程连接数据库的二种方法

    http://blog.csdn.net/freecodetor/article/details/5799550 一.连接远程数据库: 1.显示密码 如:MySQL 连接远程数据库(192.168.5 ...

  2. IIS7.5使用web.config设置伪静态的二种方法

    转自 网上赚钱自学网 .http://www.whosmall.com/post/121 近几天公司里开发的项目有几个运行在IIS7.5上,由于全站采用的是伪静态,因此从网上找到两两种方法来实现.这两 ...

  3. 8、FTP,二种文本传输模式

    一.基本知识 1. FTP是 TCP/IP协议族 的协议之一,简称文件传输协议,主要用于远距离文件传输,如文件的上传和下载 2. 下面都是以VSFTP服务器为例 VSFTP服务器的用户有三种形式: 匿 ...

  4. Dynamic CRM 2013学习笔记(二十)字段改变事件的二种实现方法

    CRM里有二种方式实现字段change事件,一种是在form里,一种完全通过js来实现.本文介绍下二者的用途及区别. 1. Form里用法 这种方式估计其实也是添加一个js的function. 这种方 ...

  5. SpringJUnit4加载类目录下(src)和WEF-INF目录下的配置文件二--获取注入的bean的二种方式

    前言: spring容器以xml的形式注入bean,然后可以在类中获取,获取的形式主要有二种:第一种最简单--采用@Resource 或@Autowired关键字在加载spring文件时将bean注入 ...

  6. php分页类的二种调用方法(转载)

    php分页类的二种调用方法 原文地址:http://www.xfcodes.com/php/fenye/25584.htm 导读:php分页类的二种调用用法,ajax调用php分页类,非ajax方式调 ...

  7. UserView--第二种方式(避免第一种方式Set饱和),基于Spark算子的java代码实现

      UserView--第二种方式(避免第一种方式Set饱和),基于Spark算子的java代码实现   测试数据 java代码 package com.hzf.spark.study; import ...

  8. mysql 远程连接数据库的二种方法

    一.连接远程数据库: 1.显示密码 如:MySQL 连接远程数据库(192.168.5.116),端口"3306",用户名为"root",密码"123 ...

  9. django之创建第7-5-第二种传值方式(time/1232/xiaodneg)

    1.修改views文件 def foo(request,myID,myName): t = loader.get_template("foo.html") user = {&quo ...

随机推荐

  1. 使用Red Gate Sql Compare 数据库同步工具进行SQL Server的两个数据库的结构比较、同步

    将测试版的项目同步(部署)到正式版的时候,两个数据库的结构比较与同步时,如果修改数据库的时候没有记录好修改了那些表,很难将两个数据库进行同步 RedGate Sql Compare使用简介说明: 1. ...

  2. 【原】SDWebImage源码阅读(四)

    [原]SDWebImage源码阅读(四) 本文转载请注明出处 —— polobymulberry-博客园 1. 前言 SDWebImage中主要实现了NSURLConnectionDataDelega ...

  3. 没有神话,聊聊decimal的“障眼法”

    0x00 前言 在上一篇文章<妥协与取舍,解构C#中的小数运算>的留言区域有很多朋友都不约而同的说道了C#中的decimal类型.事实上之前的那篇文章的立意主要在于聊聊使用二进制的计算机是 ...

  4. 跨域之jsonp

    我们都知道使用<script>标签可以引入外部的JS文件,即使这个JS文件来自于其他的网站,比如我们引用存放在网络服务器上的jQuery框架.在这个过程中,我们已经实现跨域访问.像< ...

  5. 黄聪:如何给wordpress的编辑器添加一个自定义按钮,并且实现插入功能

    1.添加按钮 在  functions.php  文件里面添加下面代码: add_action('media_buttons', 'add_my_media_button'); function ad ...

  6. Javascript单例模式概念与实例

    前言 和其他编程语言一样,Javascript同样拥有着很多种设计模式,比如单例模式.代理模式.观察者模式等,熟练运用Javascript的设计模式可以使我们的代码逻辑更加清晰,并且更加易于维护和重构 ...

  7. python学习笔记(基础二:注释、用户输入、格式化输出)

    注释 单行:# 多行:上下各用3个连续单引号或双引号 3个引号除了多行注释,还可以打印多行 举例: msg = ''' name = "Alex Li" name2 = name ...

  8. [moka同学笔记]PHPexcel之excel导出和导入

    原案例来自http://www.sucaihuo.com/有修改 1.目录结构(文件不用解释,应该都可以看得懂,直接看代码)

  9. C#工业物联网和集成系统解决方案的技术路线(数据源、数据采集、数据上传与接收、ActiveMQ、Mongodb、WebApi、手机App)

    目       录 工业物联网和集成系统解决方案的技术路线... 1 前言... 1 第一章           系统架构... 3 1.1           硬件构架图... 3 1.2      ...

  10. java web学习总结(二十四) -------------------Servlet文件上传和下载的实现

    在Web应用系统开发中,文件上传和下载功能是非常常用的功能,今天来讲一下JavaWeb中的文件上传和下载功能的实现. 对于文件上传,浏览器在上传的过程中是将文件以流的形式提交到服务器端的,如果直接使用 ...