1

我正在尝试对一家拥有大量安全性、防火墙、端口禁用等的大型公司的机器(工作站)进行动态清单。

我在整个物业中看到的唯一可用的是 ping 的可用性,所以我认为这是解决解决方案的最佳方法。

我正在考虑从我的 Windows 工作站做一个批处理脚本,但对批处理脚本一无所知会给我的项目增加一个学习曲线期。

我的经验是 PHP,我知道有一个函数可以调用系统函数。我用谷歌搜索了几个人在从系统函数获取有效输出时遇到问题。

我的具体问题是,你将如何解决这个问题:

  1. 所有机器名称的 txt 列表
  2. ping 可用性
  3. php 服务器已准备就绪并可配置,以防我需要关闭安全模式或类似的东西。

感谢您的反馈意见。

4

1 回答 1

0

给定一个 .ini 格式的文本列表,如下所示:

服务器.ini

[servers]
hostnames[]='host1'
hostnames[]='host2'
hostnames[]='host3'
hostnames[]='hostN'

我建议编写这样的代码,利用 PHP 内置函数gethostbyname()

<?php
// Parse without sections
$servers_array = parse_ini_file("servers.ini");

$results = array();

foreach ($servers_array['hostnames'] as $hostname){
    $ip = gethostbyname($hostname);
    $results[$hostname] = $ip;
}

print_r($results);
于 2013-08-14T16:10:33.357 回答