Powershell管理DHCP作用域

说到Powershell相信管理员都比较熟悉,当然powershell在windows下hen多服务都是有区别的,但是对于语法都是一样的,为什么说在微软的产品存在多个Powershell脚本呢,对于windows service使用的是系统自带的powershell,对于Microsoft Exchange服务又是单独的一个Powershell程序,最主要的是微软的公有云下需要单独下载Azure Powershell程序,对于不同服务需要使用不同的powershell程序执行不同的操作使用起来不方便,希望微软以后能融合,然后导入不同的模块进行不同的服务管理,具体的相关介绍就不多介绍了,所以就直接就进入主题了,近期公司部分网络做了一些特殊限制,对于某个作用域下的地址需要进行保留后才可以出网,所以这样就带出了相关的问题,对于公司来说地址分配是使用的是windows系统下部署的DHCP服务进行地址分发管理,想了很多方法,最终还是想通过powershell对作用域地址进行管理,今天介绍的内容主要有,使用powershell管理dhcp服务器配置,使用powershell查询作用域信息,最后使用powershell批量添加保留地址信息,具体见下:

我们可以参考微软的powershell管理DHCP的相关文档。

https://technet.microsoft.com/library/jj590751.aspx

1. 添加多个作用域的地址信息到DHCP保留区域。使用的参数命令为:Netshell

DHCP server服务器地址;如果在DHCP服务器本地执行指向127.0.0.1即可

Scope 为DHCP作用域信息;环境内如果有多个作用域的话也可以管理操作

Reservedip 为需要添加保留的IP地址信息

Reservedip后面的后面为需要添加保留IP地址信息所对应的Mac地址

ReservedName为保留名称

DescriptName为保留名称的描述信息

Both为保留地址信息的DHCP类型

Netsh dhcp server 127.0.0.1 scope 10.10.10.0 add reservedip 10.10.10.13 02523idfafag "reservername" "Descript" "BOTH"

当然我们也可以通过定义变量来执行脚本;将需要变动的信息通过定义变量然后替换语句中的信息即可;

$serverip=‘127.0.0.1‘
$n=‘10.10.10.0‘
$ip=‘10.10.10.13‘
$m=‘agaggdi12424‘
$resername=‘haha‘
$desc=‘Descriptname‘
Netsh dhcp server $serverip scope $n add reservedip $ip $m "$resername" "$desc" "BOTH"

如果更方便从本地txt中读取数据格式,然后传输到powershell的变量中执行,这样更方便,下期主要介绍;

127.0.0.1,10.10.10.0,10.10.10.100,03231d66et59,zhangsan,it,both

首先使用powershell读取本地的txt文件内容

Get-connect c:\1.txt

其实上面的介绍已经很明白了,使用的命令为Netsh commands for DHCP

https://technet.microsoft.com/zh-cn/library/bb490941.aspx

上面介绍了批量添加,下面就介绍如何显示DHCP Server的作用域配置信息

Netsh dhcp server v4 show all

查看DHCP服务器的绑定信息

Netsh dhcp server show bindings

我们可以参考帮助文档

http://www.feiesoft.com/windows/cmd/netsh_dhcp.htm

查询指定作用域的地址信息

netsh dhcp server 192.168.0.1 scope 192.168.0.0 dump

通过指定的ip地址查询对应的mac地址

(netsh dhcp server scope 10.10.10.0 show clients | where {$_ -match "10.10.10.13"}) -split "_" -replace "",""

如果批量查询的话,我们需要添加多条语句进行执行

定义变量查询指定作用域网段的ip地址信息和mac地址

$ip=‘10.10.10.0‘
(netsh dhcp server scope $ip show clients) -split "_" -replace "",""

定义变量

$ip=‘10.10.10.0‘
$b=‘10.10.10.13‘
(netsh dhcp server scope $ip show clients | where {$_ -match "$b"}) -split "_" -replace "",""

如果需要将执行结果保存在指定目录下的话我们需要在执行脚本后 重定向即可

时间: 2024-08-26 23:03:15

Powershell管理DHCP作用域的相关文章

Powershell管理系列(二十六)PowerShell操作之批量导出&导入邮箱

-----提供AD\Exchange\Lync\Sharepoint\CRM\SC\O365等微软产品实施及外包,QQ:185426445.电话18666943750 项目中有时候做跨林邮箱迁移的时候,条件不成熟,比如安全考虑或者其他考虑,不能做双林信任,这样就提出了一个问题,历史邮件需要使用的话怎么办,一个简单高效的解决办法就是从源森林批量导出邮件为.pst文件,在批量导入到目的域森林,具体操作如下: 1.赋予管理账号邮件导入导出权限,命令如下: cls whoami New-Manageme

Azure运维系列 3:安装和使用Azure PowerShell管理云

前面讲到了很多的管理方式,包括Azure中国最近更新的预览版管理门户和Azure云助理,都是非常不错的管理Azure的方式,今天我们再来介绍一种更加高效的管理方式Azure PowerShell.熟悉命令行的朋友都知道,Linux之所以那么好用是因为其强大的命令行工具,可以简单直接的管理我们的服务器.应用等.然而在很早之前微软也推出了自己的命令行渠道,没错就是我们大名鼎鼎的PowerShell. 为什么说PowerShell那么强大呢?因为从Windows 8之后的产品.2007之后的服务端系统

Exchange 2013 PowerShell管理联系人&通讯组&资源邮箱

管理联系人 创建联系人,使用如下语法: New-MailContact -Alias rjones ` -Name "Rob Jones" ` -ExternalEmailAddress [email protected] ` -OrganizationalUnit sales 已启用邮箱的用户可以使用如下语法: New-MailUser -Name 'John Davis' ` -Alias jdavis ` -UserPrincipalName [email protected]

NServicebus-使用PowerShell管理NServiceBus

使用PowerShell管理NServiceBus PowerShell,Commandlets,安装 NServiceBus提供了一组PowerShell commandlets易于管理和运行的软件.最初的重点是与NServiceBus准备使用机器时提供支持.附加功能的管道. 在安装之前NServiceBus,确保PowerShell 2.0 +存在在目标机器上. 安装在V4.0 NServiceBus commandlets 这些能够方便NServiceBus.Powershell.dll.

Powershell管理系列(十三)Exchange 2013邮箱数量统计

-----提供AD\Exchange\Lync\Sharepoint\CRM\SC\O365等微软产品实施及外包,QQ:185426445.电话18666943750 管理Exchange的话,我们首先对自己管理的邮箱数量和分布情况有所了解.打开EAC我们确实很快就可以查到有多少邮箱数量,如果邮箱比较多的话,而且有多个数据库,多个服务器呢?会不会觉得很繁琐,下面我介绍一下快速查询邮箱的Powershell. 我们一般管理Exchange的话需要用到Exchange management shel

Azure Powershell管理多订阅及证书

由于我的电脑曾经管理过两个Azure订阅,这两天在上传VHD文件到Azure时出现了"找不到存储账号"及"证书不匹配"的问题. 场景还原 第一天使用Azure账号A上传VHD,没有出现问题.第二天使用Azure账号B上传VHD是,出现了如下提示"The storage account was not found" 再次核对Azure管理后台,确定存储账号"uploadtest"是存在的.先来看看存储账号<Get-Azur

使用PowerShell管理Hyper-v

使用PowerShell管理Hyper-v Windows Server 2012 Hyper-V功能非常强大,大家不但可以使用GUI图形界面外管理,也可以使用Windows PowerShell的方式管理,Windows Server 2012 R2所有的功能都可以使用Powershell,所以无论是在Windows Server 2012 R2 GUI还是Server Core亦或者是微软单独的服务器虚拟化产品Hypervisio,Powershell都显得非常重要.但是,大部分的人都喜欢使

使用Powershell管理Linux 下的 SQL Server

我们上一篇文章介绍了在Centos 7.3下安装及配置 SQL Server,今天我们主要介绍的是如何在Windows下使用Powershell来管理Linux下的SQL Server,其实说到Powershell大家都已经很熟悉了,Powershell不止是命令集合也是批量程序,可以很好的协助管理员提高日常的运维工作,但是微软的Powershell有一个毛病就是不同的服务需要安装不同的Powershell,对于Lync下的Shell.Exchange Shell和系统自带的Powershell

Windows Server 2012 R2 WSUS-14:powershell管理WSUS

最近发现MDT推出去的系统的有不同问题,其问题就不说了,主要是策略权限被域继承了.比如我们手动安装的很多东东都是未配置壮态,推的就默认为安全壮态了,今天细找了一下,原来把这个关了就可以了. Windows Server 2012 R2 WSUS-14:powershell管理WSUS