如何阻止我的MAC地址被视为数字?

如何阻止我的MAC地址被视为数字?

问题描述:

我正在使用cmdlet在Windows服务器  2016 DHCP服务的范围内创建允许的MAC策略。如何阻止我的MAC地址被视为数字?

我有一个C#代码,生成的脚本与所有的信息,它是合法的,MAC地址是正确的,但PowerShell原来“翻译”一些地址,如8634971886e5863497188600000

生成的语句是:

Add-DhcpServerv4Policy -Name Test -Condition OR -ScopeId 127.0.0.1 -MacAddress EQ,8634971886e5 

如果我引用它,它会说,运营商EQ丢失。

Add-DhcpServerv4Policy -Name Test -Condition OR -ScopeId 127.0.0.1 -MacAddress "EQ,8634971886e5" 
+0

在我们诊断出它有什么问题之前,您将不得不提供实际的代码。 –

+1

尝试将MAC放在引号中 – Itchydon

+3

看起来MAC被解释为一个数字。 Itchydon说:引用字符串。 – Richard

所以根据documentation for Add-DhcpServerv4Policy-MacAddress正在寻找一个字符串数组。他们给出的例子与你自己的例子很相似。

PS C:\> Add-DhcpServerv4Policy -Name HyperVPolicy -Condition OR -MacAddress EQ,00155D*,000569* 

然而,正如你已经看到了一些你的MAC被视为数字,因为他们中没有报价/类型为字符串。评论一直告诉你引用字符串,但我认为这是做错了。不要引用整个字符串,但它是个别的元素,以便它是一个字符串数组。从您的意见

Add-DhcpServerv4Policy -Name Test -Condition OR -ScopeId 127.0.0.1 -MacAddress "EQ,8634971886e5" 

-MacAddress正在发送一个字符串。第一个元素不是比较器,因此你得到的错误。

相反,它应该是...

Add-DhcpServerv4Policy -Name Test -Condition OR -ScopeId 127.0.0.1 -MacAddress "EQ","8634971886e5" 

Your workaround obviously works不错,但我想告诉你试图告诉你什么其他的。

我在MAC中添加了连字符,效果很好。

无论如何,谢谢!