В первую очередь: iOS 11 убрала возможность для приложений просматривать MAC-адреса вообще , поэтому эта библиотека больше не имеет возможности получать любую информацию о сетевых устройствах за пределами IP-адреса.
Как говорится:
Могу ли я изменить эту библиотеку, чтобы получить версию программного обеспечения или ядра?
Нет, потому что это невозможно.
Библиотека MMLanScan, которую вы просматриваете, использовала MAC-адрес для определения производителя устройства. Это возможно, потому что первые три октета MAC-адреса идентифицируют производителя. MAC-адрес не содержит никакой информации о программном обеспечении, работающем в настоящее время на устройстве - это, в конце концов, фиксированный идентификатор, и его нельзя изменить, чтобы отразить изменения в программном обеспечении!
Общепринятого способа получения версий программного обеспечения, работающих на сетевом устройстве, не существует. SNMP - это единственный стандартный метод, который я могу придумать, и, как вы обнаружили, на большинстве потребительских устройств агент по умолчанию отсутствует.