为什么?为什么?为什么在浏览器里输入www.baidu.com就可以访问百度搜索,而输入pan.baidu.com就可以访问百度网盘,它是怎么实现的?


实验原理简介

Internet中,计算机之间通过ip地址访问。当我们将PC连接到互联网时,上游的DHCP服务器会分给PC一个ip地址,同时也会告诉它DNS服务器的ip地址,当访问www.baidu.com时,PCwww.baidu.com这个网址发送给DNS服务器,然后DNS服务器将它查询到的web服务器ip地址返回给PC,最后通过访问这个ip地址访问到web服务器,从而得到网站内容。


实验过程简介

通过使用VMware Workstation模拟上面的环境,搭建三台服务器,分别是DHCPDNSWeb服务器,系统使用Windows Server 2016,然后再使用一台Win10客户机对实验结果进行验证。


开始实验

虚拟机信息

网络全部设置为仅主机模式,并且关闭DHCP,避免与即将建立的DHCP服务器产生冲突。

设定主机名和IP地址

主机名 IP地址
DHCP-SERVER 192.168.100.11
DNS-SERVER 192.168.100.12
WEB-SERVER 192.168.100.13
WIN-CLIENT DHCP

服务配置

首先再服务器管理器内添加需要的角色和功能,然后打开对应服务的管理器进行服务配置。

配置 Web 服务器

  • 服务器管理器 → 管理 → 添加角色和功能 → 安装Web服务

  • 创建网站所需文件

C:\Users\Administrator>cd ..\..

C:\>mkdir web\baidu\search web\baidu\pan

C:\>echo "<h1>This is baidu search !</h1>" > web\baidu\search\index.html

C:\>echo "<h1>This is baidu pan !</h1>" > web\baidu\pan\index.html
  • 开始 → Windows管理工具 → IIS 管理器 → 添加网站

  • 添加的网站信息

Web服务配置完成

配置 DNS 服务器

  • 服务器管理器 → 管理 → 添加角色和功能 → 安装DNS服务

  • 开始 → Windows管理工具 → DNS 管理器 → 新建正向查找区域

  • 新建区域向导

  • 区域内新建主机

  • 主机记录新建完成

DNS服务配置完成

配置 DHCP 服务器

  • 服务器管理器 → 管理 → 添加角色和功能 → 安装DHCP服务

  • 开始 → Windows管理工具 → DHCP → 新建IPv4作用域

  • 新建作用域向导

DHCP服务配置完成


结果验证

打开WIN-CLIENT客户机,自动获取ip地址,然后访问网站。

  • 自动获取ip地址

  • 查看所有ip信息

ipconfig /renew         #重新获取ip地址

ipcomfig /all           #查看所有ip信息
  • 访问结果www.baidu.com

  • 访问结果pan.baidu.com

实现使用不同主机名访问不同网站。


一些想法

这篇是基于Windows Server的,以后或许还会写一篇Linux版的。

如何用 DHCP + DNS + Web 实现一个网络架构的更多相关文章

  1. 无线安全: 通过伪AP进行DHCP+DNS劫持的钓鱼攻击

    有了之前学习802.11的数据帧格式.芯片硬件参数学习的基础后,我们接下来继续学习无线安全中黑客是怎样进行流量劫持攻击的 相关学习资料 http://www.freebuf.com/articles/ ...

  2. Linux就这个范儿 第12章 一个网络一个世界

    Linux就这个范儿 第12章 一个网络一个世界 与Linux有缘相识还得从一项开发任务说起.十八年前,我在Nucleus  OS上开发无线网桥AP,需要加入STP生成树协议(SpanningTree ...

  3. Linux基础二(修改ip地址、修改网关、修改DNS服务器、重新启动网络配置)

    网络的初始化 .ip地址的修改(临时生效) 使用ifconfig命令 ifconfig 网卡名 ip地址 netmask 子网掩码 [root@localhost /]# ifconfig eth1 ...

  4. 如何理解AWS 网络,如何创建一个多层安全网络架构

    目录 一.要求 网络架构图 网络各组件关系 二.操作步骤 2.1.网络设置 2.2.安全设置 2.3.创建实例 三.费用 3.1.NAT 网关费用 一.要求 创建一个三层网络架构,服务器只能通过跳板机 ...

  5. jmeter 建立一个网络服务的测试计划

    如何创建一个 测试计划 测试一个网络服务. 你会 创建5个用户发送请求到一页. 同时,你会告诉用户运行测试两次. 的总数 请求用户请求(5)x(1)x(重复2次)= 10 HTTP请求. 来 建立测试 ...

  6. 如何用 Parse 和 Swift 搭建一个像 Instagram 那样的应用?

    [编者按]本篇文章作者是Reinder de Vries,既是一名企业家,也是优秀的程序员,发表多篇应用程序的博客.本篇文章中,作者主要介绍了如何基于Parse特点,打造一款类似Instagram的应 ...

  7. 思科恶意加密TLS流检测论文记录——由于样本不均衡,其实做得并不好,神马99.9的准确率都是浮云啊,之所以思科使用DNS和http一个重要假设是DGA和HTTP C&C(正常http会有图片等)。一开始思科使用的逻辑回归,后面17年文章是随机森林。

    论文记录:Identifying Encrypted Malware Traffic with Contextual Flow Data from:https://songcoming.github. ...

  8. 网关、子网掩码、DHCP, DNS

    都跟ip地址相关,IP地址构成:网络地址+主机地址 子网掩码可以确定网络地址,例如某IP:192.168.1.102 子网掩码:255.255.255.0, 那么网络地址就是192.168.1,主机地 ...

  9. Android开发之使用Web Service进行网络编程

    使用Web Service进行网络编程 Android应用通常都是执行在手机平台上.手机系统的硬件资源是有限的,无论是存储能力还是计算能力都有限.在Android系统上开发.执行一些单用户.小型应用是 ...

随机推荐

  1. 【iCore4 双核心板_FPGA】实验二十:NIOS II之UART串口通信实验

    实验指导书及源代码下载地址: 链接:https://pan.baidu.com/s/1g_tWYYJxh4EgiGvlfkVu1Q 提取码:dwwa 复制这段内容后打开百度网盘手机App,操作更方便哦 ...

  2. (原)x264代码中的码流控制学习

    (本文主要是自己的学习笔记,如果有误,请留言,一起讨论和更正.)这里采用x264的代码进行走读的方式,来学习qp在码流控制中过程. 在ABR模式下,当我们设置一个bitrate的平均码率以后,x264 ...

  3. matlab学习笔记13_1 函数返回值

    一起来学matlab-matlab学习笔记13函数 13_1 函数返回值 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考文献 https://blog.csdn.net/qq_36556 ...

  4. 工控随笔_22_关于Profibus网络接线的规则

    最近在做一个项目调试,用的是西门子的PLC,416-2 DP,下面挂了几个DP子网,在进行现场网络测试的时候,有几个走的DP网络的 绝对值编码器,无论怎么弄DP网络不能联通. 一开始我以为DP网线接的 ...

  5. elk使用记录

    1.使用elk查询接口的时候 几个常用参数  http_host.raw 2.具体的接口名称:request_uri 3.想要把左边要查询的显示出来

  6. mysql 5.7开启sql日志的配置

    今天把数据库换成了5.7的,想查通过sql日志定位下问题,但是发现和以前的方式不一样了,特意记录下来 通过开启mysql的日志功能,可以记录所有别执行过的sql语句记录,便于维护数据库数据. 在数据库 ...

  7. 【并行计算-CUDA开发】GPU并行编程方法

    转载自:http://blog.sina.com.cn/s/blog_a43b3cf2010157ph.html 编写利用GPU加速的并行程序有多种方法,归纳起来有三种: 1.      利用现有的G ...

  8. 机器学习之挖掘melb_data.csv数据

    mel_data.csv是关于melb地区房屋的数据 mel_data.csv import pandas as pd melbourne_file_path = "E:\data\Melb ...

  9. python 的技巧

    pi = 0 n = 100 for k in range(n): pi+=1/pow(16,k)*(\ #一行不够写或不易读时用\,则多行与一行一样 4/(8*k+1)-2/(8*k+4)-\ 1/ ...

  10. FineUI 模板列动态删除方法

    本来这是asp.net写法,跟fineui一点关系都没有,但是还是有人不会写不会查找.还是做个分享吧.    <f:TemplateField runat="server"  ...