DHCP和DNS
DHCP(动态主机配置协议)和DNS(域名系统)是计算机网络中两个重要的协议,它们在网络的管理和使用中发挥着关键作用。
DHCP(动态主机配置协议)
基本功能
- 自动分配IP地址:DHCP允许网络管理员自动为网络中的设备分配IP地址,而不需要手动配置每个设备。
- 动态配置:设备在连接到网络时,DHCP服务器会自动分配可用的IP地址和其他网络配置参数,如子网掩码、默认网关和DNS服务器地址。
工作原理
- DHCP Discover:当设备(DHCP客户端)连接到网络时,会广播DHCP Discover消息,寻找可用的DHCP服务器。
- DHCP Offer:DHCP服务器收到请求后,会回应一个DHCP Offer消息,提供可用的IP地址和其他配置信息。
- DHCP Request:客户端选择一个DHCP Offer,并发送DHCP Request消息,确认接受该地址。
- DHCP Acknowledgment:DHCP服务器最终确认并分配该IP地址,发送DHCP Acknowledgment消息给客户端。
优势
- 简化管理:减少了手动配置IP地址的工作,降低了网络管理的复杂性。
- 避免冲突:DHCP能有效避免IP地址冲突,确保每个设备都有唯一的IP地址。
- 动态更新:当设备离开网络时,DHCP可以回收地址供其他设备使用,优化地址利用。
DNS(域名系统)
基本功能
- 域名解析:DNS的主要作用是将用户友好的域名(如www.example.com)转换为计算机可识别的IP地址(如192.0.2.1)。
- 分布式数据库:DNS采用分布式的层次结构,网络中的多个DNS服务器共同维护域名与IP地址之间的映射。
工作原理
- DNS查询:当用户在浏览器中输入域名时,计算机会向DNS服务器发送查询请求。
- 递归解析:如果本地DNS服务器无法解析该域名,它会向其他DNS服务器发起递归查询,直到找到对应的IP地址。
- 解析结果返回:找到IP地址后,结果会返回给客户端,浏览器随后可使用该IP地址访问目标网站。
优势
- 用户友好:通过域名而非IP地址访问网站,提高了互联网的易用性。
- 负载均衡:DNS能够将一个域名指向多个IP地址,实现负载均衡和冗余。
- 缓存机制:DNS服务器会缓存解析结果,提高查询速度,减少网络压力。
DHCP与DNS的关系
在网络中,DHCP和DNS通常一起使用:
- DHCP为设备分配IP地址,而DNS负责将域名解析为这些IP地址。这两者协同工作,确保网络设备能顺利连接和访问互联网。
- 动态更新DNS记录:许多现代DHCP服务器还支持动态DNS(DDNS),这允许DHCP服务器在分配IP地址时自动更新DNS记录,从而保持IP地址与域名之间的映射关系的最新状态。
区别对比
DHCP(动态主机配置协议)和DNS(域名系统)之间的区别和对比:
特性 | DHCP (动态主机配置协议) | DNS (域名系统) |
---|---|---|
主要功能 | 自动分配IP地址和网络配置参数 | 将域名解析为IP地址 |
工作原理 | 通过DHCP服务器提供IP地址和配置 | 通过DNS服务器查询域名对应的IP地址 |
地址管理 | 动态分配IP地址,避免冲突和手动配置 | 维护域名与IP地址之间的映射关系 |
请求类型 | 客户端向DHCP服务器发起请求,获取IP和配置 | 客户端向DNS服务器发起查询请求,获取IP地址 |
使用场景 | 适用于需要频繁连接和断开的设备,如笔记本、移动设备 | 适用于需要通过域名访问的互联网服务和网站 |
协议类型 | 网络层协议 | 应用层协议 |
服务器类型 | DHCP服务器 | DNS服务器 |
配置复杂性 | 简化网络配置,自动化管理 | 提供用户友好的域名访问,简化记忆和使用 |
动态更新 | 支持动态分配和回收IP地址 | 支持动态DNS更新,保持域名与IP地址的最新映射 |
缓存机制 | 不涉及缓存 | DNS使用缓存机制以提高查询效率 |
案例背景
一个小型企业的网络,包括一个华为交换机和一个华为路由器。
- 配置交换机以支持VLAN。
- 配置路由器以提供Internet访问。
- 使用DHCP为客户端分配IP地址。
- 配置基本的安全策略。
设备
- 华为交换机:S5720
- 华为路由器:AR1200
1. 配置华为交换机
1.1 登录交换机
使用终端工具(如PuTTY)通过控制台端口连接到交换机,登录到设备。
<Switch> enable
<Switch> configure terminal
1.2 创建VLAN
设置两个VLAN:VLAN 10(用于财务部门)和VLAN 20(用于技术部门)。
<Switch> vlan batch 10 20
<Switch> interface Vlanif10
<Switch-Vlanif10> ip address 192.168.10.1 255.255.255.0
<Switch-Vlanif10> quit
<Switch> interface Vlanif20
<Switch-Vlanif20> ip address 192.168.20.1 255.255.255.0
<Switch-Vlanif20> quit
1.3 分配端口到VLAN
将特定端口分配到VLAN。
<Switch> interface GigabitEthernet 0/0/1
<Switch-GigabitEthernet0/0/1> port link-type access
<Switch-GigabitEthernet0/0/1> port access vlan 10
<Switch-GigabitEthernet0/0/1> quit<Switch> interface GigabitEthernet 0/0/2
<Switch-GigabitEthernet0/0/2> port link-type access
<Switch-GigabitEthernet0/0/2> port access vlan 20
<Switch-GigabitEthernet0/0/2> quit
2. 配置华为路由器
2.1 登录路由器
同样,通过控制台端口连接到路由器并登录。
<Router> enable
<Router> configure terminal
2.2 配置WAN接口
假设WAN接口为GigabitEthernet 0/0/0,并且需要配置PPPoE。
<Router> interface GigabitEthernet 0/0/0
<Router-GigabitEthernet0/0/0> pppoe enable
<Router-GigabitEthernet0/0/0> ip address negotiated
<Router-GigabitEthernet0/0/0> quit
2.3 配置LAN接口
配置LAN接口以连接到交换机。
<Router> interface GigabitEthernet 0/0/1
<Router-GigabitEthernet0/0/1> ip address 192.168.10.254 255.255.255.0
<Router-GigabitEthernet0/0/1> quit
2.4 配置DHCP
在路由器上启用DHCP服务,为VLAN 10和VLAN 20的设备提供IP地址。
<Router> ip pool vlan10
<Router-ip-pool-vlan10> network 192.168.10.0 mask 255.255.255.0
<Router-ip-pool-vlan10> gateway 192.168.10.254
<Router-ip-pool-vlan10> quit<Router> ip pool vlan20
<Router-ip-pool-vlan20> network 192.168.20.0 mask 255.255.255.0
<Router-ip-pool-vlan20> gateway 192.168.20.254
<Router-ip-pool-vlan20> quit
2.5 配置NAT
为了让内网用户访问Internet,可以配置NAT。
<Router> acl number 2000
<Router-acl-2000> rule permit ip source 192.168.0.0 0.0.255.255
<Router-acl-2000> quit<Router> interface GigabitEthernet 0/0/0
<Router-GigabitEthernet0/0/0> nat outbound
<Router-GigabitEthernet0/0/0> quit
3. 配置安全策略
在路由器上配置基本的访问控制列表(ACL)以提高安全性。
<Router> acl number 3000
<Router-acl-3000> rule deny ip source 192.168.10.0 0.0.0.255
<Router-acl-3000> rule permit ip any
<Router-acl-3000> quit<Router> interface GigabitEthernet 0/0/1
<Router-GigabitEthernet0/0/1> traffic-filter outbound 3000
<Router-GigabitEthernet0/0/1> quit
4. 检查配置
完成配置后,可以检查接口状态和其他设置。
<Router> display interface brief
<Switch> display vlan
相关文章:

DHCP和DNS
DHCP(动态主机配置协议)和DNS(域名系统)是计算机网络中两个重要的协议,它们在网络的管理和使用中发挥着关键作用。 DHCP(动态主机配置协议) 基本功能 自动分配IP地址:DHCP允许网…...

ONES 功能上新|ONES Project 甘特图再度升级
ONES Project 甘特图支持展示工作项标题、进度百分比、依赖关系延迟时间等信息。 应用场景: 在使用甘特图规划项目任务、编排项目计划时,可以对甘特图区域进行配置,展示工作项的工作项标题、进度百分比以及依赖关系延迟时间等维度,…...

<工具 Claude Desktop> 配置 MCP server 连接本地 SQLite, 本机文件夹(目录) 网络驱动器 Windows 11 系统
也是在学习中... 起因: 抖音博客 艾克AI分享 他的视频 #143《Claude开源MCP彻底打破AI的信息孤岛》 提到: Claude开源的MCP太强了,视频后面是快速演示,反正看了好几遍也没弄明白。菜单都不一样,感觉用的不是同一家 Claude. 探…...

GIT的使用方法以及汉化方法
1.下载git软件,可以从官网下载 下载后默认安装即可。 2.找到一个文件夹,或者直接打开gitbash gitbash可以使用cd指令切换目录的 打开后输入 git clone https:[git仓库的网页]即可克隆仓库 就是这个地址 克隆后即可使用代码 如果忘记了命令可以使用 -…...

公因子的数目
给你两个正整数 a 和 b ,返回 a 和 b 的 公 因子的数目。 如果 x 可以同时整除 a 和 b ,则认为 x 是 a 和 b 的一个 公因子 。 输入:a 12, b 6 输出:4 解释:12 和 6 的公因子是 1、2、3、6 。 class Solution {pu…...

数据结构(三)——双向链表的介绍以及实现
前言 前面两期数据结构的文章我们介绍了顺序表和单向链表,那么本篇博文我们将来了解双向链表,作为最好用的一种链表,双向链表有什么特殊之处呢,接下来就让我们一起了解一下吧。 下面是前两篇数据结构的文章: 数据结…...

Webpack开发模式及处理样式资源
一、开发模式介绍 开发模式顾名思义就是我们开发代码时使用的模式。 这个模式下我们主要做两件事: 编译代码,使浏览器能识别运行 开发时我们有样式资源、字体图标、图片资源、html 资源等,webpack 默认都不能处理这些资源,所以我…...

leetcode--设计链表
707.设计链表 你可以选择使用单链表或者双链表,设计并实现自己的链表。 单链表中的节点应该具备两个属性:val 和 next 。val 是当前节点的值,next 是指向下一个节点的指针/引用。 如果是双向链表,则还需要属性 prev 以指示链表中的…...

【MySQL】:数据库操作
MySQL 数据库基础理论 2.1 数据库系统概述 介绍数据库系统的基本概念、发展历程、分类及 MySQL 在其中的地位与特点。 2.2 MySQL 数据库体系结构 解析 MySQL 的整体架构,包括服务器层与存储引擎层的功能与交互机制,重点探讨 InnoDB、MyISAM 等存…...

刷蓝桥杯历年考题(更新至15届~)
第十五届 CA组省赛 AcWing5980.训练士兵 方法一:树状数组:O(nlogn) self-complete /*先枚举组团,后分析每个士兵,有一个特点,组团费用是固定的,那当然是让所有士兵一块训练,训练完的士兵也不会有损失当还…...

AI与BI的火花:大语言模型如何重塑商业智能的未来
大家好,我是独孤风。 在当今这个数据驱动的时代,企业对于信息的需求如同对于氧气的需求一般至关重要。商业智能(BI)作为企业获取、分析和呈现数据的关键工具,正在经历一场深刻的变革,而这一变革的催化剂正是…...

Qt 详解QtNFC 读写模式
文章目录 Qt NFC 读写模式详解1. NFC 读写模式简介1.1 什么是 NFC 读写模式?主要功能: 1.2 常见应用场景 2. Qt NFC 读写模式原理3. 配置 QtNFC 模块4. NFC 读写操作实现4.1 NFC 标签读取代码示例功能解析 4.2 NFC 标签写入代码示例功能解析 5. 使用注意…...

增删改查文档
列表 : 列表包含 : 模糊查找 分页 列表jsp页面 : 一 :导入外部文件 (举例 : 用户点进来就可以看到菜单,这是预加载属于,使用文档就绪函数实现) 二 : body 上 ① : 文档就绪函数 ${ function() //获取条件查询的字段 //组装对象 //调用文档就绪函数 } ② : 封装ajax方…...

C语言蓝桥杯2023年省赛真题
文章目录 持续更新中...第一题题目描述输入格式输出格式样例输出提示 2 第二题题目描述 第三题题目描述输入格式输出格式样例输入样例输出 第四题题目描述输入格式输出格式样例输入样例输出提示 第四题题目描述输入格式输出格式样例输入样例输出提示 第五题题目描述输入格式输出…...

Python迭代器-大数据量的处理
一 生成器的实际使用(大量数据的导出) #分批导出数据然后分批写入excel import pandas as pd import openpyxl from openpyxl.utils.dataframe import dataframe_to_rowsdef execute_query(query):# 假设这是执行 SQL 查询的函数# 返回查询结果passdef …...

自动化包括态交互与感交互,而智能化包括势交互与知交互
“自动化包括态交互与感交互,而智能化包括势交互与知交互”交互框架将交互过程划分为不同类型,有助于更清晰地理解自动化和智能化的本质及其在未来agent应用中的差异与联系。 1. 自动化:态交互与感交互 自动化主要关注的是高效、无差错地执行…...

VideoBooth: Diffusion-based Video Generation with Image Prompts
VideoBooth: Diffusion-based Video Generation with Image Prompts 概括 文章提出了一个视频生成模型VideoBooth,输入一张图片和一个文本提示词,即可输出保持图片中物体且符合文本提示词要求的视频。 方法 粗-细两阶段设计:1)…...

模拟简单的iOT工作流
没有实际接触过iOT的流程,应该实际使用比这个接口返回要复杂,只是演示~希望能参与实际的接口接入,而不是只展示个假数据。 启动RabbitQ 使用的是3.8.5 启动命令 RabbitMQ Service - start RabbitMQ Command Prompt rabbitmqctl start_app …...

C++学习0.2: RAII
引用: 【代码质量】RAII在C编程中的必要性_raii 在c中的重要性-CSDN博客 C RAII典型应用之lock_guard和unique_lock模板_raii lock-CSDN博客 前言: 常用的线程间同步/通信(IPC)方式有锁(互斥锁、读写锁、自旋锁)、…...

k8s,进一步理解Pod
比如,凡是调度、网络、存储,以及安全相关的属性,基本上是Pod 级别的。 这些属性的共同特征是,它们描述的是“机器”这个整体,而不是里面运行的“程序”。比如,配置这个“机器”的网卡(即&#…...

MFC图形函数学习13——在图形界面输出文字
本篇是图形函数学习的最后一篇,相关内容暂告一段落。 在图形界面输出文字,涉及文字字体、大小、颜色、背景、显示等问题,完成这些需要系列函数的支持。下面做简要介绍。 一、输出文本函数 原型:virtual BOOL te…...

【Canvas与雷达】点鼠标可暂停金边蓝屏雷达显示屏
【成图】 【代码】 <!DOCTYPE html> <html lang"utf-8"> <meta http-equiv"Content-Type" content"text/html; charsetutf-8"/> <head><title>点鼠标可暂停金边蓝屏雷达显示屏 Draft1</title><style typ…...

React第十二节组件之间通讯之发布订阅模式(使用pubsub-js插件)
组件之间通讯常用方案 1、通过props 2、通过context 3、通过发布订阅模式 4、通过Redux 后面会有专栏介绍 1、安装 pubsub-js 插件 yarn add pubsub-js 常用的事件 a、发布事件:传入一个自定义事件名称(name),以及要发布的消息内…...

Vue3安装 运行教程
本文是综合了所有vue安装教程而成 更细化 更简略 希望对各位读者有所帮助! Vue安装 1. Vue-cli脚手架安装 安装vue的方式有很多 我们这里选择npm方式安装vue npm方式 npm方式安装vue,详细介绍见下文。 1.node.js安装和配置 安装npm 需要安装note.js&…...

MySQL:约束constraint
约束就是表中数据的限制条件. 表在设计的时候加入约束的目的是为了保证表中记录的完整性和有效性,如用户表有些列的值(手机号)不能为空,有些列的值(身份证号)不能重复。 主键约束(primary key) PK MySQL主…...

使用Rufus制作Ubuntu需要注意
在使用Rufus制作Ubuntu启动盘并进行BIOS设置时,需要注意以下几点: 关闭RST(英特尔 快速存储技术):在BIOS设置中,如果电脑启用了RST功能,需要将其关闭。因为Ubuntu可能无法检测到硬盘&a…...

探索Go语言的高级特性:性能分析与安全性
Go语言性能分析与安全性 引言 Go语言因其高效的并发特性、简洁的语法和强大的工具链而受到广泛欢迎。在实际开发中,性能分析和安全性是需要特别关注的两个方面。本文将深入探讨Go语言中的性能分析工具和安全性考虑,帮助开发者编写高效、安全的Go应用程…...

SearchSploit配合gcc的使用
渗透测试中,SearchSploit是一个非常有用的工具,用于在Exploit数据库中搜索漏洞利用代码。其使用方法如下: 安装SearchSploit:首先确保你的系统中已经安装了Kali Linux,因为SearchSploit是Kali Linux的一部分。如果没有…...

无人机设计:云台挂载!
一、无人机云台挂载设置 安装与固定 将云台固定到无人机的挂载点上,通常需要使用专用的固定架和螺丝等工具。 确保云台与无人机之间的连接牢固,避免在飞行过程中出现松动或脱落的情况。 连接与调试 将云台与无人机之间的连接线缆(如电源…...

Spring Native适用场景、代理使用及测试部署策略
文章目录 1. Spring Native 适用的应用程序2. 在 Spring Native 中使用代理3. 测试和部署 Spring Native 应用测试部署 1. Spring Native 适用的应用程序 微服务:微服务架构中每个服务都相对独立,快速启动时间和较低的资源消耗对于提高部署效率和服务响…...