PHP SNMP如何设置端口

PHP SNMP如何设置端口,php,snmp,Php,Snmp,我的PHP代码有问题。我有一个防火墙(ZyWALL),可以有4台打印机。出现此问题是因为我只能在一台打印机上设置161(SNMP)端口,而根本无法设置 这是我的ZyWall屏幕: 这是我的php代码: <?php $session = new SNMP(SNMP::VERSION_1, "xxx.xxx.xxx.xxx", "public"); $fulltree = $session->walk("."); print_r($fulltree); echo "<br

我的PHP代码有问题。我有一个防火墙(ZyWALL),可以有4台打印机。出现此问题是因为我只能在一台打印机上设置161(SNMP)端口,而根本无法设置

这是我的ZyWall屏幕:

这是我的php代码:

<?php
 $session = new SNMP(SNMP::VERSION_1, "xxx.xxx.xxx.xxx", "public");
 $fulltree = $session->walk(".");
 print_r($fulltree);
 echo "<br>";
 $session->close();
?>

如果我在ZyWall中设置ip:192.168.1.204,原始端口=161,映射端口=161,并且在php代码中用正确的ip替换xxx.xxx.xxx.xxx(带或不带“:161”,它可以完美地工作

出现问题是因为我有一台打印机。例如,如果我在ZyWall中设置了ip:192.168.1.204,原始端口=6000,映射端口=161,并且在php代码中我用正确的ip替换了xxx.xxx.xxx:6000,那么它就不起作用了


每个人都可以向我解释错误在哪里?谢谢

您可以设置snmp连接的端口,如下所示:


我试过了,但没用。你的港口有问题吗?如果我映射了原始端口,它就不工作了
$sessionA = new SNMP(SNMP::VERSION_1, "192.168.1.204", "public"); //for port 161
$sessionB = new SNMP(SNMP::VERSION_1, "192.168.1.204:162", "public"); //for port 162