Я попытался получить имя устройства snmp через источник ниже.
$sysname1 = snmpget("192.168.0.9:161", "public", ".1.3.6.1.2.1.1.5.0.0");
$sysname2 = snmpget("192.168.0.10:164", "public", ".1.3.6.1.2.1.1.5.0.0");
$sysname3 = snmpget("192.168.0.11:165", "public", ".1.3.6.1.2.1.1.5.0.0");
$sysname4 = snmpget("192.168.0.12:166", "public", ".1.3.6.1.2.1.1.5.0.0");
Я получаю только вывод для первого метода snmpget (), доступ к которому осуществляется через порт 161. Другой метод snmpget () не работает. Согласно исследованию 161 порт по умолчанию. Но мне нужно установить другой порт для другого IP-адреса. Дайте мне знать, как установить другую опцию порта для net-snmp
Вы пытаетесь запросить агента SNMP с разными IP-адресами и портами UDP. Как вы говорите, первый — по умолчанию, поэтому у вас есть SNMP-агент (snmpd?), Прослушивающий там. Другие порты не по умолчанию, что может быть причиной того, что ни один процесс там не прослушивает.
Возможно, вы захотите запустить snmpd (если вы используете агент SNMP) для привязки ко всем этим портам:
# snmpd 164
# snmpd 165
или вы можете сделать один экземпляр snmpd прослушивающим несколько портов UDP (и IP-адреса, если они локальны для одного хоста):
# snmpd 192.168.0.10:164 192.168.0.11:165
Других решений пока нет …