目录
DHCP是一个局域网的网络协议,使用UDP协议工作
DHCP((Dynamic Host Configuratioin Protocol)动态主机配置协议。DHCP由两块组成,一个是服
务器,一个是客户端。采用服务器和客户端的架构,C/S架构。为客户端动态分配IP地址。采用
UDP协议 67,68端口
1、减少管理员的工作量
2、避免输入错误的可能
3、避免IP地址重复
4、提高IP地址的利用率
5、当网络更改IP地址段时,不再需要重新配置每个用户的IP
方便客户机配置
1、用户请求阶段:
此阶段用户通过发送255.255.255.255的DHCPdiscovery广播来寻找DHCP服务器以便请求地址,
此过程中,所有安装TCP/IP协议的主机都能收到请求,只有DHCP服务器才会做出应答。
2、服务器提供阶段:
此阶段服务器接收到客户端发送的DHCPdiscovery请求,局域网范围内收到DHCPdiscovery 的
DHCP服务器,都会给发送DHCPdiscovery的客户端分配一个IP地址,此IP是在DHCP服务器中尚
未分配出去的,发送的IP包含一些DHCPoffer中的其他信息。
3、用户选择阶段:
此阶段客户端接收DHCP服务器发来的地址,但只会选择第一个向他提供地址的DHCP服务器提
供的IP,广播DHCPrequest,把自己选择的DHCP服务器及其提供的IP信息告知局域网内的所有
DHCP服务器
4、服务器确认阶段:
此阶段当提供给客户端IP的DHCP服务器收到客户端发来的DHCPrequest信息后,会给客户端一个
DHCPack响应,告知客户端可以正常使用其提供的IP,客户机将IP与网卡绑定,以便下次能够
继续使用此IP,其他DHCP服务器也将收回自己分配给此客户端的IP。

AR1:
[Huawei]sysname AR1 #重命名
[AR1]dhcp enable #开启dhcp功能
[AR1]int g0/0/1 #进入接口
[AR1-GigabitEthernet0/0/1]un sh #激活
[AR1-GigabitEthernet0/0/1]int g0/0/1.1
[AR1-GigabitEthernet0/0/1.1]ip add 192.168.10.1 24 #配置IP
[AR1-GigabitEthernet0/0/1.1]dot1q termination vid 10 #配置封装协议及vlan标签
[AR1-GigabitEthernet0/0/1.1]arp broadcast enable #开启arp广播
[AR1-GigabitEthernet0/0/1.1]dhcp select global #去全局找dhcp池
[AR1-GigabitEthernet0/0/1.1]int g0/0/1.2
[AR1-GigabitEthernet0/0/1.2]ip add 192.168.20.1 24
[AR1-GigabitEthernet0/0/1.2]dot1q termination vid 20
[AR1-GigabitEthernet0/0/1.2]arp broadcast enable
[AR1-GigabitEthernet0/0/1.2]dhcp select global
[AR1-GigabitEthernet0/0/1.2]q #退出
[AR1]int g0/0/0
[AR1-GigabitEthernet0/0/0]ip add 20.0.0.1 24
[AR1-GigabitEthernet0/0/0]un sh
[AR1-GigabitEthernet0/0/0]q
[AR1]ip pool vlan10 #创建地址池
[AR1-ip-pool-vlan10]gateway-list 192.168.10.1 #设置客户端的网关
[AR1-ip-pool-vlan10]network 192.168.10.0 mask 255.255.255.0 #工作网络
[AR1-ip-pool-vlan10]lease day 1 #租期为一天
[AR1-ip-pool-vlan10]dns-list 8.8.8.8 #DNS服务器地址
[AR1-ip-pool-vlan10]ip pool vlan20
[AR1-ip-pool-vlan20]gateway-list 192.168.20.1
[AR1-ip-pool-vlan20]network 192.168.20.0 mask 255.255.255.0
[AR1-ip-pool-vlan20]lease day 1
[AR1-ip-pool-vlan20]dns-list 8.8.8.88
[AR1-ip-pool-vlan20]ip pool dhcp1
[AR1-ip-pool-dhcp1]gateway-list 192.168.30.1
[AR1-ip-pool-dhcp1]network 192.168.30.0 mask 255.255.255.0
[AR1-ip-pool-dhcp1]lease day 1
[AR1-ip-pool-dhcp1]dns-list 8.8.8.8
[AR1]int g0/0/0
[AR1-GigabitEthernet0/0/0]dhcp select global
[AR1-GigabitEthernet0/0/0]q
[AR1]ip route-static 192.168.30.0 24 20.0.0.2 #配置一条静态路由
AR2:
[Huawei]sysname AR2
[AR2]int g0/0/0
[AR2-GigabitEthernet0/0/0]ip add 20.0.0.2 24
[AR2-GigabitEthernet0/0/0]un sh
[AR2-GigabitEthernet0/0/0]int g0/0/1
[AR2-GigabitEthernet0/0/1]ip add 192.168.30.1 24
[AR2-GigabitEthernet0/0/1]un sh
[AR2-GigabitEthernet0/0/1]q
[AR2]dhcp enable
[AR2]int g0/0/1
[AR2-GigabitEthernet0/0/1]dhcp select relay #基于中继模式
[AR2-GigabitEthernet0/0/1]dhcp relay server-ip 20.0.0.1 #设置DHCP服务器的IP
[AR2-GigabitEthernet0/0/1]q
[AR2]ip route-static 192.168.10.0 24 20.0.0.1
[AR2]ip route-static 192.168.20.0 24 20.0.0.1
LSW1:
[Huawei]sysname LSW1
[LSW1]vlan ba 10 20
[LSW1]int e0/0/1
[LSW1-Ethernet0/0/1]port link-type access
[LSW1-Ethernet0/0/1]port default vlan 10
[LSW1-Ethernet0/0/12]int e0/0/2
[LSW1-Ethernet0/0/2]port link-type access
[LSW1-Ethernet0/0/2]port default vlan 20
[LSW1-Ethernet0/0/2]int g0/0/1
[LSW1-GigabitEthernet0/0/1]port link-type trunk
[LSW1-GigabitEthernet0/0/1]port trunk al vl al
PC1:

PC2:

PC3:

测试:
PC1:


PC2:


PC3:


我有一个在Linux服务器上运行的ruby脚本。它不使用rails或任何东西。它基本上是一个命令行ruby脚本,可以像这样传递参数:./ruby_script.rbarg1arg2如何将参数抽象到配置文件(例如yaml文件或其他文件)中?您能否举例说明如何做到这一点?提前谢谢你。 最佳答案 首先,您可以运行一个写入YAML配置文件的独立脚本:require"yaml"File.write("path_to_yaml_file",[arg1,arg2].to_yaml)然后,在您的应用中阅读它:require"yaml"arg
我已经在Sinatra上创建了应用程序,它代表了一个简单的API。我想在生产和开发上进行部署。我想在部署时选择,是开发还是生产,一些方法的逻辑应该改变,这取决于部署类型。是否有任何想法,如何完成以及解决此问题的一些示例。例子:我有代码get'/api/test'doreturn"Itisdev"end但是在部署到生产环境之后我想在运行/api/test之后看到ItisPROD如何实现? 最佳答案 根据SinatraDocumentation:EnvironmentscanbesetthroughtheRACK_ENVenvironm
?博客主页:https://xiaoy.blog.csdn.net?本文由呆呆敲代码的小Y原创,首发于CSDN??学习专栏推荐:Unity系统学习专栏?游戏制作专栏推荐:游戏制作?Unity实战100例专栏推荐:Unity实战100例教程?欢迎点赞?收藏⭐留言?如有错误敬请指正!?未来很长,值得我们全力奔赴更美好的生活✨------------------❤️分割线❤️-------------------------
之前在培训新生的时候,windows环境下配置opencv环境一直教的都是网上主流的vsstudio配置属性表,但是这个似乎对新生来说难度略高(虽然个人觉得完全是他们自己的问题),加之暑假之后对cmake实在是爱不释手,且这样配置确实十分简单(其实都不需要配置),故斗胆妄言vscode下配置CV之法。其实极为简单,图比较多所以很长。如果你看此文还配不好,你应该思考一下是不是自己的问题。闲话少说,直接开始。0.CMkae简介有的人到大二了都不知道cmake是什么,我不说是谁。CMake是一个开源免费并且跨平台的构建工具,可以用简单的语句来描述所有平台的编译过程。它能够根据当前所在平台输出对应的m
注意:本文主要掌握DCN自研无线产品的基本配置方法和注意事项,能够进行一般的项目实施、调试与运维AP基本配置命令AP登录用户名和密码均为:adminAP默认IP地址为:192.168.1.10AP默认情况下DHCP开启AP静态地址配置:setmanagementstatic-ip192.168.10.1AP开启/关闭DHCP功能:setmanagementdhcp-statusup/downAP设置默认网关:setstatic-ip-routegeteway192.168.10.254查看AP基本信息:getsystemgetmanagementgetmanaged-apgetrouteAP配
项目介绍随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱小学生兴趣延时班预约小程序的设计与开发被用户普遍使用,为方便用户能够可以随时进行小学生兴趣延时班预约小程序的设计与开发的数据信息管理,特开发了小程序的设计与开发的管理系统。小学生兴趣延时班预约小程序的设计与开发的开发利用现有的成熟技术参考,以源代码为模板,分析功能调整与小学生兴趣延时班预约小程序的设计与开发的实际需求相结合,讨论了小学生兴趣延时班预约小程序的设计与开发的使用。开发环境开发说明:前端使用微信微信小程序开发工具:后端使用ssm:VU
1.1.1 YARN的介绍 为克服Hadoop1.0中HDFS和MapReduce存在的各种问题⽽提出的,针对Hadoop1.0中的MapReduce在扩展性和多框架⽀持⽅⾯的不⾜,提出了全新的资源管理框架YARN. ApacheYARN(YetanotherResourceNegotiator的缩写)是Hadoop集群的资源管理系统,负责为计算程序提供服务器计算资源,相当于⼀个分布式的操作系统平台,⽽MapReduce等计算程序则相当于运⾏于操作系统之上的应⽤程序。 YARN被引⼊Hadoop2,最初是为了改善MapReduce的实现,但是因为具有⾜够的通⽤性,同样可以⽀持其他的分布式计算模
Rails相对较新。我正在尝试调用一个API,它应该向我返回一个唯一的URL。我的应用程序中捆绑了HTTParty。我已经创建了一个UniqueNumberController,并且我已经阅读了几个HTTParty指南,直到我想要什么,但也许我只是有点迷路,真的不知道该怎么做。基本上,我需要做的就是调用API,获取它返回的URL,然后将该URL插入到用户的数据库中。谁能给我指出正确的方向或与我分享一些代码? 最佳答案 假设API为JSON格式并返回如下数据:{"url":"http://example.com/unique-url"
我是ruby的新手,正在配置IRB。我喜欢pretty-print(需要'pp'),但总是输入pp来漂亮地打印它似乎很麻烦。我想做的是默认情况下让它漂亮地打印出来,所以如果我有一个var,比如说,'myvar',然后键入myvar,它会自动调用pretty_inspect而不是常规检查。我从哪里开始?理想情况下,我将能够向我的.irbrc文件添加一个自动调用的方法。有什么想法吗?谢谢! 最佳答案 irb中默认pretty-print对象正是hirb被迫去做。Theseposts解释hirb如何将几乎所有内容转换为ascii表。虽
我想在IRB中浏览文件系统并让提示更改以反射(reflect)当前工作目录,但我不知道如何在每个命令后进行提示更新。最终,我想在日常工作中更多地使用IRB,让bash溜走。我在我的.irbrc中试过这个:require'fileutils'includeFileUtilsIRB.conf[:PROMPT][:CUSTOM]={:PROMPT_N=>"\e[1m:\e[m",:PROMPT_I=>"\e[1m#{pwd}>\e[m",:PROMPT_S=>"FOO",:PROMPT_C=>"\e[1m#{pwd}>\e[m",:RETURN=>""}IRB.conf[:PROMPT_MO