当前位置: 首页 > news >正文

【Linux网络】搭建内外网的网关服务器,实现DNS分离解析与DHCP自动分配

一、实验要求:

二、实验思路剖析:

网关服务器:

客户端准备:

实操:

第一步先安装dhcp服务和bind服务

第二步双网卡,配置网卡的ip地址

 第三步:开始配置dhcp

 第四步:做dns分离解析

1、先修改主配置文件

2、写区域配置文件

 3、书写数据库文件

第五步:客户端验证结果 

验证客户端(Linux外):

 验证客户端(Windows外):

验证客户端(Linux内): 

  验证客户端(Windows内):

第六步:在验证一下服务端吧,看下服务端会怎么解析


一、实验要求:

搭建一台网关服务器,可以内网和外网分别提供dhcp自动分配,同时能够解析xueyin.com的ip地址分别为网关服务器的内外网地址,如图

二、实验思路剖析:

网关服务器:

1、先安装dhcp和bind软件;

2、配置两张网卡,对应ens33和ens36,ens33为nat模式VM8网卡,ens36为仅主机VM1网卡;分配设置ip地址,网关为自己,此时会发现自己断网了,所以提前下载好软件,这是正常的;

ps:(我个人喜欢最后修改ens33的网卡ip,因为怕会断网,可以先执行dhcp和dns服务,到最后都正常获取以后和外网解析没问题以后再改网关服务器的ens33网卡ip)

3、搭建dhcp服务端,能够分配12外网和192内网

4、搭建dns服务端,修改主配置文件、区域配置文件、数据库文件

客户端准备:

先将Windows开一台仅主机,一台nat,Linux开一台仅主机,一台nat,提前配置好为dhcp获取

实操:

第一步先安装dhcp服务和bind服务

第二步双网卡,配置网卡的ip地址

 

 第三步:开始配置dhcp

 47 subnet 12.0.0.0 netmask 255.255.255.0 {48   range 12.0.0.20 12.0.0.80;49   option domain-name-servers 12.0.0.1;50   option routers 12.0.0.1;51   default-lease-time 600;52   max-lease-time 7200;53 }54 55 subnet 192.168.20.0 netmask 255.255.255.0 {56   range 192.168.20.100 192.168.20.120;57   option domain-name-servers 192.168.20.2;58   option routers 192.168.20.2;59   default-lease-time 600;60   max-lease-time 7200;61 } 

 第四步:做dns分离解析

1、先修改主配置文件

 

2、写区域配置文件

 

[root@localhost ~]#vim /etc/named.rfc1912.zones 12 view "lan"{13 match-clients{192.168.20.0/24;};14 zone "xueyin.com" IN {15         type master;16         file "xueyin.com.zone.lan";17 };18 19 zone "." IN {20         type hint;21         file "named.ca";22 };23 };24 25 view "wan"{26 match-clients{any;};27 zone "xueyin.com" IN {28         type master;29         file "xueyin.com.zone.wan";30 };31 32 zone "." IN {33         type hint;34         file "named.ca";35 };36 };

 3、书写数据库文件

 

 

 

[root@localhost ~]#cd /var/named/
[root@localhost named]#ls
data  dynamic  named.ca  named.empty  named.localhost  named.loopback  slaves
[root@localhost named]#cp -a named.localhost xueyin.com.zone.lan
[root@localhost named]#cp -a named.localhost xueyin.com.zone.wan
[root@localhost named]#vim xueyin.com.zone.lan 
[root@localhost named]#vim xueyin.com.zone.wan 
[root@localhost named]#named-c
named-checkconf    named-checkzone    named-compilezone  
[root@localhost named]#named-checkzone xueyin.com /var/named/xueyin.com.zone.lan 
zone xueyin.com/IN: loaded serial 0
OK
[root@localhost named]#named-checkzone xueyin.com /var/named/xueyin.com.zone.wan 
zone xueyin.com/IN: loaded serial 0
OK
[root@localhost named]#systemctl restart named
[root@localhost named]#

第五步:客户端验证结果 

验证客户端(Linux外):

 

 验证客户端(Windows外):

验证客户端(Linux内): 

  验证客户端(Windows内):

第六步:在验证一下服务端吧,看下服务端会怎么解析

 

总结:

  • 在配置网卡之前需要先下载好需要的软件,要不然就得搭建本地yum仓库安装
  • DNS主配置文件中,需要注意:一定要删除“.”根域
  • DNS的区域配置文件中,  zone“.”的配置文件,与主配置文件一样,另外需要设置可解析的客户机,另外其他的内容需要全部删除掉
  • 每做一步记得进行语法检查,很重要!!!一步一步排错,这样出错概率低。 

相关文章:

  • 决策树,sql考题,30个经典sql题目
  • 扩散模型实战(九):使用CLIP模型引导和控制扩散模型
  • Genio 500_MT8385安卓核心板:功能强大且高效
  • 【算法】算法题-20231117
  • Android 11.0 存在中文字符,中文文件名,中文系统属性,编译报错的解决方案
  • Apache Airflow (八) :DAG任务依赖设置
  • Docker push的 http 413问题处理
  • 卡尔曼家族从零解剖-(07) 高斯分布积分为1,高斯分布线性变换依旧为高斯分布,两高斯函数乘积仍为高斯。
  • 智慧汽车—城市NOA迎爆发
  • 【Python】Pandas(学习笔记)
  • 大数据毕业设计选题推荐-机房信息大数据平台-Hadoop-Spark-Hive
  • 学习王阳明知行合一随录
  • yolov5模型代码怎么修改
  • 【ArcGIS处理】行政区划与流域区划间转化
  • C语言编程陷阱(三)
  • [js高手之路]搞清楚面向对象,必须要理解对象在创建过程中的内存表示
  • __proto__ 和 prototype的关系
  • 《剑指offer》分解让复杂问题更简单
  • cookie和session
  • Docker入门(二) - Dockerfile
  • Elasticsearch 参考指南(升级前重新索引)
  • JAVA并发编程--1.基础概念
  • js
  • Just for fun——迅速写完快速排序
  • MySQL的数据类型
  • SAP云平台里Global Account和Sub Account的关系
  • uni-app项目数字滚动
  • vagrant 添加本地 box 安装 laravel homestead
  • 百度贴吧爬虫node+vue baidu_tieba_crawler
  • 表单中readonly的input等标签,禁止光标进入(focus)的几种方式
  • 开发了一款写作软件(OSX,Windows),附带Electron开发指南
  • 聊聊flink的BlobWriter
  • 名企6年Java程序员的工作总结,写给在迷茫中的你!
  • 排序算法学习笔记
  • 七牛云假注销小指南
  • 设计模式走一遍---观察者模式
  • 思维导图—你不知道的JavaScript中卷
  • 新版博客前端前瞻
  • 哈罗单车融资几十亿元,蚂蚁金服与春华资本加持 ...
  • ​ 全球云科技基础设施:亚马逊云科技的海外服务器网络如何演进
  • ​​​​​​​GitLab 之 GitLab-Runner 安装,配置与问题汇总
  • #{}和${}的区别是什么 -- java面试
  • #我与Java虚拟机的故事#连载04:一本让自己没面子的书
  • $(document).ready(function(){}), $().ready(function(){})和$(function(){})三者区别
  • (175)FPGA门控时钟技术
  • (Redis使用系列) Springboot 使用redis的List数据结构实现简单的排队功能场景 九
  • (转)负载均衡,回话保持,cookie
  • .net core IResultFilter 的 OnResultExecuted和OnResultExecuting的区别
  • .net core开源商城系统源码,支持可视化布局小程序
  • .net 反编译_.net反编译的相关问题
  • .NET 解决重复提交问题
  • .net 生成二级域名
  • .net 提取注释生成API文档 帮助文档
  • .Net多线程总结
  • .NET值类型变量“活”在哪?