geeklab/localname 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

geeklab/localname

Composer 安装命令:

composer require geeklab/localname

包简介

Look up names for ips using mDNS/Netbios/etc.

README 文档

README

Resolve hostnames on local networks via mDNS, LLMNR, NetBIOS, and reverse DNS. Includes ARP-based MAC address lookup with IEEE OUI vendor identification.

Requirements

  • PHP >= 8.1
  • ext-sockets

Installation

composer require geeklab/localname

Then download the IEEE OUI database for MAC vendor lookups:

php vendor/geeklab/localname/bin/update-oui.php

Quick Start

use Geeklab\Localname\LocalName;

$resolver = LocalName::create();
$result   = $resolver->lookup('192.168.1.100');

echo $result->ip;       // 192.168.1.100
echo $result->name;     // my-laptop.local
echo $result->protocol; // mdns
echo $result->mac;      // AA:BB:CC:DD:EE:FF
echo $result->vendor;   // Apple, Inc.

Resolvers

LocalName::create() tries each resolver in order and returns the first match:

Resolver Protocol Method
mDNS Multicast DNS (224.0.0.251:5353) PTR query
NetBIOS NBSTAT (port 137) Wildcard name query
LLMNR Link-Local Multicast (224.0.0.252:5355) PTR query
Reverse DNS System DNS gethostbyaddr()

Using Individual Resolvers

use Geeklab\Localname\Resolvers\Mdns;
use Geeklab\Localname\Resolvers\Netbios;
use Geeklab\Localname\Resolvers\Llmnr;
use Geeklab\Localname\Resolvers\ReverseDns;

$mdns = new Mdns(timeout: 3.0);
$name = $mdns->resolve('192.168.1.100'); // returns string or null

Getting All Results

$results = $resolver->lookupAll('192.168.1.100');

foreach ($results as $r) {
    printf("[%s] %s\n", $r->protocol, $r->name);
}

MAC Vendor Lookup

MAC vendor identification requires the IEEE OUI database. Download it with the included script:

php bin/update-oui.php

This saves the database to data/oui.csv. Without it, lookup() still works -- vendor will just be null.

You can also pass a custom path:

$resolver = LocalName::create('/path/to/oui.csv');

Running Tests

composer install
vendor/bin/phpunit

License

BSD-4-Clause

统计信息

  • 总下载量: 0
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 2
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: BSD-4-Clause
  • 更新时间: 2026-07-07

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固