どうも、Tです。
PowerCLIからデフォルトTCP/IPスタックの設定について調べました。
スポンサーリンク
目次
やりたいこと
PowerCLIでこの辺りの設定を変更したい。
PowerCLIで行う場合。「ホスト名・ドメイン」「DNSサーバー」「ドメイン検索」異なるコマンドになります。また、PowerCLIから直接設定できないためPowerCLIからESXCLIコマンドを実行して設定します。
PowerCLIからESXCLIコマンドの準備
形式
$esxcli = Get-VMHost $ESXiホスト名もしくはIP | Get-EsxCli -v2
サンプル
$esxcli = Get-VMHost testesxi004.testdev.lab | Get-EsxCli -v2
Get-EsxCliは、V1とV2があり現在はV2が推奨のようです。V1とV2でPowerCLIからのコマンドの使い方が異なります。本記事ではV2前提で記載しています。
V2の場合設定値の指定の方法はハッシュ―テーブルによる設定です。
ハッシュテーブルについて知りたかったことのすべて - PowerShell
ハッシュテーブルは PowerShell で非常に重要であるため、十分に理解しておくことをお勧めします。
指定できる項目は、「 $esxcli.system.hostname.set.help()」などコマンドに.help()をつけることで確認できます。
設定(ホスト名・ドメイン)
設定
形式
$esxcli.system.hostname.set.invoke(@{domain=$ドメイン名;host=$ホスト名})
サンプル
$esxcli.system.hostname.set.invoke(@{domain='testdev.lab';host='testesxi004'})
確認
形式
$esxcli.system.hostname.get.invoke()
設定(DNSサーバー)
設定
形式
$esxcli.network.ip.dns.server.add.invoke(@{server=$DNSサーバーのIPアドレス})
サンプル
#プライマリ $esxcli.network.ip.dns.server.add.invoke(@{server='192.168.10.132'}) #セカンダリ $esxcli.network.ip.dns.server.add.invoke(@{server='192.168.10.137'})
2台一括設定はできなさそうなので、2回コマンドを実行する。あとで実行したほうがセカンダリDNSに設定される。
確認
形式
$esxcli.network.ip.dns.server.list.invoke()
設定(ドメインの検索)
設定
形式
$esxcli.network.ip.dns.search.add.invoke(@{domain=$ドメイン名})
サンプル
$esxcli.network.ip.dns.search.add.invoke(@{domain='testdev.lab'})
確認
形式
$esxcli.network.ip.dns.search.list.invoke()
まとめ
esxcliコマンドを使うダスト少々