我 cil vnet --today-servers

az cil vnet --dns-servers

我在 az cli 中使用 --dns-servers 标志时遇到问题。 当我尝试更新多个 DNS 服务器时,它被破坏了

az network vnet update \
    --name $VNET_name \
    --subscription $SUBSCRIPTION \
    --resource-group $RGRP_name \
    --dns-servers "${LOCATION[3]} ${LOCATION[4]}"

输出:

IP address is not valid '0.0.0.1 0.0.0.2'

MS 文档说:

--dns-servers
        Space-separated list of DNS server IP addresses.

您的 DNS IP 地址“0.0.0.1 0.0.0.2”不能用作真实 IP 地址。

IANA 声明 0.0.0.0/8 (0...) 仅保留为源地址。您可能会遇到这样的情况,您似乎拥有此地址,但这通常是因为没有为您分配地址(例如通过 DHCP)。

另见 Wikipedia entry on IPv4

尝试像 8.8.8.8

一样设置真实的 --dns-servers

Is 0.0.0.0 a valid IP address?

您可以尝试使用我在我的环境中测试过的如下内容:

$LOCATION = @(
'10.0.0.1',
'10.0.0.2',
'10.0.0.3',
'10.0.0.4'
)
$VNET_name="ansuman-vnet"
$SUBSCRIPTION = "<SubscriptionId>"
$RGRP_name="ansumantest"
az network vnet update --name $VNET_name --subscription $SUBSCRIPTION --resource-group $RGRP_name --dns-servers $LOCATION[2,3]

输出:

好的,以某种方式弄清楚了。 如果你直接使用这些年份而不用引号将它们括起来,那一切都有效

. ./location_arrays
declare -n LOCATION='EM21'

...

az network vnet create \
    --name $VNET_name \
    --subscription $SUBSCRIPTION \
    --resource-group $RGRP_name \
    --location ${LOCATION[2]} \
    --dns-servers ${LOCATION[-2]} ${LOCATION[-1]}