环境如下:        (参考之前,保证二个子网可以互相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. 基本数据结构(2)——算法导论(12)

    1. 引言     这一篇博文主要介绍链表(linked list),指针和对象的实现,以及有根树的表示. 2. 链表(linked list) (1) 链表介绍      我们在上一篇中提过,栈与队 ...

  2. IEEE浮点标准

    原文地址:http://www.math.byu.edu/~schow/work/IEEEFloatingPoint.htm Floating point system Floating point ...

  3. android 通讯录实现

    最近项目需要,于是自己实现了一个带导航栏的通讯录,上代码! 一.数据准备 (1)bean: public class Friend { private String remark; private S ...

  4. ASP.NET MVC5+EF6+EasyUI 后台管理系统(48)-工作流设计-起草新申请

    系列目录 创建新表单之后,我们就可以起草申请了,申请按照严格的表单步骤和分支执行. 起草的同时,我们分解流转的规则中的审批人并保存,具体流程如下 接下来创建DrafContoller控制器,此控制器只 ...

  5. 别语言之争了,最牛逼的语言不是.NET,也不是JAVA!

    谁都不用说,博客园明显的偏.NET,C#的讨论一出现,推荐讨论热火朝天,而发点JAVA的东西,应者寥寥.一旦有出现两大派系的竞争,那绝对是头条.每天都看,早就麻木了. 研二的我浸淫.NET已经三四年, ...

  6. Vertica集群扩容实验过程记录

    需求: 将3个节点的Vertica集群扩容,额外增加3个节点,即扩展到6个节点的Vertica集群. 实验环境: RHEL 6.5 + Vertica 7.2.2-2 步骤: 1.三节点Vertica ...

  7. Chrome DevTools – 键盘和UI快捷键参考

    Chrome DevTools有几个内置的快捷键,可以节省你的日常工作的时间. 本指南提供了Chrome DevTools中每个快捷键的快速参考.虽然一些快捷方式在全局范围内可用,但其他的快捷方式用于 ...

  8. go语言结构体

    定义: 是一种聚合的数据类型,是由零个或多个任意类型的值聚合成的实体. 成员: 每个值称为结构体的成员. 示例: 用结构体的经典案例处理公司的员工信息,每个员工信息包含一个唯一的员工编号.员工的名字. ...

  9. 如果你也会C#,那不妨了解下F#(4):了解函数及常用函数

    函数式编程其实就是按照数学上的函数运算思想来实现计算机上的运算.虽然我们不需要深入了解数学函数的知识,但应该清楚函数式编程的基础是来自于数学. 例如数学函数\(f(x) = x^2+x\),并没有指定 ...

  10. 【无私分享:ASP.NET CORE 项目实战】目录索引

    简介 首先,我们的  [无私分享:从入门到精通ASP.NET MVC]   系列已经接近尾声,希望大家在这个过程中学到了一些思路和方法,而不仅仅是源码. 因为是第一次写博客,我感觉还是比较混乱的,其中 ...