php SNMP函数时出错
提示:
Fatal error: Call to undefined function snmpwalkoid() in e:\proj\php\snmp.php on line 2
代码:
<?php
$a = snmpwalk("127.0.0.1", "public", "");
foreach ($a as $val) {
echo "$val<br>";
}
?>
解决:
1.PHP及其模块的安装
a)解压缩;
b)修改php.ini-dist为php.ini;
2.配置文件
a)修改php.ini配置文件
i.修改extension_dir = C:\php\extensions
ii.删除你所需要的扩展模块前的引号(;),例如:
原先:
;extension=php_snmp.dll
修改为:
extension=php_snmp.dll
b)配置系统环境变量(此步一般不需要)
i.在环境变量path中添加C:\php (PHP安装目录)
ii.添加变量,鼠标右键点我的电脑-属性-高级-环境变量-系统变量-新建MIBDIRS=c:\php\mibs, 新建 PHPRC=c:\php
iii.修改注册表 (如果没有就新建字符串值):
HKEY_LOCAL_MACHINE → SOFTWARE → PHP → IniFilePath
值为:C:\php (PHP安装目录)
做完所有工作后重启。
新建一个PHP文件:
代码:
<?php
$a = snmpwalk("127.0.0.1", "public", "");
foreach ($a as $val) {
echo "$val<br>";
}
?>
打开应该可以看到效果了。
------------------------------------------------------------
如果有提示:
Warning: snmpwalk No Response from 127.0.01
则需要Windows 2003 的SNMP配置:
Windows 2003的Snmp默认是不允许直接访问的。需要进行一些参数的配置。
http://www.net-snmp.org/download.html下载net-snmp安装。
安装完Snmp以后在Windows 的服务里的Snmp Service可以看到安全选项。
选择上 发送身份验证陷阱 ,添加 团体为 public ,权限为 只读 。
在下方选择 接受来自这些主机的snmp 数据包 ,添加上snmp browser 的IP地址。
如果是linux,则需要配置snmpd.conf文件:
# vi /etc/snmp/snmpd.conf
修改snmpd.conf文件
1、 com2sec notConfigUser default public
改为: com2sec notConfigUser 127.0.0.1 public
如果要在别的机器(192.168.11.50)上运行观测软件监测(本机ip是192.168.11.134),也应该再加上:
com2sec notConfigUser 192.168.11.50 public
Fatal error: Call to undefined function snmpwalkoid() in e:\proj\php\snmp.php on line 2
代码:
<?php
$a = snmpwalk("127.0.0.1", "public", "");
foreach ($a as $val) {
echo "$val<br>";
}
?>
解决:
1.PHP及其模块的安装
a)解压缩;
b)修改php.ini-dist为php.ini;
2.配置文件
a)修改php.ini配置文件
i.修改extension_dir = C:\php\extensions
ii.删除你所需要的扩展模块前的引号(;),例如:
原先:
;extension=php_snmp.dll
修改为:
extension=php_snmp.dll
b)配置系统环境变量(此步一般不需要)
i.在环境变量path中添加C:\php (PHP安装目录)
ii.添加变量,鼠标右键点我的电脑-属性-高级-环境变量-系统变量-新建MIBDIRS=c:\php\mibs, 新建 PHPRC=c:\php
iii.修改注册表 (如果没有就新建字符串值):
HKEY_LOCAL_MACHINE → SOFTWARE → PHP → IniFilePath
值为:C:\php (PHP安装目录)
做完所有工作后重启。
新建一个PHP文件:
代码:
<?php
$a = snmpwalk("127.0.0.1", "public", "");
foreach ($a as $val) {
echo "$val<br>";
}
?>
打开应该可以看到效果了。
------------------------------------------------------------
如果有提示:
Warning: snmpwalk No Response from 127.0.01
则需要Windows 2003 的SNMP配置:
Windows 2003的Snmp默认是不允许直接访问的。需要进行一些参数的配置。
http://www.net-snmp.org/download.html下载net-snmp安装。
安装完Snmp以后在Windows 的服务里的Snmp Service可以看到安全选项。
选择上 发送身份验证陷阱 ,添加 团体为 public ,权限为 只读 。
在下方选择 接受来自这些主机的snmp 数据包 ,添加上snmp browser 的IP地址。
如果是linux,则需要配置snmpd.conf文件:
# vi /etc/snmp/snmpd.conf
修改snmpd.conf文件
1、 com2sec notConfigUser default public
改为: com2sec notConfigUser 127.0.0.1 public
如果要在别的机器(192.168.11.50)上运行观测软件监测(本机ip是192.168.11.134),也应该再加上:
com2sec notConfigUser 192.168.11.50 public
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!